STRUCT KERNEL_ETHTOOL_RINGPARAM(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct kernel_ethtool_ringparam(9) β€” Kernel API Manual, bestie edition πŸŽ€

okay so picture this: you're deep in the Kernel API Manual, right, and you hit struct kernel_ethtool_ringparam and you're like "what is this even for" β€” no worries, I got you. This struct is literally the whole RX/TX ring configuration vibe. every knob you'd wanna twist on your rings lives here and she's iconic for it. ✨


🌸 NAME 🌸

struct kernel_ethtool_ringparam β€” RX/TX ring configuration, aka the blueprint for how your rings are set up πŸ¦‹


✨ SYNOPSIS ✨

so here's the shape of her, exactly as she is, no edits, periodt:

struct kernel_ethtool_ringparam {
    u32 rx_buf_len;
    u8 tcp_data_split;
    u8 tx_push;
    u8 rx_push;
    u32 cqe_size;
    u32 tx_push_buf_len;
    u32 tx_push_buf_max_len;
    u32 hds_thresh;
    u32 hds_thresh_max;
 };

πŸ’– Members πŸ’–

okay bestie, member-by-member, let's go:

  • rx_buf_len β€” the current length of the buffers chilling on the rx ring. that's it, that's the field. 🌈
  • tcp_data_split β€” scatter packet headers and data into separate buffers. splitting the fit, honestly. 🫢
  • tx_push β€” the flag of tx push mode. it's giving "push it, push it". πŸ”₯
  • rx_push β€” the flag of rx push mode. matching energy, we love a duo. πŸ’œ
  • cqe_size β€” size of the TX/RX completion queue event. sizes matter, iykyk. ⭐
  • tx_push_buf_len β€” size of the TX push buffer. how much room she's got. πŸŽ€
  • tx_push_buf_max_len β€” maximum allowed size of the TX push buffer. the ceiling, the limit, the "don't even try it". πŸ¦‹
  • hds_thresh β€” packet size threshold for header data split (HDS). crossing this line = split time. πŸ‘‘
  • hds_thresh_max β€” maximum supported setting for hds_threshold. the absolute most, no cap. πŸ’…

🧚 SEE ALSO 🧚

the whole friend group, fr fr β€” go say hi:


and that's the whole page, bestie β€” you ate that πŸ’…βœ¨

little sign-off for the girlies who read the fine print: this one lives in ./include/linux, and she's dated October 2026. mwah, go configure some rings πŸ“πŸ’œ

πŸ“¦ where this page comes from