diff options
author | dillon <dillon@FreeBSD.org> | 1999-09-24 07:07:02 +0000 |
---|---|---|
committer | dillon <dillon@FreeBSD.org> | 1999-09-24 07:07:02 +0000 |
commit | 609f54c951188af186c30e759ae8b70731e6cbae (patch) | |
tree | 47c9ac7c8deb07c64e08946d540fe2ee9d110efb /share | |
parent | 044d3b94b652491637d6b81817e165adb8dce612 (diff) | |
download | FreeBSD-src-609f54c951188af186c30e759ae8b70731e6cbae.zip FreeBSD-src-609f54c951188af186c30e759ae8b70731e6cbae.tar.gz |
Update errors in documentation for various VOP_ calls. Specifically,
describe the correct locking state expected on entry and return.
Diffstat (limited to 'share')
-rw-r--r-- | share/man/man9/VOP_ABORTOP.9 | 3 | ||||
-rw-r--r-- | share/man/man9/VOP_CREATE.9 | 2 | ||||
-rw-r--r-- | share/man/man9/VOP_INACTIVE.9 | 9 | ||||
-rw-r--r-- | share/man/man9/VOP_LINK.9 | 9 | ||||
-rw-r--r-- | share/man/man9/VOP_REMOVE.9 | 2 |
5 files changed, 18 insertions, 7 deletions
diff --git a/share/man/man9/VOP_ABORTOP.9 b/share/man/man9/VOP_ABORTOP.9 index 4cfe66f..6f9171b 100644 --- a/share/man/man9/VOP_ABORTOP.9 +++ b/share/man/man9/VOP_ABORTOP.9 @@ -66,6 +66,9 @@ vop_abortop(struct vnode *dvp, struct componentname *cnp) return 0; } .Ed +.Sh LOCKS +.Fa dvp +should be locked on entry and remain locked on return. .Sh SEE ALSO .Xr vnode 9 .Sh AUTHORS diff --git a/share/man/man9/VOP_CREATE.9 b/share/man/man9/VOP_CREATE.9 index ddffbe1..cbf8949 100644 --- a/share/man/man9/VOP_CREATE.9 +++ b/share/man/man9/VOP_CREATE.9 @@ -88,7 +88,7 @@ flag is specified in .Sh LOCKS The directory, .Fa dvp -should be locked on entry and will be unlocked and released on exit. +will be locked on entry and must remain locked on return. If the call is successful, the new object will be returned locked, unless the call is .Xr VOP_MKNOD 9 diff --git a/share/man/man9/VOP_INACTIVE.9 b/share/man/man9/VOP_INACTIVE.9 index 95d21db..e9546ef 100644 --- a/share/man/man9/VOP_INACTIVE.9 +++ b/share/man/man9/VOP_INACTIVE.9 @@ -59,6 +59,14 @@ It can be used to reclaim space for 'open but deleted' files. is called when a vnode is being reused for a different filesystem. Any filesystem specific resources associated with the vnode should be freed. +.Sh LOCKS +.Pp +For VOP_INACTIVE, the vp will be locked on entry. Your VOP_INACTIVE code +must unlock the vp prior to returning. +.Pp +For VOP_RECLAIM, the vp will not be locked on entry and should be left +unlocked on return. +.Pp .Sh PSEUDOCODE .Bd -literal int @@ -70,6 +78,7 @@ vop_inactive(struct vnode *vp) */ ...; } + VOP_UNLOCK(vp, 0, p); return 0; } diff --git a/share/man/man9/VOP_LINK.9 b/share/man/man9/VOP_LINK.9 index 0eba06e..0d046dcf 100644 --- a/share/man/man9/VOP_LINK.9 +++ b/share/man/man9/VOP_LINK.9 @@ -57,13 +57,12 @@ file vnodes should NOT be released on exit. .Sh LOCKS The directory, .Fa dvp -is locked on entry. The caller will unlock and release the directory -on return. The VOP routine should not try to unlock or release -the directory. +is locked on entry and should remain locked on return. The file .Fa vp -is not locked on entry. If the VOP routine locks it, it must remember -to unlock it prior to returning. +is not locked on entry and should be left unlocked on return. +If the VOP routine locks the file, it must remember to unlock it +prior to returning. .Sh RETURN VALUES Zero is returned if the file was linked successfully, otherwise an error is returned. diff --git a/share/man/man9/VOP_REMOVE.9 b/share/man/man9/VOP_REMOVE.9 index 05a7e45..86a8f06 100644 --- a/share/man/man9/VOP_REMOVE.9 +++ b/share/man/man9/VOP_REMOVE.9 @@ -59,7 +59,7 @@ Both .Fa dvp and .Fa vp -should be locked on entry and are unlocked and released on exit. +should be locked on entry and remain locked on return. .Sh RETURN VALUES Zero is returned on success, otherwise an error code is returned. .Sh PSEUDOCODE |