path_put(9)

๐Ÿ“ฆ version 7.3.1, in nixpkgs unstable

okay so you opened path_put(9) from the Kernel API Manual, and honestly? iconic. this is the lowkey refcount-release moment that goes โ€œbestie, weโ€™re done with this path, let it goooโ€ โ€” and by โ€œgoโ€ I mean it decrements the reference count. no extra lore, no side quests. letโ€™s get into it ๐Ÿ’–

๐ŸŽ€ NAME ๐ŸŽ€

path_put โ€” put a reference to a path. like, the reference is being put down. not in a mean way. in a refcount way. periodt. ๐Ÿ’…

โœจ SYNOPSIS โœจ

void path_put (const struct path *path );

thatโ€™s the whole signature, bestie. void, so thereโ€™s no return value to obsess over. ๐Ÿซถ

๐ŸŒธ ARGUMENTS ๐ŸŒธ

  • path โ€” the path youโ€™re putting the reference to. yes, thatโ€™s the one. the path. the reference. the little โ€œbye booโ€ moment. ๐Ÿ’–

๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

so, given a path, path_put() decrements the reference count to the dentry and the vfsmount. thatโ€™s the whole vibe. two refcounts, one function, zero drama. itโ€™s giving โ€œcleanup eraโ€ and honestly we love that for it. โœจ

no cap: the facts are literally that simple. it decrements the refcount on the dentry and the vfsmount. no return value, no extra parameters, no secret menu. ๐ŸŒˆ

๐Ÿ‘‘ SEE ALSO ๐Ÿ‘‘

the Kernel file ./fs/namei.c has a whole friend group, and path_put(9) is in it. hereโ€™s the full squad so nobody gets left on read:

check_acl(9)
acl_permission_check(9)
generic_permission(9)
do_inode_permission(9)
sb_permission(9)
inode_permission(9)
path_get(9)
path_connected(9)
try_to_unlazy(9)
try_to_unlazy_next(9)
complete_walk(9)
may_follow_link(9)
safe_hardlink_source(9)
may_linkat(9)
may_create_in_sticky(9)
lookup_fast(9)
start_dirop(9)
end_dirop(9)
kern_path_parent(9)
vfs_path_parent_lookup(9)
vfs_path_lookup(9)
try_lookup_noperm(9)
lookup_noperm(9)
lookup_one(9)
lookup_one_unlocked(9)
lookup_one_positive_killable(9)
lookup_one_positive_unlocked(9)
lookup_noperm_unlocked(9)
start_creating(9)
start_removing(9)
start_creating_killable(9)
start_removing_killable(9)
start_creating_noperm(9)
start_removing_noperm(9)
start_creating_dentry(9)
start_removing_dentry(9)
__start_renaming(9)
start_renaming(9)
start_renaming_dentry(9)
start_renaming_two_dentries(9)
vfs_prepare_mode(9)
vfs_create(9)
atomic_open(9)
vfs_lookup_open(9)
vfs_tmpfile(9)
kernel_tmpfile_open(9)
end_creating_path(9)
dentry_create(9)
vfs_mknod(9)
vfs_mkdir(9)
vfs_rmdir(9)
vfs_unlink(9)
vfs_symlink(9)
vfs_link(9)
vfs_rename(9)
vfs_readlink(9)
vfs_get_link(9)
page_get_link(9)
page_put_link(9)

thatโ€™s the whole list, bestie. no gatekeeping. iykyk. ๐Ÿ’œ


and thatโ€™s the page! this one comes from source/version ./fs and is dated October 2026. path_put(9) is signing off โ€” go decrement those refs and slay the cleanup era. mwah ๐Ÿ’‹๐ŸŽ€

๐Ÿ“ฆ where this page comes from