Hello, On Thursday 14 July 2005 15:07, Akinobu Mita wrote: > mb_cache_shrink() tries to free all sort of mbcache in the lru list. > > All user of mb_cache_shrink() are ext2/ext3 xattr. > > Signed-off-by: Akinobu Mita <[EMAIL PROTECTED]> > > --- 2.6-rc/fs/mbcache.c.orig 2005-07-14 20:40:34.000000000 +0900 > +++ 2.6-rc/fs/mbcache.c 2005-07-14 20:43:42.000000000 +0900 > @@ -329,7 +329,7 @@ mb_cache_shrink(struct mb_cache *cache, > list_for_each_safe(l, ltmp, &mb_cache_lru_list) { > struct mb_cache_entry *ce = > list_entry(l, struct mb_cache_entry, e_lru_list); > - if (ce->e_bdev == bdev) { > + if (ce->e_cache == cache && ce->e_bdev == bdev) { > list_move_tail(&ce->e_lru_list, &free_list); > __mb_cache_entry_unhash(ce); > }
this patch looks bogus to me. How could the cache contain entries for the same block_device from different file systems? The block_device is sufficient to identify the file system, and hence its cache entries. Also, the additional check would only tell ext2 from ext3; the caches are not per-filesystem. -- Andreas. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/