getnewvnode.9 (fa9896e082a1046ff4fbc75fcba4d18d1f2efc19) getnewvnode.9 (1692e50f25730bfa0c579396bc2f79973717b30b)
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

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

19.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
21.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
22.\" CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
25.\" DAMAGE.
26.\"
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

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

19.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
21.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
22.\" CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
25.\" DAMAGE.
26.\"
27.Dd November 21, 2001
27.Dd November 1, 2023
28.Dt GETNEWVNODE 9
29.Os
30.Sh NAME
31.Nm getnewvnode
32.Nd "get a new vnode"
33.Sh SYNOPSIS
34.In sys/param.h
35.In sys/vnode.h
36.In sys/mount.h
37.Ft int
28.Dt GETNEWVNODE 9
29.Os
30.Sh NAME
31.Nm getnewvnode
32.Nd "get a new vnode"
33.Sh SYNOPSIS
34.In sys/param.h
35.In sys/vnode.h
36.In sys/mount.h
37.Ft int
38.Fn getnewvnode "const char *tag" "struct mount *mp" "vop_t **vops" "struct vnode **vpp"
38.Fn getnewvnode "const char *tag" "struct mount *mp" "struct vop_vector *vops" "struct vnode **vpp"
39.Sh DESCRIPTION
40The
41.Fn getnewvnode
42function initializes a new vnode, assigning it the vnode operations passed in
43.Fa vops .
39.Sh DESCRIPTION
40The
41.Fn getnewvnode
42function initializes a new vnode, assigning it the vnode operations passed in
43.Fa vops .
44The vnode is either freshly allocated, or taken from the head of the
45free list depending on the number of vnodes already in the system.
46.Pp
47The arguments to
48.Fn getnewvnode
49are:
50.Bl -tag -width ".Fa vops"
51.It Fa tag
52The file system type string.
53This field should only be referenced for debugging or for userland utilities.
54.It Fa mp
55The mount point to add the new vnode to.
56.It Fa vops
57The vnode operations to assign to the new vnode.
58.It Fa vpp
59Points to the new vnode upon successful completion.
60.El
61.Sh RETURN VALUES
62.Fn getnewvnode
63returns 0 on success.
44.Pp
45The arguments to
46.Fn getnewvnode
47are:
48.Bl -tag -width ".Fa vops"
49.It Fa tag
50The file system type string.
51This field should only be referenced for debugging or for userland utilities.
52.It Fa mp
53The mount point to add the new vnode to.
54.It Fa vops
55The vnode operations to assign to the new vnode.
56.It Fa vpp
57Points to the new vnode upon successful completion.
58.El
59.Sh RETURN VALUES
60.Fn getnewvnode
61returns 0 on success.
64There are currently no failure conditions - that do not result in a panic.
62.Sh BUGS
63It never return an error, instead either succeeds or blocks indefinitely.
65.Sh AUTHORS
66This manual page was written by
67.An Chad David Aq Mt davidc@acns.ab.ca .
64.Sh AUTHORS
65This manual page was written by
66.An Chad David Aq Mt davidc@acns.ab.ca .