rpc_mkpipe_dentry(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… rpc_mkpipe_dentry(9) β€” Kernel API Manual, but make it a vibe ✨

Okay bestie, so this one lives in the Kernel API Manual and it's called rpc_mkpipe_dentry β€” and honestly? It's giving "matchmaker for kernel and userspace." πŸŽ€


🌸 NAME 🌸

rpc_mkpipe_dentry β€” make an rpc_pipefs file for kernel<->userspace communication

Like, it literally builds the little doorway where the kernel and userspace can pass notes to each other. Obsessed. πŸ’–


✨ SYNOPSIS ✨

int rpc_mkpipe_dentry (struct dentry *parent , const char *name , void
*private , struct rpc_pipe *pipe );

That's the whole signature, no cap. Keep it exactly like that, bestie. 🫢


πŸ¦‹ ARGUMENTS πŸ¦‹

  • parent β€” the dentry of the directory where we're making this new "pipe". Basically, where the new file is gonna live.
  • name β€” the name of the pipe. Yes, you get to name it. Main character energy. πŸ‘‘
  • private β€” private data you wanna associate with the pipe, for the caller's own use. It's yours, bestie β€” the kernel's just holding it for you.
  • pipe β€” an rpc_pipe containing the input parameters. This is the blueprint, the whole setup.

πŸ’€ DESCRIPTION πŸ’€

So here's the tea, fr fr.

Data becomes available for userspace to read through calls to rpc_queue_upcall. When userspace actually does the read, that results in calls to ops->upcall β€” and that gets called with the file pointer, the message, and the userspace buffer to copy to. It's giving a whole relay race. πŸƒβ€β™€οΈπŸ’¨

Writes can show up at any time, and ngl they do not have to be responses to upcalls. They don't need to be anything's reply β€” they're independent like that. They just turn into calls to msg->downcall. Periodt.

And the private argument you pass in right here? It'll be available to all these methods from the file pointer, via RPC_I(file_inode(file))->private. So it follows you everywhere. Very loyal. πŸ’œ


🧚 SEE ALSO 🧚

Kernel file ./net/sunrpc/rpc_pipe.c, plus the whole friend group:


That's the whole page, bestie β€” go slay some pipes! 🌈

This one comes from ./net/sunrpc, dated October 2026, and it's filed under rpc_mkpipe_dentry(9). πŸ’…βœ¨ No cap, that's the sign-off. πŸŽ€

πŸ“¦ where this page comes from