vm: stop abusing p_hash for pvn tags
commit52f87462ef46f7e72ca3a677a3e69e09ca1083ec
authorJosef 'Jeff' Sipek <jeffpc@josefsipek.net>
Sat, 15 Oct 2016 02:09:02 +0000 (14 22:09 -0400)
committerJosef 'Jeff' Sipek <jeffpc@josefsipek.net>
Sun, 1 Jan 2017 23:42:58 +0000 (1 18:42 -0500)
treec6f34e3a987dded23d98f96fd869209ee864a076
parent7564fcb6af77fcc2d57148ddb1409510ab77f68c
vm: stop abusing p_hash for pvn tags

Instead of setting p_hash to a magic value to indicate that the page is
a pvn tag use a flag (P_PVN_TAG) in p_state.  While technically, we're
supposed to access p_state only while holding the proper locks, the
P_PVN_TAG is never added or removed from p_state (either it's there the
entire time the page_t exists or it's never there) and therefore we can
check it without any locking.
include/vm/page.h
include/vm/pvn.h
kernel/vm/vm_pvn.c
usr/src/uts/common/fs/nfs/nfs3_vnops.c
usr/src/uts/common/fs/nfs/nfs4_rnode.c
usr/src/uts/common/fs/nfs/nfs4_vnops.c