mirror of
https://github.com/torvalds/linux.git
synced 2026-09-15 15:01:08 -04:00
[PATCH] Use __read_mostly on some hot fs variables
I discovered on oprofile hunting on a SMP platform that dentry lookups were slowed down because d_hash_mask, d_hash_shift and dentry_hashtable were in a cache line that contained inodes_stat. So each time inodes_stats is changed by a cpu, other cpus have to refill their cache line. This patch moves some variables to the __read_mostly section, in order to avoid false sharing. RCU dentry lookups can go full speed. Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
committed by
Linus Torvalds
parent
878a9f30d7
commit
fa3536cc14
12
fs/inotify.c
12
fs/inotify.c
@@ -39,15 +39,15 @@
|
||||
|
||||
static atomic_t inotify_cookie;
|
||||
|
||||
static kmem_cache_t *watch_cachep;
|
||||
static kmem_cache_t *event_cachep;
|
||||
static kmem_cache_t *watch_cachep __read_mostly;
|
||||
static kmem_cache_t *event_cachep __read_mostly;
|
||||
|
||||
static struct vfsmount *inotify_mnt;
|
||||
static struct vfsmount *inotify_mnt __read_mostly;
|
||||
|
||||
/* these are configurable via /proc/sys/fs/inotify/ */
|
||||
int inotify_max_user_instances;
|
||||
int inotify_max_user_watches;
|
||||
int inotify_max_queued_events;
|
||||
int inotify_max_user_instances __read_mostly;
|
||||
int inotify_max_user_watches __read_mostly;
|
||||
int inotify_max_queued_events __read_mostly;
|
||||
|
||||
/*
|
||||
* Lock ordering:
|
||||
|
||||
Reference in New Issue
Block a user