From: Ben Skeggs Date: Thu, 4 Sep 2014 23:01:21 +0000 (+1000) Subject: drm/nouveau/core: don't leak oclass type bits to user X-Git-Tag: android-x86-4.4-r2~527^2^2 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=2acc868319ed03c0e4b2f747c104d7e2ec0a841f;p=android-x86%2Fkernel.git drm/nouveau/core: don't leak oclass type bits to user Fixes not being able to init fence subsystem when multiple boards are present. Reported-by: Ilia Mirkin Signed-off-by: Ben Skeggs --- diff --git a/drivers/gpu/drm/nouveau/core/core/parent.c b/drivers/gpu/drm/nouveau/core/core/parent.c index 8701968a9743..30a2911878f8 100644 --- a/drivers/gpu/drm/nouveau/core/core/parent.c +++ b/drivers/gpu/drm/nouveau/core/core/parent.c @@ -86,7 +86,7 @@ nouveau_parent_lclass(struct nouveau_object *parent, u32 *lclass, int size) sclass = nv_parent(parent)->sclass; while (sclass) { if (++nr < size) - lclass[nr] = sclass->oclass->handle; + lclass[nr] = sclass->oclass->handle & 0xffff; sclass = sclass->sclass; } @@ -96,7 +96,7 @@ nouveau_parent_lclass(struct nouveau_object *parent, u32 *lclass, int size) if (engine && (oclass = engine->sclass)) { while (oclass->ofuncs) { if (++nr < size) - lclass[nr] = oclass->handle; + lclass[nr] = oclass->handle & 0xffff; oclass++; } }