rcuref_put(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 rcuref_put(9) 🌸

okay bestie, welcome to the Kernel API Manual page for rcuref_put(9) β€” it’s giving reference-count release realness, and we’re gonna get into it. πŸ’…

✨ NAME ✨

rcuref_put - - Release one reference for a rcuref reference count

πŸŽ€ SYNOPSIS πŸŽ€

bool rcuref_put (rcuref_t *ref );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • ref β€” Pointer to the reference count. that’s the thing you’re passing in, bestie.

πŸ’– DESCRIPTION πŸ’–

You can invoke this from any context. periodt.

It provides release memory ordering, such that prior loads and stores are done before, and it provides an acquire ordering on success such that free must come after. no cap.

It returns true if this was the last reference with no future references possible. This signals the caller that it can safely schedule the object, which is protected by the reference counter, for deconstruction. slay, that’s the green light. 🟒

It returns false if there are still active references or the put raced with a concurrent get/put pair. Caller is not allowed to deconstruct the protected object. 🚫

🌈 SEE ALSO 🌈

Kernel file ./include/linux/rcuref.h β€” rcuref_init(9), rcuref_read(9), rcuref_is_dead(9), rcuref_get(9), rcuref_put_rcusafe(9).


byeee 🫢 β€” source ./include/linux, dated October 2026, and this is literally the rcuref_put(9) page. mwah πŸ’‹

πŸ“¦ where this page comes from