linux_dsm_epyc7002/include
Nick Piggin 44a7d7a878 fs: cache optimise dentry and inode for rcu-walk
Put dentry and inode fields into top of data structure.  This allows RCU path
traversal to perform an RCU dentry lookup in a path walk by touching only the
first 56 bytes of the dentry.

We also fit in 8 bytes of inline name in the first 64 bytes, so for short
names, only 64 bytes needs to be touched to perform the lookup. We should
get rid of the hash->prev pointer from the first 64 bytes, and fit 16 bytes
of name in there, which will take care of 81% rather than 32% of the kernel
tree.

inode is also rearranged so that RCU lookup will only touch a single cacheline
in the inode, plus one in the i_ops structure.

This is important for directory component lookups in RCU path walking. In the
kernel source, directory names average is around 6 chars, so this works.

When we reach the last element of the lookup, we need to lock it and take its
refcount which requires another cacheline access.

Align dentry and inode operations structs, so members will be at predictable
offsets and we can group common operations into head of structure.

Signed-off-by: Nick Piggin <npiggin@kernel.dk>
2011-01-07 17:50:28 +11:00
..
acpi ACPI: video: fix build for CONFIG_ACPI=n 2010-12-11 02:01:46 -05:00
asm-generic
crypto
drm drm/i915: announce to userspace that the bsd ring is coherent 2010-12-05 10:40:39 +00:00
keys
linux fs: cache optimise dentry and inode for rcu-walk 2011-01-07 17:50:28 +11:00
math-emu
media [media] wm8775: Revert changeset fcb9757333 to avoid a regression 2011-01-03 09:09:56 -02:00
mtd
net Revert "ipv4: Allow configuring subnets as local addresses" 2010-12-23 12:03:57 -08:00
pcmcia
rdma
rxrpc
scsi
sound
trace
video
xen xen: Provide a variant of __RING_SIZE() that is an integer constant expression 2010-12-15 12:34:28 -08:00
Kbuild