STRUCT VIRTCHNL2_FLOW_RULE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct virtchnl2_flow_rule(9) β€” the manual, but make it make sense πŸ’–

Okay bestie, this is the Kernel API Manual page for struct virtchnl2_flow_rule, and we are gonna get into it. It's literally the little struct that represents one flow steering rule. One rule. Main character energy, no cap. ✨


🌸 NAME 🌸

struct virtchnl2_flow_rule β€” represent one flow steering rule

Like, it's the blueprint for a single flow-steering rule. That's the whole vibe. πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

struct virtchnl2_flow_rule {
    struct virtchnl2_proto_hdrs proto_hdrs;
    struct virtchnl2_rule_action_set action_set;
    __le32 priority;
    u8 pad[8];
 };

Periodt. That's the struct. Don't touch the fields, they're iconic. πŸ’…


✨ Members ✨

  • proto_hdrs β€” array of protocol header buffers representing match criteria. Think of it as the "what are we even matching on" section of the outfit. 🧚
  • action_set β€” series of actions to be applied for given rule. This is the "and then what do we do about it" part. πŸ’–
  • priority β€” rule priority. Yes bestie, ordering matters. πŸ‘‘
  • pad β€” padding for future extensions. It's giving "reserved for the future" and honestly? Respect. 🌈

πŸ”₯ SEE ALSO πŸ”₯

Kernel file ./include/linux/net/intel/virtchnl2.h 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_rss_key(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_info(9), struct virtchnl2_flow_rule_add_del(9)

That's a whole friend group of virtchnl2 docs, and you should absolutely go say hi to all of them. 🫢


Okay that's the whole page! Source is ./include/linux/net/intel, and this version is dated October 2026 β€” so yeah, from the future, lowkey. Stay hydrated, read your structs, and slay your flow steering. πŸ’œπŸŽ€πŸ’…

πŸ“¦ where this page comes from