STRUCT ETHTOOL_GFEATURES(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct ethtool_gfeatures (Kernel API Manual) πŸŽ€

okay bestie, pull up a chair because this is the glow-up page for struct ethtool_gfeatures β€” it's literally the command struct you use to go ask a network device "hey queen, what features do you actually have turned on rn?" πŸ‘‘


✨ NAME ✨

struct ethtool_gfeatures β€” the command that gets you the state of a device's features. no cap, that's the whole job. πŸ’–


🌸 SYNOPSIS 🌸

struct ethtool_gfeatures {
    __u32 cmd;
    __u32 size;
    struct ethtool_get_features_block features[];
 };

like, that's the whole fit. three members, zero drama. πŸ¦‹


🧚 Members (the cast πŸ’…)

  • cmd β€” the command number, and it is exactly ETHTOOL_GFEATURES. this is the "who dis" field. don't improvise here, it's not that kind of party. πŸ”₯
  • size β€” this one is a whole double agent, so listen up πŸ‘€. On entry, it's the number of elements in the features[] array. On return, it's the number of elements in features[] needed to hold all the features. same field, two personalities. main character energy fr fr. ⭐
  • features β€” the state of features. that's it, that's the payload. this is the part you actually came for. 🫢

πŸ’€ SEE ALSO πŸ’€

the kernel file lives at ./include/uapi/linux/ethtool.h β€” and the extended family is huge, so here's everyone, no one left out, iykyk:

  • struct ethtool_cmd(9)
  • struct ethtool_drvinfo(9)
  • struct ethtool_wolinfo(9)
  • struct ethtool_regs(9)
  • struct ethtool_eeprom(9)
  • struct ethtool_eee(9)
  • struct ethtool_modinfo(9)
  • struct ethtool_coalesce(9)
  • struct ethtool_ringparam(9)
  • struct ethtool_channels(9)
  • struct ethtool_pauseparam(9)
  • enum ethtool_stringset(9)
  • enum ethtool_mac_stats_src(9)
  • enum ethtool_module_power_mode_policy(9)
  • enum ethtool_module_power_mode(9)
  • enum ethtool_c33_pse_ext_state(9)
  • enum ethtool_c33_pse_ext_substate_mr_mps_valid(9)
  • enum ethtool_c33_pse_ext_substate_error_condition(9)
  • enum ethtool_c33_pse_ext_substate_mr_pse_enable(9)
  • enum ethtool_c33_pse_ext_substate_option_detect_ted(9)
  • enum ethtool_c33_pse_ext_substate_option_vport_lim(9)
  • enum ethtool_c33_pse_ext_substate_ovld_detected(9)
  • enum ethtool_c33_pse_ext_substate_power_not_available(9)
  • enum ethtool_c33_pse_ext_substate_short_detected(9)
  • enum ethtool_pse_types(9)
  • enum ethtool_c33_pse_admin_state(9)
  • enum ethtool_c33_pse_pw_d_status(9)
  • enum ethtool_podl_pse_admin_state(9)
  • enum ethtool_podl_pse_pw_d_status(9)
  • enum ethtool_mm_verify_status(9)
  • enum ethtool_module_fw_flash_status(9)
  • struct ethtool_gstrings(9)
  • struct ethtool_sset_info(9)
  • enum ethtool_test_flags(9)
  • struct ethtool_test(9)
  • struct ethtool_stats(9)
  • struct ethtool_perm_addr(9)
  • struct ethtool_tcpip4_spec(9)
  • struct ethtool_ah_espip4_spec(9)
  • struct ethtool_usrip4_spec(9)
  • struct ethtool_tcpip6_spec(9)
  • struct ethtool_ah_espip6_spec(9)
  • struct ethtool_usrip6_spec(9)
  • struct ethtool_flow_ext(9)
  • struct ethtool_rx_flow_spec(9)
  • struct ethtool_rxnfc(9)
  • struct ethtool_rxfh_indir(9)
  • struct ethtool_rxfh(9)
  • struct ethtool_rx_ntuple_flow_spec(9)
  • struct ethtool_rx_ntuple(9)
  • struct ethtool_dump(9)
  • struct ethtool_get_features_block(9)
  • struct ethtool_set_features_block(9)
  • struct ethtool_sfeatures(9)
  • struct ethtool_ts_info(9)
  • struct ethtool_per_queue_op(9)
  • struct ethtool_fecparam(9)
  • enum ethtool_fec_config_bits(9)
  • struct ethtool_link_settings(9)
  • enum phy_upstream(9)

like… that's a lot of cousins, but we love a big family reunion 🌈


okay that's the page!! mwah πŸ’‹ β€” this one's from ./include/uapi/linux, dated October 2026, and it ate, no crumbs. periodt. πŸ“πŸ‘‘

πŸ“¦ where this page comes from