Skip to content

Commit

Permalink
sm501fb: don't return zero on failure path in sm501fb_start()
Browse files Browse the repository at this point in the history
If fbmem iomemory mapping failed, sm501fb_start() breaks off
initialization, deallocates resources, but returns zero.
As a result, double deallocation can happen in sm501fb_stop().

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
  • Loading branch information
Alexey Khoroshilov authored and Bartlomiej Zolnierkiewicz committed May 2, 2017
1 parent 45f580c commit dc85e9a
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions drivers/video/fbdev/sm501fb.c
Original file line number Diff line number Diff line change
Expand Up @@ -1600,6 +1600,7 @@ static int sm501fb_start(struct sm501fb_info *info,
info->fbmem = ioremap(res->start, resource_size(res));
if (info->fbmem == NULL) {
dev_err(dev, "cannot remap framebuffer\n");
ret = -ENXIO;
goto err_mem_res;
}

Expand Down

0 comments on commit dc85e9a

Please sign in to comment.