vgone.9 (2164257702740979d6ffebaba02a3fd778aea2c3) vgone.9 (1f620c2ead117e9b4f698560053721d05a6637a3)
1.\"
2.\" Copyright (C) 2001 Chad David <davidc@acns.ab.ca>. All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\" notice(s), this list of conditions and the following disclaimer as

--- 16 unchanged lines hidden (view full) ---

25.\" DAMAGE.
26.\"
27.\" $FreeBSD$
28.\"
29.Dd November 21, 2001
30.Dt VGONE 9
31.Os
32.Sh NAME
1.\"
2.\" Copyright (C) 2001 Chad David <davidc@acns.ab.ca>. All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\" notice(s), this list of conditions and the following disclaimer as

--- 16 unchanged lines hidden (view full) ---

25.\" DAMAGE.
26.\"
27.\" $FreeBSD$
28.\"
29.Dd November 21, 2001
30.Dt VGONE 9
31.Os
32.Sh NAME
33.Nm vgone
34.Nm vgonel
33.Nm vgone , vgonel
35.Nd "prepare a vnode for reuse"
36.Sh SYNOPSIS
37.In sys/param.h
38.In sys/vnode.h
39.Ft void
40.Fn vgone "struct vnode *vp"
41.Ft void
34.Nd "prepare a vnode for reuse"
35.Sh SYNOPSIS
36.In sys/param.h
37.In sys/vnode.h
38.Ft void
39.Fn vgone "struct vnode *vp"
40.Ft void
42.Fn vgonel "struct vnod *vp" "struct thread *td"
41.Fn vgonel "struct vnode *vp" "struct thread *td"
43.Sh DESCRIPTION
44.Fn vgone
45and
46.Fn vgonel
47prepare a vnode for reuse by another filesystem.
48The preparation includes the cleaning of all filesystem specific data and
49the removal from its mount point vnode list.
50.Pp
42.Sh DESCRIPTION
43.Fn vgone
44and
45.Fn vgonel
46prepare a vnode for reuse by another filesystem.
47The preparation includes the cleaning of all filesystem specific data and
48the removal from its mount point vnode list.
49.Pp
51If the vnode has a usecount of zero, and its
50If the vnode has a
51.Va v_usecount
52of zero, and its
52.Dv VDOOMED
53.Dv VDOOMED
53flag is not set it is moved to the head of the free list as in most cases the vnode
54flag is not set, it is moved to the head of the free list
55as in most cases the vnode
54is about to be reused, or its filesystem being unmounted.
55.Pp
56The difference between
57.Fn vgone
58and
59.Fn vgonel
60is that
61.Fn vgone
62locks the vnode interlock and then calls
63.Fn vgonel
64while
65.Fn vgonel
66expects the interlock to already be locked.
67.Sh SEE ALSO
68.Xr vclean 9
69.Sh AUTHORS
70This man page was written by
71.An Chad David Aq davidc@acns.ab.ca .
56is about to be reused, or its filesystem being unmounted.
57.Pp
58The difference between
59.Fn vgone
60and
61.Fn vgonel
62is that
63.Fn vgone
64locks the vnode interlock and then calls
65.Fn vgonel
66while
67.Fn vgonel
68expects the interlock to already be locked.
69.Sh SEE ALSO
70.Xr vclean 9
71.Sh AUTHORS
72This man page was written by
73.An Chad David Aq davidc@acns.ab.ca .