Changeset View
Changeset View
Standalone View
Standalone View
sys/sys/vnode.h
Show First 20 Lines • Show All 238 Lines • ▼ Show 20 Lines | |||||
* | * | ||||
* VIRF_DOOMED is doubly protected by the interlock and vnode lock. Both | * VIRF_DOOMED is doubly protected by the interlock and vnode lock. Both | ||||
* are required for writing but the status may be checked with either. | * are required for writing but the status may be checked with either. | ||||
*/ | */ | ||||
#define VHOLD_NO_SMR (1<<29) /* Disable vhold_smr */ | #define VHOLD_NO_SMR (1<<29) /* Disable vhold_smr */ | ||||
#define VHOLD_ALL_FLAGS (VHOLD_NO_SMR) | #define VHOLD_ALL_FLAGS (VHOLD_NO_SMR) | ||||
#define VIRF_DOOMED 0x0001 /* This vnode is being recycled */ | #define VIRF_DOOMED 0x0001 /* This vnode is being recycled */ | ||||
#define VIRF_PGREAD 0x0002 /* Direct reads from the page cache are permitted, | |||||
markj: Maybe, "direct reads from the page cache are permitted"? | |||||
never cleared once set */ | |||||
Done Inline Actions@@ -4225,7 +4231,9 @@ vn_printf(struct vnode *vp, const char *fmt, ...) buf[1] = '\0'; if (vp->v_irflag & VIRF_DOOMED) strlcat(buf, "|VIRF_DOOMED", sizeof(buf)); - flags = vp->v_irflag & ~(VIRF_DOOMED); + if (vp->v_irflag & VIRF_PGREAD) + strlcat(buf, "|VIRF_PGREAD", sizeof(buf)); + flags = vp->v_irflag & ~(VIRF_DOOMED | VIRF_PGREAD); if (flags != 0) { snprintf(buf2, sizeof(buf2), "|VIRF(0x%lx)", flags); strlcat(buf, buf2, sizeof(buf)); mjg: ```@@ -4225,7 +4231,9 @@ vn_printf(struct vnode *vp, const char *fmt, ...)
buf[1] =… | |||||
#define VI_TEXT_REF 0x0001 /* Text ref grabbed use ref */ | #define VI_TEXT_REF 0x0001 /* Text ref grabbed use ref */ | ||||
#define VI_MOUNT 0x0002 /* Mount in progress */ | #define VI_MOUNT 0x0002 /* Mount in progress */ | ||||
#define VI_DOINGINACT 0x0004 /* VOP_INACTIVE is in progress */ | #define VI_DOINGINACT 0x0004 /* VOP_INACTIVE is in progress */ | ||||
#define VI_OWEINACT 0x0008 /* Need to call inactive */ | #define VI_OWEINACT 0x0008 /* Need to call inactive */ | ||||
#define VI_DEFINACT 0x0010 /* deferred inactive */ | #define VI_DEFINACT 0x0010 /* deferred inactive */ | ||||
#define VV_ROOT 0x0001 /* root of its filesystem */ | #define VV_ROOT 0x0001 /* root of its filesystem */ | ||||
▲ Show 20 Lines • Show All 813 Lines • Show Last 20 Lines |
Maybe, "direct reads from the page cache are permitted"?