ptp_header_u...e_correction(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– ptp_header_u...e_correction(9) πŸ’–

okay bestie so this is a page straight out of the Kernel API Manual and it's about a function with the longest name ever β€” ptp_header_update_correction. don't let the truncated title scare you, it's lowkey one little function doing one little job and it ate. let's get into it 🫢


✨ NAME ✨

ptp_header_update_correction β€” updates the correction field in a PTP header. that's it, that's the whole vibe πŸ’…


🌸 SYNOPSIS 🌸

void ptp_header_update_correction (struct sk_buff *skb , unsigned int
type , struct ptp_header *hdr , s64 correction );

like look at her, four args, returns nothing, absolutely no notes πŸ’€


πŸŽ€ ARGUMENTS πŸŽ€

  • skb β€” the packet buffer. the main character of every networking function fr.
  • type β€” what kind of packet this is (go check ptp_classify_raw, she'll tell you).
  • hdr β€” the PTP header itself, the thing we're editing ✨
  • correction β€” the shiny new correction value. s64, so it's got range, iykyk.

πŸ¦‹ DESCRIPTION πŸ¦‹

so what does this actually do? it updates the correction field of a PTP header, and it also updates the UDP checksum if UDP is used as transport. two for one, no cap πŸ”₯

and why does this function even exist? because of hardware. specifically hardware that's capable of one-step P2P but does not already modify the correction field of Pdelay_Req event messages on ingress. so we do it here instead. iconic of us tbh 😌

heads up bestie: read that carefully β€” the hardware does not already do it. that's the whole reason this function is here. don't skip that part πŸ™ˆ

⭐ SEE ALSO ⭐

the whole friend group, all in ./include/linux/ptp_classify.h. go say hi πŸ’œ


and that's the tea, bestie πŸ“ this page lives in ./include/linux and dates allll the way to October 2026 β€” so when you're reading it, just know ptp_header_u...e_correction(9) is out here slaying in the Kernel API Manual, correction field updated, checksum handled, periodt πŸ’…βœ¨πŸ§š

πŸ“¦ where this page comes from