diff options
author | Jerome Glisse <jglisse@redhat.com> | 2010-01-17 21:21:41 +0100 |
---|---|---|
committer | Dave Airlie <airlied@linux.ie> | 2010-01-21 08:46:27 +1000 |
commit | 7e71c9e2e7704ebf044d4a964e02fbd2098a173f (patch) | |
tree | f0231cd483dc1f4e6521b46802169baee4fda054 | |
parent | 7924e5eb8fe422d6b1ce3b3e2be749a480dfcdd9 (diff) | |
download | blackbird-obmc-linux-7e71c9e2e7704ebf044d4a964e02fbd2098a173f.tar.gz blackbird-obmc-linux-7e71c9e2e7704ebf044d4a964e02fbd2098a173f.zip |
drm/radeon/kms: Forbid creation of framebuffer with no valid GEM object
This will avoid oops if at later point the fb is use. Trying to create
a framebuffer with no valid GEM object is bogus and should be forbidden
as this patch does.
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Signed-off-by: Dave Airlie <airlied@linux.ie>
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_display.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c index 49f3c69cf240..f899320f0a6b 100644 --- a/drivers/gpu/drm/radeon/radeon_display.c +++ b/drivers/gpu/drm/radeon/radeon_display.c @@ -715,7 +715,11 @@ radeon_user_framebuffer_create(struct drm_device *dev, struct drm_gem_object *obj; obj = drm_gem_object_lookup(dev, file_priv, mode_cmd->handle); - + if (obj == NULL) { + dev_err(&dev->pdev->dev, "No GEM object associated to handle 0x%08X, " + "can't create framebuffer\n", mode_cmd->handle); + return NULL; + } return radeon_framebuffer_create(dev, mode_cmd, obj); } |