summaryrefslogtreecommitdiffstats
path: root/include/linux/mbcache.h
diff options
context:
space:
mode:
authorAndreas Gruenbacher <agruenba@redhat.com>2016-02-22 22:42:05 -0500
committerTheodore Ts'o <tytso@mit.edu>2016-02-22 22:42:05 -0500
commitdc8d5e565f00c9442fa1cbf9acc115475628527c (patch)
tree19cee33666fc32278307e03ede65746dc992f71c /include/linux/mbcache.h
parent2335d05f3a83f5290ec28c1ed30c1c742a37edc9 (diff)
downloadlinux-dc8d5e565f00c9442fa1cbf9acc115475628527c.tar.gz
linux-dc8d5e565f00c9442fa1cbf9acc115475628527c.tar.bz2
linux-dc8d5e565f00c9442fa1cbf9acc115475628527c.zip
mbcache: get rid of _e_hash_list_head
Get rid of field _e_hash_list_head in cache entries and add bit field e_referenced instead. Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com> Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'include/linux/mbcache.h')
-rw-r--r--include/linux/mbcache.h8
1 files changed, 2 insertions, 6 deletions
diff --git a/include/linux/mbcache.h b/include/linux/mbcache.h
index a74a1f3082fb..607e6968542e 100644
--- a/include/linux/mbcache.h
+++ b/include/linux/mbcache.h
@@ -12,18 +12,14 @@ struct mb_cache;
struct mb_cache_entry {
/* List of entries in cache - protected by cache->c_list_lock */
struct list_head e_list;
- /* Hash table list - protected by bitlock in e_hash_list_head */
+ /* Hash table list - protected by hash chain bitlock */
struct hlist_bl_node e_hash_list;
atomic_t e_refcnt;
/* Key in hash - stable during lifetime of the entry */
u32 e_key;
+ u32 e_referenced:1;
/* Block number of hashed block - stable during lifetime of the entry */
sector_t e_block;
- /*
- * Head of hash list (for list bit lock) - stable. Combined with
- * referenced bit of entry
- */
- unsigned long _e_hash_list_head;
};
struct mb_cache *mb_cache_create(int bucket_bits);