STRUCT VIRTCHNL2_RSS_KEY(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay bestie, welcome to struct virtchnl2_rss_key(9) β€” the Kernel API Manual page that's lowkey all about RSS key info πŸ’–βœ¨

πŸ’– NAME πŸ’–

struct virtchnl2_rss_key - RSS key info. periodt. πŸ’…

✨ SYNOPSIS ✨

struct virtchnl2_rss_key {
    __le32 vport_id;
    __le16 key_len;
    u8 pad;
    u8 key_flex[];
};

No cap, that's the whole struct layout 🫢

πŸ‘‘ Members πŸ‘‘

  • vport_id β€” Vport id. literally what it says πŸ’…
  • key_len β€” Length of RSS key.
  • pad β€” Padding. iconic little spacer πŸŽ€
  • key_flex β€” RSS hash key, packed bytes. PF/VF sends this message to get or set RSS key. Only supported if both PF/VF and CP drivers set the VIRTCHNL2_CAP_RSS bit during configuration negotiation.
okay bestie, that support condition is not optional β€” both PF/VF and CP drivers gotta set the VIRTCHNL2_CAP_RSS bit during configuration negotiation, or it's not supported πŸ’€

🌸 Description 🌸

Associated with VIRTCHNL2_OP_GET_RSS_KEY and VIRTCHNL2_OP_SET_RSS_KEY. That's the vibe check for this one ✨

πŸ¦‹ SEE ALSO πŸ¦‹

It lives with the kernel file ./include/linux/net/intel/virtchnl2.h, and the whole virtchnl2 squad pulled up:

  • enum virtchnl2_vport_type(9), enum virtchnl2_queue_model(9), enum virtchnl2_action_types(9), enum virtchnl2_txq_sched_mode(9), enum virtchnl2_rxq_flags(9), enum virtchnl2_mac_addr_type(9), struct virtchnl2_edt_caps(9), struct virtchnl2_version_info(9), struct virtchnl2_get_capabilities(9)
  • struct virtchnl2_queue_reg_chunk(9), struct virtchnl2_queue_reg_chunks(9), enum virtchnl2_vport_flags(9), struct virtchnl2_create_vport(9), struct virtchnl2_vport(9), struct virtchnl2_txq_info(9), struct virtchnl2_config_tx_queues(9), struct virtchnl2_rxq_info(9), struct virtchnl2_config_rx_queues(9)
  • struct virtchnl2_add_queues(9), struct virtchnl2_vector_chunk(9), struct virtchnl2_vector_chunks(9), struct virtchnl2_alloc_vectors(9), struct virtchnl2_rss_lut(9), struct virtchnl2_rss_hash(9), struct virtchnl2_sriov_vfs_info(9), struct virtchnl2_ptype(9), struct virtchnl2_get_ptype_info(9)
  • struct virtchnl2_vport_stats(9), struct virtchnl2_event(9), struct virtchnl2_queue_chunk(9), struct virtchnl2_del_ena_dis_queues(9), struct virtchnl2_queue_vector(9), struct virtchnl2_queue_vector_maps(9), struct virtchnl2_loopback(9), struct virtchnl2_mac_addr_list(9), struct virtchnl2_promisc_info(9)
  • enum virtchnl2_ptp_caps(9), struct virtchnl2_ptp_clk_reg_offsets(9), struct virtchnl2_ptp_cross_time_reg_offsets(9), struct virtchnl2_ptp_clk_adj_reg_offsets(9), struct virtchnl2_ptp_tx_tstamp_latch_caps(9), struct virtchnl2_ptp_get_vport_tx_tstamp_caps(9), struct virtchnl2_ptp_get_caps(9), struct virtchnl2_ptp_tx_tstamp_latch(9), struct virtchnl2_ptp_get_vport_tx_tstamp_latches(9)
  • struct virtchnl2_ptp_get_dev_clk_time(9), struct virtchnl2_ptp_get_cross_time(9), struct virtchnl2_ptp_set_dev_clk_time(9), struct virtchnl2_ptp_adj_dev_clk_fine(9), struct virtchnl2_ptp_adj_dev_clk_time(9), struct virtchnl2_mem_region(9), struct virtchnl2_get_lan_memory_regions(9), struct virtchnl2_proto_hdr(9), struct virtchnl2_proto_hdrs(9)
  • struct virtchnl2_rule_action(9), struct virtchnl2_rule_action_set(9), struct virtchnl2_flow_rule(9), struct virtchnl2_flow_rule_info(9), struct virtchnl2_flow_rule_add_del(9)

mwah πŸ’‹ β€” signed off from ./include/linux/net/intel, dated October 2026, on struct virtchnl2_rss_key(9). πŸ’–βœ¨

πŸ“¦ where this page comes from