[MTD] mtdchar.c: Fix regression in MEMGETREGIONINFO ioctl()
authorZev Weiss <zevweiss@gmail.com>
Mon, 1 Sep 2008 12:02:12 +0000 (05:02 -0700)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Tue, 2 Sep 2008 08:29:05 +0000 (09:29 +0100)
commitb67c5f87c13f398ec3f4d6b455cb0bbeda8d7ac0
treefc2ebe12c5b34439b9034742f957177111409cc7
parent02c0267a40c876a4d70f2000f21fe9ff89fb988e
[MTD] mtdchar.c: Fix regression in MEMGETREGIONINFO ioctl()

The MEMGETREGIONINFO ioctl() in mtdchar.c was clobbering user memory by
overwriting more than intended, due the size of struct mtd_erase_region_info
changing in commit 0ecbc81adfcb9f15f86b05ff576b342ce81bbef8 ('Support
for auto locking flash on power up').

Fix avoids this by copying struct members one by one with put_user(), as there
is no longer a convenient struct to use the size of as the length argument to
copy_to_user().

Signed-off-by: Zev Weiss <zevweiss@gmail.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
drivers/mtd/mtdchar.c