drm/nouveau: prevent userspace from deleting client object
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
96692b097b
commit
c966b6279f
|
@ -313,7 +313,8 @@ usif_ioctl(struct drm_file *filp, void __user *user, u32 argc)
|
||||||
if (!(ret = nvif_unpack(-ENOSYS, &data, &size, argv->v0, 0, 0, true))) {
|
if (!(ret = nvif_unpack(-ENOSYS, &data, &size, argv->v0, 0, 0, true))) {
|
||||||
/* block access to objects not created via this interface */
|
/* block access to objects not created via this interface */
|
||||||
owner = argv->v0.owner;
|
owner = argv->v0.owner;
|
||||||
if (argv->v0.object == 0ULL)
|
if (argv->v0.object == 0ULL &&
|
||||||
|
argv->v0.type != NVIF_IOCTL_V0_DEL)
|
||||||
argv->v0.owner = NVDRM_OBJECT_ANY; /* except client */
|
argv->v0.owner = NVDRM_OBJECT_ANY; /* except client */
|
||||||
else
|
else
|
||||||
argv->v0.owner = NVDRM_OBJECT_USIF;
|
argv->v0.owner = NVDRM_OBJECT_USIF;
|
||||||
|
|
Loading…
Reference in New Issue