i40e_check_fdir_input_set(9)
π
i40e_check_fdir_input_set(9) β Kernel API Manual π
okay so welcome to the Kernel API Manual page for i40e_check_fdir_input_set(9) β bestie, weβre doing a mask vibe check today and the vibes are very specific. π«Ά
π NAME π
i40e_check_fdir_input_set β checks that a given rx_flow_spec mask is valid. No cap, thatβs the whole name-and-purpose situation. β¨
πΈ SYNOPSIS πΈ
int i40e_check_fdir_input_set (struct i40e_vsi *vsi , struct ethtool_rx_flow_spec *fsp , struct i40e_rx_flow_userdef *userdef );
β¨ ARGUMENTS β¨
vsiβ pointer to the targeted VSI. Thatβs the vibe.fspβ pointer to Rx flow specification. Iconic pointer behavior.userdefβ userdefined data from flow specification.
π DESCRIPTION π
okay so picture this: this function ensures that a given ethtool_rx_flow_spec has a valid mask. Thereβs some support for partial matches, but with a few limitations β and they are real ones:
- First, hardware only supports masking by word boundary (2 bytes) and not per individual bit. π
- Second, hardware is limited to using one mask for a flow type and cannot use a separate mask for each filter.
To support these limitations, hereβs the tea: if we already have a configured filter for the specified type, this function enforces that new filters of the type match the configured input set. Otherwise, if we do not have a filter of the specified type, we allow the input set to be updated to match the desired filter. Slay. π
And to help ensure that administrators understand why filters werenβt displayed as supported, we print a diagnostic message displaying how the input set would change and warning to delete the preexisting filters if required. So yeah, itβs giving receipts. π§Ύβ¨
Returns 0 on successful input set match, and a negative return code on failure. Thatβs the important bit, bestie. π«‘
π SEE ALSO π
Kernel file ./drivers/net/ethernet/intel/i40e/i40e_ethtool.c struct i40e_stats(9), i40e_add_one_ethtool_stat(9), __i40e_add_ethtool_stats(9), i40e_add_ethtool_stats(9), i40e_add_queue_stats(9), __i40e_add_stat_strings(9), i40e_add_stat_strings(9), i40e_partition_setting_complaint(9), i40e_phy_type_to_ethtool(9), i40e_get_settings_link_up_fec(9), i40e_get_settings_link_up(9), i40e_get_settings_link_down(9), i40e_get_link_ksettings(9), i40e_speed_to_link_speed(9), i40e_set_link_ksettings(9), i40e_get_pauseparam(9), i40e_set_pauseparam(9), i40e_get_stats_count(9), i40e_get_veb_tc_stats(9), i40e_get_pfc_stats(9), i40e_get_ethtool_stats(9), i40e_get_stat_strings(9), i40e_set_wol(9), __i40e_get_coalesce(9), i40e_get_coalesce(9), i40e_get_per_queue_coalesce(9), i40e_set_itr_per_queue(9), __i40e_set_coalesce(9), i40e_set_coalesce(9), i40e_set_per_queue_coalesce(9), i40e_check_mask(9), i40e_parse_rx_flow_user_data(9), i40e_fill_rx_flow_user_data(9), i40e_get_ethtool_fdir_all(9), i40e_get_ethtool_fdir_entry(9), i40e_get_rx_ring_count(9), i40e_get_rxnfc(9), i40e_get_rss_hash_bits(9), i40e_update_ethtool_fdir_entry(9), i40e_prune_flex_pit_list(9), i40e_del_fdir_entry(9), i40e_unused_pit_index(9), i40e_find_flex_offset(9), i40e_add_flex_offset(9), __i40e_reprogram_flex_pit(9), i40e_reprogram_flex_pit(9), i40e_flow_str(9), i40e_pit_index_to_mask(9), i40e_print_input_set(9), i40e_match_fdir_filter(9), i40e_disallow_matching_filters(9), i40e_add_fdir_ethtool(9), i40e_set_rxnfc(9), i40e_max_channels(9), i40e_get_channels(9), i40e_set_channels(9), i40e_get_rxfh_key_size(9), i40e_get_rxfh_indir_size(9), i40e_get_rxfh(9), i40e_set_rxfh(9), i40e_get_priv_flags(9), i40e_set_priv_flags(9), i40e_get_module_info(9), i40e_get_module_eeprom(9).
mwah π thatβs the page! From the Kernel API Manual source tree, path ./drivers/net/ethernet/intel/i40e, dated October 2026, all about i40e_check_fdir_input_set(9). Stay masked and valid, bestie. ππ
π¦ 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