STRUCT IDPF_VPORT_USER_CONFIG_DATA(9)
π struct idpf_..._config_data(9) π
okay bestie, so this is a page straight out of the Kernel API Manual and it's genuinely iconic β it's the struct where a vport keeps all its user-defined configuration values. One of these per vport, no cap. π«Ά
β¨ NAME β¨
struct idpf_vport_user_config_data β the user defined configuration values for each vport. That's it, that's the whole vibe. π
πΈ SYNOPSIS πΈ
struct idpf_vport_user_config_data {
struct idpf_rss_data rss_data;
struct idpf_q_coalesce *q_coalesce;
u16 num_req_tx_qs;
u16 num_req_rx_qs;
u32 num_req_txq_desc;
u32 num_req_rxq_desc;
struct bpf_prog *xdp_prog;
unsigned long user_flags[BITS_TO_LONGS( __IDPF_USER_FLAGS_NBITS)];
struct list_head mac_filter_list;
u32 num_fsteer_fltrs;
struct list_head flow_steer_list;
};
like. look at her. she's holding SO much. π
π Members π
rss_dataβ head over tostruct idpf_rss_datafor the details, iykyk.q_coalesceβ an array of per queue coalescing data. one for each queue, she's not playing favorites. β¨num_req_tx_qsβ the number of TX queues the user requested through ethtool.num_req_rx_qsβ the number of RX queues the user requested through ethtool.num_req_txq_descβ the number of TX queue descriptors the user requested through ethtool.num_req_rxq_descβ the number of RX queue descriptors the user requested through ethtool.xdp_progβ the requested XDP program to install. π¦user_flagsβ the user toggled config flags. main character energy fr.mac_filter_listβ the list of MAC filters.num_fsteer_fltrsβ the number of flow steering filters.flow_steer_listβ the list of flow steering filters.
π Description π
So what's she for? She's used to restore configuration after a reset, because otherwise the vport will get wiped π. That's the whole reason she exists β the vport gets absolutely obliterated on reset, and this struct is the one holding the receipts so everything can come back. periodt. π
π SEE ALSO π
Kernel file ./drivers/net/ethernet/intel/idpf/idpf.h and honestly like, the entire extended universe of friends:
struct idpf_mac_filter(9)enum idpf_state(9)enum idpf_flags(9)enum idpf_cap_field(9)enum idpf_vport_state(9)struct idpf_netdev_priv(9)struct idpf_reset_reg(9)struct idpf_vport_max_q(9)struct idpf_reg_ops(9)struct idpf_dev_ops(9)enum idpf_vport_reset_cause(9)enum idpf_vport_flags(9)struct idpf_tstamp_stats(9)struct idpf_q_vec_rsrc(9)struct idpf_vport(9)enum idpf_user_flags(9)struct idpf_rss_data(9)struct idpf_q_coalesce(9)enum idpf_vport_config_flags(9)struct idpf_avail_queue_info(9)struct idpf_vector_info(9)struct idpf_vector_lifo(9)struct idpf_queue_id_reg_chunk(9)struct idpf_queue_id_reg_info(9)struct idpf_vport_config(9)struct idpf_adapter(9)idpf_is_queue_model_split(9)idpf_is_rdma_cap_ena(9)idpf_get_reserved_vecs(9)idpf_get_reserved_rdma_vecs(9)idpf_get_default_vports(9)idpf_get_max_vports(9)idpf_get_max_tx_bufs(9)idpf_get_min_tx_pkt_len(9)idpf_is_reset_detected(9)idpf_is_reset_in_prog(9)idpf_netdev_to_vport(9)idpf_netdev_to_adapter(9)idpf_is_feature_ena(9)idpf_get_max_tx_hdr_size(9)idpf_vport_ctrl_lock(9)idpf_vport_ctrl_unlock(9)
ok that's the whole page bestie, go be great with your vports π
and that's the tea β straight from ./drivers/net/ethernet/intel/idpf, dated October 2026, page struct idpf_..._config_data(9). mwah πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms