diff options
Diffstat (limited to 'meta/packages/linux/linux-moblin-2.6.27-rc6/0020-drm-Avoid-oops-in-GEM-execbuffers-with-bad-argument.patch')
-rw-r--r-- | meta/packages/linux/linux-moblin-2.6.27-rc6/0020-drm-Avoid-oops-in-GEM-execbuffers-with-bad-argument.patch | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/meta/packages/linux/linux-moblin-2.6.27-rc6/0020-drm-Avoid-oops-in-GEM-execbuffers-with-bad-argument.patch b/meta/packages/linux/linux-moblin-2.6.27-rc6/0020-drm-Avoid-oops-in-GEM-execbuffers-with-bad-argument.patch new file mode 100644 index 0000000000..7080907cde --- /dev/null +++ b/meta/packages/linux/linux-moblin-2.6.27-rc6/0020-drm-Avoid-oops-in-GEM-execbuffers-with-bad-argument.patch | |||
@@ -0,0 +1,23 @@ | |||
1 | commit 880db7a8dbed226d638b3a48aa1a3996f8624911 | ||
2 | Author: Eric Anholt <eric@anholt.net> | ||
3 | Date: Wed Sep 10 14:22:49 2008 -0700 | ||
4 | |||
5 | drm: Avoid oops in GEM execbuffers with bad arguments. | ||
6 | |||
7 | Signed-off-by: Eric Anholt <eric@anholt.net> | ||
8 | |||
9 | diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c | ||
10 | index 5fe5034..29d9d21 100644 | ||
11 | --- a/drivers/gpu/drm/i915/i915_gem.c | ||
12 | +++ b/drivers/gpu/drm/i915/i915_gem.c | ||
13 | @@ -1763,6 +1763,10 @@ i915_gem_execbuffer(struct drm_device *dev, void *data, | ||
14 | (int) args->buffers_ptr, args->buffer_count, args->batch_len); | ||
15 | #endif | ||
16 | |||
17 | + if (args->buffer_count < 1) { | ||
18 | + DRM_ERROR("execbuf with %d buffers\n", args->buffer_count); | ||
19 | + return -EINVAL; | ||
20 | + } | ||
21 | /* Copy in the exec list from userland */ | ||
22 | exec_list = drm_calloc(sizeof(*exec_list), args->buffer_count, | ||
23 | DRM_MEM_DRIVER); | ||