#include <sys/vnode.h>
sys/vnode.h
enumvtype
Vnode types. VNON means no type.
| VNON | 0 | 0 |
| VREG | 1 | 1 - 5 |
| VDIR | 2 | |
| VBLK | 3 | |
| VCHR | 4 | |
| VLNK | 5 | |
| VSOCK | 6 | 6 - 10 |
| VFIFO | 7 | |
| VBAD | 8 | |
| VSTR | 9 | |
| VCPLX | 10 |
enumvtagtype
Vnode tag types.
These are for the benefit of external programs only (e.g., pstat)
and should NEVER be inspected by the kernel.
| VT_NON | 0 | 0 |
| VT_UFS | 1 | 1 reserved, overlaps with (CTL_VFS, VFS_NUMMNTOPS) |
| VT_NFS | 2 | 2 - 5 |
| VT_MFS | 3 | |
| VT_MSDOSFS | 4 | |
| VT_LFS | 5 | |
| VT_LOFS | 6 | 6 - 10 |
| VT_FDESC | 7 | |
| VT_PORTAL | 8 | |
| VT_NULL | 9 | |
| VT_UMAP | 10 | |
| VT_KERNFS | 11 | 11 - 15 |
| VT_PROCFS | 12 | |
| VT_AFS | 13 | |
| VT_ISOFS | 14 | |
| VT_MOCKFS | 15 | |
| VT_HFS | 16 | 16 - 20 |
| VT_ZFS | 17 | |
| VT_DEVFS | 18 | |
| VT_WEBDAV | 19 | |
| VT_UDF | 20 | |
| VT_AFP | 21 | 21 - 25 |
| VT_CDDA | 22 | |
| VT_CIFS | 23 | |
| VT_OTHER | 24 | |
| VT_APFS | 25 | |
| VT_LOCKERFS | 26 | 26 - 27 |
| VT_BINDFS | 27 |
macroHAVE_VT_LOCKERFS
#define HAVE_VT_LOCKERFS 1
macroVNODE_WRITE
#define VNODE_WRITE 0x02
macroVNODE_BLOCKMAP_NO_TRACK
#define VNODE_BLOCKMAP_NO_TRACK 0x04
APFS Fusion: Do not track this request
macroVNODE_CLUSTER_VERIFY
#define VNODE_CLUSTER_VERIFY 0x08
Verification will be performed in the cluster layer
macroALLOCATEPERSIST
or no space at all
#define ALLOCATEPERSIST 0x00000008
do not deallocate allocated but unfilled blocks at close(2)
macroVNOVAL
Token indicating no attribute value yet assigned. some user source uses this
#define VNOVAL (-1)
macroIOCS_BUFFER_NUM_SIZE_BUCKETS
#define IOCS_BUFFER_NUM_SIZE_BUCKETS 10
macroIOCS_BUFFER_MAX_BUCKET
#define IOCS_BUFFER_MAX_BUCKET 9
macroIOCS_BUFFER_NUM_COMPRESSION_BUCKETS
#define IOCS_BUFFER_NUM_COMPRESSION_BUCKETS 7
macroIOCS_BLOCK_NUM_SIZE_BUCKETS
#define IOCS_BLOCK_NUM_SIZE_BUCKETS 16
structio_compression_stats
| uint64_t | uncompressed_size | |
| uint64_t | compressed_size | |
| uint32_t[10][7] | buffer_size_compression_dist | |
| uint32_t[16] | block_compressed_size_dist |
typedefio_compression_stats_t
typedef struct io_compression_stats *io_compression_stats_t
macroIOCS_SBE_PATH_LEN
#define IOCS_SBE_PATH_LEN 128
macroIOCS_PATH_START_BYTES_TO_COPY
#define IOCS_PATH_START_BYTES_TO_COPY 108
macroIOCS_SYSCTL_LIVE
#define IOCS_SYSCTL_LIVE 0x00000001
macroIOCS_SYSCTL_STORE_BUFFER_RD_ONLY
#define IOCS_SYSCTL_STORE_BUFFER_RD_ONLY 0x00000002
macroIOCS_SYSCTL_STORE_BUFFER_MARK
#define IOCS_SYSCTL_STORE_BUFFER_MARK 0x00000004
structiocs_store_buffer_entry
| char[128] | path_name | |
| struct io_compression_stats | iocs |