aboutsummaryrefslogtreecommitdiffstats
path: root/fs/mbcache.c
diff options
context:
space:
mode:
authorRam Gupta <ram.gupta5@gmail.com>2007-10-25 11:03:28 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-25 18:18:29 -0400
commitf9e83489cbb3670df810d4f9fe308cde88faa0a9 (patch)
tree24d57af11492d5d55dce9486694155b3291babe0 /fs/mbcache.c
parent2a2da53b181bdafcdecb43c457735ee2892ae885 (diff)
fs: Fix to correct the mbcache entries counter
This patch fixes the c_entry_count counter of the mbcache. Currently it increments the counter first & allocate the cache entry later. In case of failure to allocate the entry due to insufficient memory this counter is still left incremented. This patch fixes this anomaly. Signed-off-by: Ram Gupta <ram.gupta5@gmail.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/mbcache.c')
-rw-r--r--fs/mbcache.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/mbcache.c b/fs/mbcache.c
index 1046cbefbfbf..eb31b73e7d69 100644
--- a/fs/mbcache.c
+++ b/fs/mbcache.c
@@ -403,9 +403,9 @@ mb_cache_entry_alloc(struct mb_cache *cache)
403{ 403{
404 struct mb_cache_entry *ce; 404 struct mb_cache_entry *ce;
405 405
406 atomic_inc(&cache->c_entry_count);
407 ce = kmem_cache_alloc(cache->c_entry_cache, GFP_KERNEL); 406 ce = kmem_cache_alloc(cache->c_entry_cache, GFP_KERNEL);
408 if (ce) { 407 if (ce) {
408 atomic_inc(&cache->c_entry_count);
409 INIT_LIST_HEAD(&ce->e_lru_list); 409 INIT_LIST_HEAD(&ce->e_lru_list);
410 INIT_LIST_HEAD(&ce->e_block_list); 410 INIT_LIST_HEAD(&ce->e_block_list);
411 ce->e_cache = cache; 411 ce->e_cache = cache;