• T Makphaibulchoke's avatar
    fs/mbcache.c: doucple the locking of local from global data · 1f3e55fe
    T Makphaibulchoke authored
    The patch increases the parallelism of mbcache by using the built-in
    lock in the hlist_bl_node to protect the mb_cache's local block and
    index hash chains.  The global data mb_cache_lru_list and
    mb_cache_list continue to be protected by the global
    mb_cache_spinlock.
    
    New block group spinlock, mb_cache_bg_lock is also added to serialize
    accesses to mb_cache_entry's local data.
    
    A new member e_refcnt is added to the mb_cache_entry structure to help
    preventing an mb_cache_entry from being deallocated by a free while it
    is being referenced by either mb_cache_entry_get() or
    mb_cache_entry_find().
    Signed-off-by: default avatarT. Makphaibulchoke <tmac@hp.com>
    Signed-off-by: default avatar"Theodore Ts'o" <tytso@mit.edu>
    1f3e55fe
mbcache.c 23.9 KB