On Sep 04, 2009 14:19 +0530, Aneesh Kumar wrote: > Ok i am running test with the below patch. It is more invasive in that it > moves the need init flag check into load buddy. I guess we need to do that, > otherwise we will be operating with stale buddy information when > we have resize happening parallel. Also with the patch i posted before > we still have issues as explained below > > a) we check for init flag we find it doesn't need an cache init > b) we resize and mark the group in need for init > c) in load buddy we look at the pageuptodate flag and find it uptodate > and continue using the old buddy cache information. Why not have the resize code do the update of the buddy bitmap also? When we were just using the block bitmap for allocation the resize code would clear the bits in the bitmap just like deleting a file, so that it was totally coherent with any other bitmap user. Having the resize code do the same with the buddy (instead of only marking it stale and leaving it for another process to refresh) should avoid the race condition entirely. Cheers, Andreas -- Andreas Dilger Sr. Staff Engineer, Lustre Group Sun Microsystems of Canada, Inc. -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html