diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2016-07-11 11:46:33 +0300 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2016-11-20 01:16:50 +0000 |
commit | 39f748b06beedae6c6dbb02cfea1d92e9546da41 (patch) | |
tree | 92e07df8ccb1efe9e8b4ac1a480732ea9e8b22da /drivers/gpu | |
parent | 281acdf0e9c22e9ef13c7d8e385029de848c9a0b (diff) | |
download | linux-stable-39f748b06beedae6c6dbb02cfea1d92e9546da41.tar.gz linux-stable-39f748b06beedae6c6dbb02cfea1d92e9546da41.tar.bz2 linux-stable-39f748b06beedae6c6dbb02cfea1d92e9546da41.zip |
qxl: check for kmap failures
commit f4cceb2affcd1285d4ce498089e8a79f4cd2fa66 upstream.
If kmap fails, it leads to memory corruption.
Fixes: f64122c1f6ad ('drm: add new QXL driver. (v1.4)')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20160711084633.GA31411@mwanda
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/qxl/qxl_draw.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/qxl/qxl_draw.c b/drivers/gpu/drm/qxl/qxl_draw.c index 56e1d633875e..6e6c76080d6a 100644 --- a/drivers/gpu/drm/qxl/qxl_draw.c +++ b/drivers/gpu/drm/qxl/qxl_draw.c @@ -136,6 +136,8 @@ static int qxl_palette_create_1bit(struct qxl_bo *palette_bo, * correctly globaly, since that would require * tracking all of our palettes. */ ret = qxl_bo_kmap(palette_bo, (void **)&pal); + if (ret) + return ret; pal->num_ents = 2; pal->unique = unique++; if (visual == FB_VISUAL_TRUECOLOR || visual == FB_VISUAL_DIRECTCOLOR) { |