diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2014-09-05 09:01:21 +1000 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2014-09-05 09:09:41 +1000 |
commit | f76684afe8d7737dd5bea458246b09b229de3e80 (patch) | |
tree | 75dc2c75f60fa92bf1f39e6290c4f4fd9f61df75 /nvkm/core/parent.c | |
parent | 52b94b2d5ca133ac4501490c639222db2da1b859 (diff) | |
download | nouveau-f76684afe8d7737dd5bea458246b09b229de3e80.tar.gz |
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 <imirkin@alum.mit.edu>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'nvkm/core/parent.c')
-rw-r--r-- | nvkm/core/parent.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/nvkm/core/parent.c b/nvkm/core/parent.c index 8701968a9..30a291187 100644 --- a/nvkm/core/parent.c +++ b/nvkm/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++; } } |