GETNEWVNODE(9)

πŸ“¦
version 15.1 Β· 3 versions
, in freebsd 15.1, nixpkgs unstable

🌸 NAME 🌸

getnewvnode β€” get a new vnode

okay bestie, welcome to getnewvnode(9) from the Kernel Developer's Manual, section 9 β€” and yes, it's literally about getting a shiny new vnode ✨


✨ SYNOPSIS ✨

#include <sys/param.h>
#include <sys/vnode.h>
#include <sys/mount.h>

int
getnewvnode(const char *tag, struct mount *mp, struct vop_vector *vops,
    struct vnode **vpp);

πŸ’… DESCRIPTION πŸ’…

so getnewvnode() initializes a new vnode and assigns it the vnode operations you pass in vops. iconic behavior, honestly 🫢

the arguments to getnewvnode() are giving:

  • tag β€” the file system type string. this field should only be referenced for debugging or for userland utilities πŸ‘€
  • mp β€” the mount point to add the new vnode to.
  • vops β€” the vnode operations to assign to the new vnode.
  • vpp β€” points to the new vnode upon successful completion πŸŽ€

πŸŽ€ RETURN VALUES πŸŽ€

getnewvnode() returns 0 on success. that's it, that's the whole return value, and she ate πŸ’…


πŸ’€ BUGS πŸ’€

it never returns an error, instead either succeeds or blocks indefinitely. not me being dramatic, but that is literally the documented behavior 😭


🫢 AUTHORS 🫢

this manual page was written by Chad David <davidc@acns.ab.ca>.


xoxo, Debian bestie πŸ’– β€” this page is dated November 1, 2023 🌈

πŸ“¦ where this page comes from