phy_update_stats(9)
π phy_update_stats(9) π
okay so real talk β this is a page from the Kernel API Manual, and it's about one tiny little function that goes and freshens up your PHY device's stats. yes bestie, that PHY. the ethernet one. let's get into it π«Ά
β¨ NAME β¨
phy_update_stats β update the statistics for your PHY device, but only if the driver's actually cool enough to support it π
πΈ SYNOPSIS πΈ
int phy_update_stats (struct phy_device *phydev );
π ARGUMENTS π
phydevβ a pointer to thestruct phy_devicestructure. like, the whole entire PHY device. she's the main character here π
π¦ DESCRIPTION π¦
so here's the vibe check: if the PHY driver hands over an update_stats callback, this function calls it and the stats get updated. slay. β¨
if not β no callback, no problem β it just returns 0. lowkey the most chill outcome ever, ngl.
π RETURN π
0on success π- or a negative error code if the callback fails π (that's the callback's fault, not ours, fr fr)
π₯ SEE ALSO π₯
ngl this list is long β the kernel file ./drivers/net/phy/phy.c really said "let me introduce you to everyone" π so here's the whole friend group, no cap, not one single name skipped:
phy_print_status(9)phy_get_rate_matching(9)phy_config_interrupt(9)phy_restart_aneg(9)phy_aneg_done(9)phy_supported_speeds(9)phy_check_valid(9)phy_sanitize_settings(9)phy_mii_ioctl(9)phy_do_ioctl(9)phy_do_ioctl_running(9)__phy_hwtstamp_get(9)__phy_hwtstamp_set(9)phy_queue_state_machine(9)phy_trigger_machine(9)phy_ethtool_get_strings(9)phy_ethtool_get_sset_count(9)phy_ethtool_get_stats(9)__phy_ethtool_get_phy_stats(9)__phy_ethtool_get_link_ext_stats(9)phy_ethtool_get_plca_cfg(9)plca_check_valid(9)phy_ethtool_set_plca_cfg(9)phy_ethtool_get_plca_status(9)phy_start_cable_test(9)phy_start_cable_test_tdr(9)phy_check_link_status(9)phy_inband_caps(9)phy_config_inband(9)_phy_start_aneg(9)phy_start_aneg(9)phy_speed_down(9)phy_speed_up(9)phy_start_machine(9)phy_stop_machine(9)phy_error(9)phy_write_barrier(9)phy_disable_interrupts(9)phy_interrupt(9)phy_enable_interrupts(9)phy_request_interrupt(9)phy_free_interrupt(9)phy_get_next_update_time(9)phy_state_machine(9)phy_stop(9)phy_start(9)phy_mac_interrupt(9)phy_loopback(9)phy_eee_tx_clock_stop_capable(9)phy_eee_rx_clock_stop(9)phy_init_eee(9)phy_get_eee_err(9)phy_ethtool_get_eee(9)phy_ethtool_set_eee_noneg(9)phy_ethtool_set_eee(9)phy_ethtool_set_wol(9)phy_ethtool_get_wol(9)phy_ethtool_nway_reset(9)
π§ bestie reminder: this one only does anything at all when the driver ships anupdate_statscallback. no callback =0and nothing happens. don't go looking for ghosts π»
π the cute little sign-off π
this whole thing lives in ./drivers/net/phy, and it's dated October 2026 β so yeah, future-coded manual page, we love to see it π iykyk β¨ππ¦
π¦ 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