Commit e01d652a authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] framebuffer bugfix

From: Arjan van de Ven <arjanv@redhat.com>

Patch below fixes a thinko in the frame buffer drivers; the code does

cursor.image.data = kmalloc(size, GFP_KERNEL);
....
cursor.mask = kmalloc(size, GFP_KERNEL);
....
                if (copy_from_user(&cursor.image.data, sprite->image.data, size) ||
                    copy_from_user(cursor.mask, sprite->mask, size)) {
....

where it's clear that the & in the first copy_from_user is utterly bogus
since the destination is the content of the newly allocated buffer, and not
the pointer to it as the code does.
parent 7285840f
...@@ -911,7 +911,7 @@ fb_cursor(struct fb_info *info, struct fb_cursor *sprite) ...@@ -911,7 +911,7 @@ fb_cursor(struct fb_info *info, struct fb_cursor *sprite)
return -ENOMEM; return -ENOMEM;
} }
if (copy_from_user(&cursor.image.data, sprite->image.data, size) || if (copy_from_user(cursor.image.data, sprite->image.data, size) ||
copy_from_user(cursor.mask, sprite->mask, size)) { copy_from_user(cursor.mask, sprite->mask, size)) {
kfree(cursor.image.data); kfree(cursor.image.data);
kfree(cursor.mask); kfree(cursor.mask);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment