On Friday 15 July 2005 15:41, Akinobu Mita wrote: > > > --- 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. > > Why is mb_cache_shrink() declared as: > > void > mb_cache_shrink(struct mb_cache *cache, struct block_device *bdev); > > The variable cache was never used.
The cache parameter could indeed be removed. Not that it would matter much... Thanks, Andreas. ------------------------------- 8< ------------------------------- Remove unused mb_cache_shrink parameter The cache parameter to mb_cache_shrink isn't used. We may as well remove it. Signed-off-by: Andreas Gruenbacher <[EMAIL PROTECTED]> Index: linux-2.6.13-rc1/fs/ext2/xattr.c =================================================================== --- linux-2.6.13-rc1.orig/fs/ext2/xattr.c +++ linux-2.6.13-rc1/fs/ext2/xattr.c @@ -823,7 +823,7 @@ cleanup: void ext2_xattr_put_super(struct super_block *sb) { - mb_cache_shrink(ext2_xattr_cache, sb->s_bdev); + mb_cache_shrink(sb->s_bdev); } Index: linux-2.6.13-rc1/fs/ext3/xattr.c =================================================================== --- linux-2.6.13-rc1.orig/fs/ext3/xattr.c +++ linux-2.6.13-rc1/fs/ext3/xattr.c @@ -1106,7 +1106,7 @@ cleanup: void ext3_xattr_put_super(struct super_block *sb) { - mb_cache_shrink(ext3_xattr_cache, sb->s_bdev); + mb_cache_shrink(sb->s_bdev); } /* Index: linux-2.6.13-rc1/fs/mbcache.c =================================================================== --- linux-2.6.13-rc1.orig/fs/mbcache.c +++ linux-2.6.13-rc1/fs/mbcache.c @@ -316,11 +316,10 @@ fail: * currently in use cannot be freed, and thus remain in the cache. All others * are freed. * - * @cache: which cache to shrink * @bdev: which device's cache entries to shrink */ void -mb_cache_shrink(struct mb_cache *cache, struct block_device *bdev) +mb_cache_shrink(struct block_device *bdev) { LIST_HEAD(free_list); struct list_head *l, *ltmp; Index: linux-2.6.13-rc1/include/linux/mbcache.h =================================================================== --- linux-2.6.13-rc1.orig/include/linux/mbcache.h +++ linux-2.6.13-rc1/include/linux/mbcache.h @@ -29,7 +29,7 @@ struct mb_cache_op { struct mb_cache * mb_cache_create(const char *, struct mb_cache_op *, size_t, int, int); -void mb_cache_shrink(struct mb_cache *, struct block_device *); +void mb_cache_shrink(struct block_device *); void mb_cache_destroy(struct mb_cache *); /* Functions on cache entries */ - 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/