Print this page
Add VZONEROOT flag because not all zone roots have VROOT set.


 398 #define VISSWAPFS       0x20000 /* vnode is being used for swapfs */
 399 
 400 /*
 401  * The mdb memstat command assumes that IS_SWAPFSVP only uses the
 402  * vnode's v_flag field.  If this changes, cache the additional
 403  * fields in mdb; see vn_get in mdb/common/modules/genunix/memory.c
 404  */
 405 #define IS_SWAPFSVP(vp) (((vp)->v_flag & VISSWAPFS) != 0)
 406 
 407 #define V_SYSATTR       0x40000 /* vnode is a GFS system attribute */
 408 
 409 /*
 410  * Indication that VOP_LOOKUP operations on this vnode may yield results from a
 411  * different VFS instance.  The main use of this is to suppress v_path
 412  * calculation logic when filesystems such as procfs emit results which defy
 413  * expectations about normal VFS behavior.
 414  */
 415 #define VTRAVERSE       0x80000
 416 
 417 /*







 418  * Vnode attributes.  A bit-mask is supplied as part of the
 419  * structure to indicate the attributes the caller wants to
 420  * set (setattr) or extract (getattr).
 421  */
 422 
 423 /*
 424  * Note that va_nodeid and va_nblocks are 64bit data type.
 425  * We support large files over NFSV3. With Solaris client and
 426  * Server that generates 64bit ino's and sizes these fields
 427  * will overflow if they are 32 bit sizes.
 428  */
 429 
 430 typedef struct vattr {
 431         uint_t          va_mask;        /* bit-mask of attributes */
 432         vtype_t         va_type;        /* vnode type (for create) */
 433         mode_t          va_mode;        /* file access mode */
 434         uid_t           va_uid;         /* owner user id */
 435         gid_t           va_gid;         /* owner group id */
 436         dev_t           va_fsid;        /* file system id (dev for now) */
 437         u_longlong_t    va_nodeid;      /* node id */




 398 #define VISSWAPFS       0x20000 /* vnode is being used for swapfs */
 399 
 400 /*
 401  * The mdb memstat command assumes that IS_SWAPFSVP only uses the
 402  * vnode's v_flag field.  If this changes, cache the additional
 403  * fields in mdb; see vn_get in mdb/common/modules/genunix/memory.c
 404  */
 405 #define IS_SWAPFSVP(vp) (((vp)->v_flag & VISSWAPFS) != 0)
 406 
 407 #define V_SYSATTR       0x40000 /* vnode is a GFS system attribute */
 408 
 409 /*
 410  * Indication that VOP_LOOKUP operations on this vnode may yield results from a
 411  * different VFS instance.  The main use of this is to suppress v_path
 412  * calculation logic when filesystems such as procfs emit results which defy
 413  * expectations about normal VFS behavior.
 414  */
 415 #define VTRAVERSE       0x80000
 416 
 417 /*
 418  * Indicates the vnode is a zone's root ("/" in-zone). A zone's root does NOT
 419  * have to be a filesystem root, even if many zone brands guaranteed that.
 420  */
 421 #define VZONEROOT       0x100000
 422 
 423 
 424 /*
 425  * Vnode attributes.  A bit-mask is supplied as part of the
 426  * structure to indicate the attributes the caller wants to
 427  * set (setattr) or extract (getattr).
 428  */
 429 
 430 /*
 431  * Note that va_nodeid and va_nblocks are 64bit data type.
 432  * We support large files over NFSV3. With Solaris client and
 433  * Server that generates 64bit ino's and sizes these fields
 434  * will overflow if they are 32 bit sizes.
 435  */
 436 
 437 typedef struct vattr {
 438         uint_t          va_mask;        /* bit-mask of attributes */
 439         vtype_t         va_type;        /* vnode type (for create) */
 440         mode_t          va_mode;        /* file access mode */
 441         uid_t           va_uid;         /* owner user id */
 442         gid_t           va_gid;         /* owner group id */
 443         dev_t           va_fsid;        /* file system id (dev for now) */
 444         u_longlong_t    va_nodeid;      /* node id */