diff options
Diffstat (limited to 'meta-moblin/packages/linux/linux-moblin-2.6.27/0019-DRM-Return-EBADF-on-bad-object-in-flink-and-retur.patch')
-rw-r--r-- | meta-moblin/packages/linux/linux-moblin-2.6.27/0019-DRM-Return-EBADF-on-bad-object-in-flink-and-retur.patch | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/meta-moblin/packages/linux/linux-moblin-2.6.27/0019-DRM-Return-EBADF-on-bad-object-in-flink-and-retur.patch b/meta-moblin/packages/linux/linux-moblin-2.6.27/0019-DRM-Return-EBADF-on-bad-object-in-flink-and-retur.patch new file mode 100644 index 0000000000..6de4514e28 --- /dev/null +++ b/meta-moblin/packages/linux/linux-moblin-2.6.27/0019-DRM-Return-EBADF-on-bad-object-in-flink-and-retur.patch | |||
@@ -0,0 +1,32 @@ | |||
1 | commit c3de45b0488762a9161e9b9e8bf419f63c100c47 | ||
2 | Author: Eric Anholt <eric@anholt.net> | ||
3 | Date: Tue Sep 9 11:40:34 2008 -0700 | ||
4 | |||
5 | DRM: Return -EBADF on bad object in flink, and return curent name if it exists. | ||
6 | |||
7 | Signed-off-by: Eric Anholt <eric@anholt.net> | ||
8 | |||
9 | diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c | ||
10 | index 434155b..ccd1afd 100644 | ||
11 | --- a/drivers/gpu/drm/drm_gem.c | ||
12 | +++ b/drivers/gpu/drm/drm_gem.c | ||
13 | @@ -251,7 +251,7 @@ drm_gem_flink_ioctl(struct drm_device *dev, void *data, | ||
14 | |||
15 | obj = drm_gem_object_lookup(dev, file_priv, args->handle); | ||
16 | if (obj == NULL) | ||
17 | - return -EINVAL; | ||
18 | + return -EBADF; | ||
19 | |||
20 | again: | ||
21 | if (idr_pre_get(&dev->object_name_idr, GFP_KERNEL) == 0) | ||
22 | @@ -259,8 +259,9 @@ again: | ||
23 | |||
24 | spin_lock(&dev->object_name_lock); | ||
25 | if (obj->name) { | ||
26 | + args->name = obj->name; | ||
27 | spin_unlock(&dev->object_name_lock); | ||
28 | - return -EEXIST; | ||
29 | + return 0; | ||
30 | } | ||
31 | ret = idr_get_new_above(&dev->object_name_idr, obj, 1, | ||
32 | &obj->name); | ||