]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
ext4: clean up inode bitmaps manipulation in ext4_free_inode
authorDmitry Monakhov <dmonakhov@openvz.org>
Mon, 31 May 2010 02:49:54 +0000 (22:49 -0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 2 Aug 2010 17:21:20 +0000 (10:21 -0700)
commit55a83256dc7c79c85531b003a71bba37852a48af
tree7a03c1f51ed7d948cc05f8255caa93353cc8a2ff
parentff2d83ca9df8202d9d8cff73c695ec1f0a596028
ext4: clean up inode bitmaps manipulation in ext4_free_inode

commit d17413c08cd2b1dd2bf2cfdbb0f7b736b2b2b15c upstrea (as of v2..34-git13)

- Reorganize locking scheme to batch two atomic operation in to one.
  This also allow us to state what healthy group must obey following rule
  ext4_free_inodes_count(sb, gdp) == ext4_count_free(inode_bitmap, NUM);
- Fix possible undefined pointer dereference.
- Even if group descriptor stats aren't accessible we have to update
  inode bitmaps.
- Move non-group members update out of group_lock.

Note: this commit has been observed to fix fs corruption problems
under heavy fs load

Signed-off-by: Dmitry Monakhov <dmonakhov@openvz.org>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
fs/ext4/ialloc.c