freebsd-dev/sys/fs/nfsserver
Mateusz Guzik abd80ddb94 vfs: introduce v_irflag and make v_type smaller
The current vnode layout is not smp-friendly by having frequently read data
avoidably sharing cachelines with very frequently modified fields. In
particular v_iflag inspected for VI_DOOMED can be found in the same line with
v_usecount. Instead make it available in the same cacheline as the v_op, v_data
and v_type which all get read all the time.

v_type is avoidably 4 bytes while the necessary data will easily fit in 1.
Shrinking it frees up 3 bytes, 2 of which get used here to introduce a new
flag field with a new value: VIRF_DOOMED.

Reviewed by:	kib, jeff
Differential Revision:	https://reviews.freebsd.org/D22715
2019-12-08 21:30:04 +00:00
..
nfs_fha_new.c sys/fs: further adoption of SPDX licensing ID tags. 2017-11-27 15:15:37 +00:00
nfs_fha_new.h sys/fs: further adoption of SPDX licensing ID tags. 2017-11-27 15:15:37 +00:00
nfs_nfsdcache.c style: Remove remaining deprecated MALLOC/FREE macros 2018-01-25 22:25:13 +00:00
nfs_nfsdkrpc.c Push down td in nfsrvd_dorpc() - make it use curthread instead 2019-03-04 13:02:36 +00:00
nfs_nfsdport.c vfs: introduce v_irflag and make v_type smaller 2019-12-08 21:30:04 +00:00
nfs_nfsdserv.c vfs: introduce v_irflag and make v_type smaller 2019-12-08 21:30:04 +00:00
nfs_nfsdsocket.c Don't pass td to nfsd_fhtovp(), it's unused. 2019-03-04 13:18:04 +00:00
nfs_nfsdstate.c vfs: introduce v_irflag and make v_type smaller 2019-12-08 21:30:04 +00:00
nfs_nfsdsubs.c Merge the pNFS server code from projects/pnfs-planb-server into head. 2018-06-12 19:36:32 +00:00