|
@@ -239,7 +239,9 @@ void mb_cache_entry_delete(struct mb_cache *cache, u32 key, u64 value)
|
|
|
spin_lock(&cache->c_list_lock);
|
|
spin_lock(&cache->c_list_lock);
|
|
|
if (!list_empty(&entry->e_list)) {
|
|
if (!list_empty(&entry->e_list)) {
|
|
|
list_del_init(&entry->e_list);
|
|
list_del_init(&entry->e_list);
|
|
|
- cache->c_entry_count--;
|
|
|
|
|
|
|
+ if (!WARN_ONCE(cache->c_entry_count == 0,
|
|
|
|
|
+ "mbcache: attempt to decrement c_entry_count past zero"))
|
|
|
|
|
+ cache->c_entry_count--;
|
|
|
atomic_dec(&entry->e_refcnt);
|
|
atomic_dec(&entry->e_refcnt);
|
|
|
}
|
|
}
|
|
|
spin_unlock(&cache->c_list_lock);
|
|
spin_unlock(&cache->c_list_lock);
|