ntb_peer_db_set(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… ntb_peer_db_set β€” from the ntb_peer_db_set(9) chapter of the Kernel API Manual

okay bestie, so this is a kernel API page, part of the kernel API manual β€” we're literally in the drivers/ntb ✨ doorbell ✨ zone today. no cap, it's a tiny function with big "hey other side, look over here" energy.


🌸 NAME 🌸

ntb_peer_db_set β€” set bits in the peer doorbell register πŸ›ŽοΈ

Like, you're poking the other side's doorbell. Rude? No. Iconic? Yes.


πŸŽ€ SYNOPSIS πŸŽ€

int ntb_peer_db_set (struct ntb_dev *ntb , u64 db_bits );

the way that signature just sits there being all int-returning and tidy... we love a function that tells you if it worked. 😌


πŸ¦‹ ARGUMENTS πŸ¦‹

  • ntb β€” your NTB device context. the main character struct, basically πŸ’–
  • db_bits β€” the doorbell bits you wanna set. these are your bits, pick them wisely ✨

🫢 DESCRIPTION 🫢

okay so what this does: it sets bits in the peer doorbell register β€” the peer's, not yours, that's the whole point β€” and setting those bits may generate a peer doorbell interrupt on the other side. so, yeah, you're ringing their bell πŸ””.

and here's the rule that's lowkey the most important part, no exceptions:

Bits that were already set must remain set. periodt. πŸ’… you're setting bits, not clearing them, not toggling them, not doing an unhinged little rewrite of the register. already-set bits stay set. fr fr.

πŸ”₯ RETURN πŸ”₯

  • Zero on success πŸŽ‰ β€” zero is a win here, do not @ me
  • otherwise an error number β€” so if it's not zero, it's giving error vibes and you should handle that πŸ’€

⭐ SEE ALSO ⭐

the bestie list is LONG, so buckle in. first up, the header that started it all:

  • Kernel file ./include/linux/ntb.h πŸ‘‘

enums + structs (the lore):

  • enum ntb_topo(9), enum ntb_speed(9), enum ntb_width(9), enum ntb_default_port(9)
  • struct ntb_client_ops(9), struct ntb_ctx_ops(9), struct ntb_dev_ops(9), struct ntb_client(9), struct ntb_dev(9)

register / unregister:

ctx + events:

ports (so many ports):

links:

memory windows:

doorbells, local side:

doorbells, peer side (yes, my girl's whole family):

scratchpads:

messages:

misc icons:


and that's the whole page, bestie 🧚 you now know how to ring a peer doorbell and you know the bits you didn't touch stay exactly where they were. iykyk.

<cute>β€” signed off with love from ./include/linux, dated October 2026, version ntb_peer_db_set(9) Β· stay slaying πŸ’œπŸŽ€</cute>

πŸ“¦ where this page comes from