* Sasha Levin (levinsasha928@xxxxxxxxx) wrote: [...] > @@ -96,6 +97,8 @@ struct elevator_type > struct list_head list; > }; > > +#define ELV_HASH_BITS 6 > + > /* > * each queue has an elevator_queue associated with it > */ > @@ -105,7 +108,7 @@ struct elevator_queue > void *elevator_data; > struct kobject kobj; > struct mutex sysfs_lock; > - struct hlist_head *hash; > + DECLARE_HASHTABLE(hash, ELV_HASH_BITS); > unsigned int registered:1; Hrm, so this is moving "registered" out of the elevator_queue first cache-line by turning the pointer into a 256 or 512 bytes hash table. Maybe we should consider moving "registered" before the "hash" field ? Thanks, Mathieu > }; > > -- > 1.7.12.4 > -- Mathieu Desnoyers Operating System Efficiency R&D Consultant EfficiOS Inc. http://www.efficios.com -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html