aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2025-01-03 15:51:51 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2025-01-03 15:51:51 +0000
commitecb5fe3c5e483e09544645ba84281b4a8cba4edf (patch)
treec9563b1b79f58b7ad9e4d6592a9f11e6a4a65e8e
parentae1cc4182b3fa6abe4de85ab201a198917dda73a (diff)
nv.9: Add a new subsection documenting kernel-specific behavior
Reviewed by: emaste Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D48257
-rw-r--r--share/man/man9/nv.932
1 files changed, 31 insertions, 1 deletions
diff --git a/share/man/man9/nv.9 b/share/man/man9/nv.9
index 4e4542c146ef..8c99f1d12200 100644
--- a/share/man/man9/nv.9
+++ b/share/man/man9/nv.9
@@ -859,7 +859,7 @@ If no element named
.Fa name
with the appropriate type exists, the program aborts.
The nvlist must not be in the error state.
-.Sh NOTES
+.Ss Notes
The
.Fn nvlist_pack
and
@@ -873,6 +873,36 @@ The
and
.Fn nvlist_xfer
functions can transfer nvlists between hosts with different endianness.
+.Ss Kernel Considerations
+The
+.Nm nv ,
+.Nm cnv ,
+and
+.Nm dnv
+APIs can be used in the kernel with the following differences:
+.Bl -bullet
+.It
+File descriptor and file descriptor array value types are not supported.
+.It
+.Fn nvlist_recv ,
+.Fn nvlist_send ,
+and
+.Fn nvlist_xfer
+are not supported.
+.It
+All memory allocations use the
+.Dv M_NVLIST
+memory type with
+.Xr malloc 9
+and
+.Xr free 9 .
+As a result, any allocated buffers moved into an nvlist must be allocated with
+.Dv M_NVLIST ,
+and buffers returned by functions such as
+.Fn nvlist_pack
+must be freed with
+.Dv M_NVLIST .
+.El
.Sh EXAMPLES
The following example demonstrates how to prepare an nvlist and send it over a
.Xr unix 4