On Sunday 28 December 2008 19:46, OGAWA Hirofumi wrote: > Hi, > > The free bitmap is called from fill_segs(). The page for free bitmap > may be used recursively. We have to care this point. > > lock_page(bitmap page (e.g. index == 3)) > ->writepage(bitmap page) > tux3_get_block() > balloc() (allocate blocks for that bitmap page) > /* we are starting to find free block on bitmap */ > while (end of page) > blockread(bitmap page) > lock_page(bitmap page (index == 3)) > > Current blockread() have the above deadlock. This patchset is including > the hack to avoid this. Later, we should revisit blockread() to fix > properly. > > Second one is dleaf_merge() fix. Now, it don't care about > MAX_GROUP_ENTRIES at all. This fixes it. > > static-http://userweb.kernel.org/~hirofumi/tux3/ > > Please review those.
Done. A complete rewrite of dleaf_merge, saving two or three lines from my original code :-) OK, announcement time: with these changes, Hirofumi has got Tux3 running stable through multiple runs of the fsx-linux filesystem exerciser, so this is a big day. And that would be Hirofumi 'Hero' Ogawa to me. I will prepare a new patch, and a post to invite others to try testing this code. Next, when we have a basic atomic commit working it will be about time to offer Tux3 up for review. Regards, Daniel _______________________________________________ Tux3 mailing list [email protected] http://mailman.tux3.org/cgi-bin/mailman/listinfo/tux3
