[PATCH] forgotten ->b_data in memcpy() call in ext3/resize.c (oopsable)
authorAl Viro <viro@ftp.linux.org.uk>
Wed, 26 Apr 2006 06:26:09 +0000 (07:26 +0100)
committerLinus Torvalds <torvalds@g5.osdl.org>
Wed, 26 Apr 2006 14:52:21 +0000 (07:52 -0700)
commitde0bb97aff6743f71abb8ec581238e2bdae9cdd1
tree86bf40b0545ca3b125864065aeb1ec4b3791aabf
parentc82ffb07cd1aa356c599999c4f0dc5155a91d318
[PATCH] forgotten ->b_data in memcpy() call in ext3/resize.c (oopsable)

sbi->s_group_desc is an array of pointers to buffer_head.  memcpy() of
buffer size from address of buffer_head is a bad idea - it will generate
junk in any case, may oops if buffer_head is close to the end of slab
page and next page is not mapped and isn't what was intended there.
IOW, ->b_data is missing in that call.  Fortunately, result doesn't go
into the primary on-disk data structures, so only backup ones get crap
written to them; that had allowed this bug to remain unnoticed until
now.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
fs/ext3/resize.c