SOLARIS: Switch non-embedded vnodes for Solaris 11 96/12696/3
authorAndrew Deason <adeason@sinenomine.net>
Thu, 10 Aug 2017 01:06:05 +0000 (20:06 -0500)
committerBenjamin Kaduk <kaduk@mit.edu>
Fri, 15 Feb 2019 14:15:03 +0000 (09:15 -0500)
commit2aafe7df403e6a848185d15495139c07bced2758
tree43f3312bf24984c2d80d8b078abdc5b13caea007
parenta6499e0b086d964f3fcc65fe4be31edc33015061
SOLARIS: Switch non-embedded vnodes for Solaris 11

Newer updates to Solaris 11 have been including several changes to the
vnode struct. Since we embed a vnode in our struct vcache, our kernel
module must be recompiled for any such change in order for the openafs
client to work at all.

To avoid the need for this, switch Solaris to using a non-embedded
vnode in our struct vcache. Follow a similar technique as is used in
DARWIN and XBSD, where we allocate a vnode in osi_AttachVnode, and
free it in afs_FlushVCache.

Change-Id: I85fd5d084a13bdea4353b5ad9840fddbc45ce8c0
Reviewed-on: https://gerrit.openafs.org/12696
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
Tested-by: Mark Vitale <mvitale@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
src/afs/SOLARIS/osi_vcache.c
src/afs/VNOPS/afs_vnop_attrs.c
src/afs/afs.h
src/afs/afs_osi.h
src/afs/afs_osi_vm.c
src/afs/afs_vcache.c