Salman Qazi 95599968d1 ext4: remove mb_groups before tearing down the buddy_cache
We can't have references held on pages in the s_buddy_cache while we are
trying to truncate its pages and put the inode.  All the pages must be
gone before we reach clear_inode.  This can only be gauranteed if we
can prevent new users from grabbing references to s_buddy_cache's pages.

The original bug can be reproduced and the bug fix can be verified by:

while true; do mount -t ext4 /dev/ram0 /export/hda3/ram0; \
	umount /export/hda3/ram0; done &

while true; do cat /proc/fs/ext4/ram0/mb_groups; done

Signed-off-by: Salman Qazi <sqazi@google.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: stable@kernel.org
2012-05-31 23:52:14 -04:00
..
2012-03-28 09:58:38 -07:00
2012-04-23 18:22:42 -07:00
2012-03-31 16:03:16 -04:00
2012-03-21 10:15:51 -07:00
2012-03-30 17:31:56 -07:00
2012-04-13 13:50:52 -04:00
2012-03-20 21:29:52 -04:00
2012-03-20 21:29:38 -04:00
2012-03-30 17:31:56 -07:00
2012-03-23 09:27:40 -07:00
2012-03-28 15:58:21 -07:00
2012-04-21 01:58:20 -04:00
2012-03-20 21:29:46 -04:00
2012-03-20 21:29:46 -04:00
2012-01-03 22:52:39 -05:00
2012-03-28 10:07:27 -07:00
2012-03-20 21:29:51 -04:00
2012-03-20 21:29:38 -04:00