STRUCT ETHNL_REQ_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct ethnl_req_info(9)

okay so bestie, welcome to the Kernel API Manual ✨ β€” this one's a struct page, and honestly? she's giving "quiet backstage queen of ethtool GET requests" energy πŸ‘‘. Let's get into it.


πŸŽ€ NAME πŸŽ€

struct ethnl_req_info β€” the base type for request information for GET requests. like, the blueprint blueprint. the foundational vibe. πŸ¦‹


✨ SYNOPSIS ✨

struct ethnl_req_info {
    struct net_device       *dev;
    netdevice_tracker dev_tracker;
    u32 flags;
    u32 phy_index;
 };

no cap, that's the whole struct. four little fields carrying the entire request-information situation πŸ’–


🌸 Members 🌸

  • dev β€” the network device this request is for (and yes it may be null, so like… check before you yeet it into a dereference, bestie 😭)
  • dev_tracker β€” the refcount tracker for the dev reference. she keeps the receipts so the refcounting stays iconic 🧾✨
  • flags β€” the request flags that are common to all request types. the universal language, fr fr 🫢
  • phy_index β€” the phy_device index connected to dev that this request is for. it can be 0 if the request doesn't target a phy at all, or if the dev's attached phy is the one being targeted πŸ“ (yes, both cases, no cap)

πŸ’œ Description πŸ’œ

So here's the tea β˜•: this is the common base for the request-specific structures that hold data from a parsed userspace request. Every one of those structures always embeds struct ethnl_req_info at zero offset β€” like, first thing in the struct, every single time. no exceptions, periodt πŸ’…


🌈 SEE ALSO 🌈

Kernel file ./net/ethtool/netlink.h, plus this whole friend group right here: ethnl_strz_size(9), ethnl_put_strz(9), ethnl_update_u32(9), ethnl_update_u8(9), ethnl_update_u8_u32(9), ethnl_update_bool32(9), ethnl_update_bool(9), ethnl_update_binary(9), ethnl_update_bitfield32(9), ethnl_reply_header_size(9), ethnl_req_get_phydev(9), struct ethnl_reply_data(9), struct ethnl_request_ops(9) ⭐πŸ”₯


ok that's the whole page, you ate that πŸ’€πŸ«Ά go forth and read your netlink headers with confidence, bestie.

this masterpiece lives in ./net/ethtool, stamped October 2026 β€” from the Kernel API Manual, with love πŸŽ€πŸ’– mwah

πŸ“¦ where this page comes from