STRUCT NTB_CTX_OPS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct ntb_ctx_ops(9) β€” Kernel API Manual, bestie ✨

okay so this is the ntb driver context operations squad, and it is lowkey just a struct full of function pointers. No cap, every field is here and accounted for. 🫢

🌸 NAME 🌸

struct ntb_ctx_ops β€” ntb driver context operations. That’s the whole name, periodt. πŸ’–

πŸ¦‹ SYNOPSIS πŸ¦‹

struct ntb_ctx_ops {
    void (*link_event)(void *ctx);
    void (*db_event)(void *ctx, int db_vector);
    void (*msg_event)(void *ctx);
};

The way this struct just sits there with three function pointers? Iconic. The signatures are copied exactly, bestie β€” no renaming, no fixing, no funny business. πŸ’…

πŸŽ€ Members πŸŽ€

  • link_event β€” see ntb_link_event. πŸ’…
  • db_event β€” see ntb_db_event. πŸŽ€
  • msg_event β€” see ntb_msg_event. πŸ¦‹

Short, sweet, and exactly what the manpage says. 🫢

🌈 SEE ALSO 🌈

Kernel file: ./include/linux/ntb.h β€” that’s the home base. The rest of the reference crew, in all its glory:

enum ntb_topo(9), enum ntb_speed(9), enum ntb_width(9),
enum ntb_default_port(9), struct ntb_client_ops(9), struct ntb_dev_ops(9),
struct ntb_client(9), struct ntb_dev(9), ntb_register_client(9),
ntb_unregister_client(9), ntb_register_device(9), ntb_unregister_device(9),
ntb_set_ctx(9), ntb_clear_ctx(9), ntb_link_event(9), ntb_db_event(9),
ntb_msg_event(9), ntb_default_port_number(9),
ntb_default_peer_port_count(9), ntb_default_peer_port_number(9),
ntb_default_peer_port_idx(9), ntb_port_number(9), ntb_peer_port_count(9),
ntb_peer_port_number(9), ntb_logical_port_number(9),
ntb_peer_logical_port_number(9), ntb_peer_port_idx(9), ntb_link_is_up(9),
ntb_link_enable(9), ntb_link_disable(9), ntb_mw_count(9),
ntb_mw_get_align(9), ntb_mw_set_trans(9), ntb_mw_clear_trans(9),
ntb_peer_mw_count(9), ntb_peer_mw_get_addr(9), ntb_peer_mw_set_trans(9),
ntb_peer_mw_clear_trans(9), ntb_db_is_unsafe(9), ntb_db_valid_mask(9),
ntb_db_vector_count(9), ntb_db_vector_mask(9), ntb_db_read(9),
ntb_db_set(9), ntb_db_clear(9), ntb_db_read_mask(9), ntb_db_set_mask(9),
ntb_db_clear_mask(9), ntb_peer_db_addr(9), ntb_peer_db_read(9),
ntb_peer_db_set(9), ntb_peer_db_clear(9), ntb_peer_db_read_mask(9),
ntb_peer_db_set_mask(9), ntb_peer_db_clear_mask(9),
ntb_spad_is_unsafe(9), ntb_spad_count(9), ntb_spad_read(9),
ntb_spad_write(9), ntb_peer_spad_addr(9), ntb_peer_spad_read(9),
ntb_peer_spad_write(9), ntb_msg_count(9), ntb_msg_inbits(9),
ntb_msg_outbits(9), ntb_msg_read_sts(9), ntb_msg_clear_sts(9),
ntb_msg_set_mask(9), ntb_msg_clear_mask(9), ntb_msg_read(9),
ntb_peer_msg_write(9), ntb_get_dma_dev(9), ntb_peer_resource_idx(9),
ntb_peer_highest_mw_idx(9)
Footer check, bestie: source/version ./include/linux, date October 2026, page struct ntb_ctx_ops(9). That’s the whole footer, and honestly? Slay. πŸ’–βœ¨
πŸ“¦ where this page comes from