STRUCT IONIC_RX_MODE_SET_CMD(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct ionic_rx_mode_set_cmd β€” the Kernel API Manual era ✨

okay bestie, so this is a page from the Kernel API Manual and it's all about struct ionic_rx_mode_set_cmd β€” literally the command that sets a LIF's Rx mode. yes, that LIF. icon behavior honestly πŸŽ€


✨ NAME ✨

struct ionic_rx_mode_set_cmd β€” Set LIF's Rx mode command. that's it, that's the whole name, and it ate πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

struct ionic_rx_mode_set_cmd {
    u8 opcode;
    u8 rsvd;
    __le16 lif_index;
    __le16 rx_mode;
    __le16 rsvd2[29];
 };

like, look at her. she's got a whole little layout going on and every byte is exactly where it's supposed to be πŸ’… (note the slightly funky one-space indent before the closing brace β€” that's canon, don't come for me, I'm just the messenger 😭)


🌸 Members 🌸

  • opcode β€” the opcode, bestie. that's the whole vibe. it's an opcode. 🫢
  • rsvd β€” reserved byte(s). not yours. don't touch. mind your business ✨
  • lif_index β€” the LIF index. which LIF? this one. πŸŽ€
  • rx_mode β€” the Rx mode flags, and okay this is the main character of the whole struct, so let me give you the full lineup, no cap:
    • IONIC_RX_MODE_F_UNICAST β€” Accept known unicast packets
    • IONIC_RX_MODE_F_MULTICAST β€” Accept known multicast packets
    • IONIC_RX_MODE_F_BROADCAST β€” Accept broadcast packets
    • IONIC_RX_MODE_F_PROMISC β€” Accept any packets
    • IONIC_RX_MODE_F_ALLMULTI β€” Accept any multicast packets
    • IONIC_RX_MODE_F_RDMA_SNIFFER β€” Sniff RDMA packets

literally six flags, all accounted for, every one of them exactly as written πŸ’–

  • rsvd2 β€” reserved byte(s). it's __le16 rsvd2[29], so that's 29 of them, and again: reserved, hands off, not a group project πŸ™ˆ

πŸ”₯ SEE ALSO πŸ”₯

first up, the kernel file itself, this is the source of truth right here:

./drivers/net/ethernet/pensando/ionic/ionic_if.h

and then… the whole extended friend group 😭 (i stg these are all real, i didn't make a single one up, check the list, it's everybody):

  • struct ionic_admin_cmd(9)
  • struct ionic_admin_comp(9)
  • struct ionic_nop_cmd(9)
  • struct ionic_nop_comp(9)
  • struct ionic_dev_init_cmd(9)
  • struct ionic_dev_init_comp(9)
  • struct ionic_dev_reset_cmd(9)
  • struct ionic_dev_reset_comp(9)
  • struct ionic_dev_identify_cmd(9)
  • struct ionic_dev_identify_comp(9)
  • union ionic_drv_identity(9)
  • enum ionic_dev_capability(9)
  • union ionic_dev_identity(9)
  • struct ionic_lif_identify_cmd(9)
  • struct ionic_lif_identify_comp(9)
  • enum ionic_lif_capability(9)
  • enum ionic_logical_qtype(9)
  • enum ionic_q_feature(9)
  • enum ionic_rxq_feature(9)
  • enum ionic_txq_feature(9)
  • enum ionic_hwstamp_bits(9)
  • struct ionic_lif_logical_qtype(9)
  • enum ionic_lif_state(9)
  • union ionic_lif_config(9)
  • enum ionic_lif_rdma_cap_stats(9)
  • union ionic_lif_identity(9)
  • struct ionic_lif_init_cmd(9)
  • struct ionic_lif_init_comp(9)
  • struct ionic_q_identify_cmd(9)
  • struct ionic_q_identify_comp(9)
  • union ionic_q_identity(9)
  • struct ionic_q_init_cmd(9)
  • struct ionic_q_init_comp(9)
  • struct ionic_txq_desc(9)
  • struct ionic_txq_sg_elem(9)
  • struct ionic_txq_sg_desc(9)
  • struct ionic_txq_comp(9)
  • struct ionic_rxq_desc(9)
  • struct ionic_rxq_sg_elem(9)
  • struct ionic_rxq_sg_desc(9)
  • struct ionic_rxq_comp(9)
  • enum ionic_pkt_class(9)
  • struct ionic_q_control_cmd(9)
  • enum ionic_phy_type(9)
  • enum ionic_xcvr_state(9)
  • enum ionic_port_type(9)
  • enum ionic_port_admin_state(9)
  • enum ionic_port_oper_status(9)
  • enum ionic_port_fec_type(9)
  • enum ionic_port_pause_type(9)
  • enum ionic_port_loopback_mode(9)
  • struct ionic_xcvr_status(9)
  • union ionic_port_config(9)
  • struct ionic_port_status(9)
  • struct ionic_port_identify_cmd(9)
  • struct ionic_port_identify_comp(9)
  • struct ionic_port_init_cmd(9)
  • struct ionic_port_init_comp(9)
  • struct ionic_port_reset_cmd(9)
  • struct ionic_port_reset_comp(9)
  • enum ionic_stats_ctl_cmd(9)
  • enum ionic_txstamp_mode(9)
  • enum ionic_port_attr(9)
  • struct ionic_port_setattr_cmd(9)
  • struct ionic_port_setattr_comp(9)
  • struct ionic_port_getattr_cmd(9)
  • struct ionic_port_getattr_comp(9)
  • struct ionic_lif_status(9)
  • struct ionic_lif_reset_cmd(9)
  • enum ionic_dev_attr(9)
  • struct ionic_dev_setattr_cmd(9)
  • struct ionic_dev_setattr_comp(9)
  • struct ionic_dev_getattr_cmd(9)
  • struct ionic_dev_getattr_comp(9)
  • enum ionic_lif_attr(9)
  • struct ionic_lif_setattr_cmd(9)
  • struct ionic_lif_setattr_comp(9)
  • struct ionic_lif_getattr_cmd(9)
  • struct ionic_lif_getattr_comp(9)
  • struct ionic_lif_setphc_cmd(9)
  • struct ionic_rx_filter_add_cmd(9)
  • struct ionic_rx_filter_add_comp(9)
  • struct ionic_rx_filter_del_cmd(9)
  • enum ionic_vf_link_status(9)
  • struct ionic_vf_setattr_cmd(9)
  • struct ionic_vf_getattr_cmd(9)
  • struct ionic_vf_ctrl_cmd(9)
  • struct ionic_vf_ctrl_comp(9)
  • struct ionic_discover_cmb_cmd(9)
  • struct ionic_discover_cmb_comp(9)
  • union ionic_cmb_region(9)
  • union ionic_discover_cmb_identity(9)
  • struct ionic_qos_identify_cmd(9)
  • struct ionic_qos_identify_comp(9)
  • enum ionic_qos_class_type(9)
  • enum ionic_qos_sched_type(9)
  • union ionic_qos_config(9)
  • union ionic_qos_identity(9)
  • struct ionic_qos_init_cmd(9)
  • struct ionic_qos_reset_cmd(9)
  • struct ionic_qos_clear_stats_cmd(9)
  • struct ionic_fw_download_cmd(9)
  • enum ionic_fw_control_oper(9)
  • struct ionic_fw_control_cmd(9)
  • struct ionic_fw_control_comp(9)
  • struct ionic_rdma_reset_cmd(9)
  • struct ionic_rdma_queue_cmd(9)
  • struct ionic_notifyq_event(9)
  • struct ionic_link_change_event(9)
  • struct ionic_reset_event(9)
  • struct ionic_heartbeat_event(9)
  • struct ionic_log_event(9)
  • struct ionic_xcvr_event(9)
  • union ionic_port_identity(9)
  • struct ionic_port_info(9)
  • struct ionic_lif_info(9)
  • struct ionic_hwstamp_regs(9)
  • union ionic_dev_info_regs(9)
  • union ionic_dev_cmd_regs(9)
  • union ionic_dev_regs(9)
  • struct ionic_doorbell(9)

like… that's the entire extended universe, bestie. go read them all, i'll wait β˜•πŸ’œ


heads up babe: the only "reserved" stuff here is rsvd and rsvd2[29] β€” reserve fields exist for a reason and the reason is not for you to write your little values into them. respect the reserves 🫢✨

and that's the page!! sign-off time πŸŽ€ this gorgeous little number ships from the source ./drivers/net/ethernet/pensand... and it's dated October 2026 (yes, the future, she's ahead of her time πŸ’…), filed under the header struct ionic...mode_set_cmd(9). slay, bye, go set some Rx modes responsibly πŸ’–πŸŒˆπŸ¦‹

πŸ“¦ where this page comes from