ks8851_start_xmit_par(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– ks8851_start_xmit_par(9) πŸ’–

okay so bestie, welcome to the little page for ks8851_start_xmit_par β€” it's a Kernel API Manual entry and honestly? it's giving "small function, big job" energy. this is the transmit-packet girly for the ks8851 parallel driver, and she's got ✨exactly one job✨ but she does it well. let's get into it 🫢


✨ NAME ✨

ks8851_start_xmit_par β€” transmit packet πŸ’Œ

πŸ¦‹ SYNOPSIS πŸ¦‹

netdev_tx_t ks8851_start_xmit_par (struct sk_buff *skb , struct net_device *dev );

πŸŽ€ ARGUMENTS πŸŽ€

  • skb β€” the buffer to transmit, aka the actual packet bestie πŸ“ like, this is the thing we're sending out into the world.
  • dev β€” the device used to transmit the packet. the network device doing the actual work πŸ’…

🌸 DESCRIPTION 🌸

so the network layer calls this one to transmit the skb. what she does is queue the packet for the device and then schedule the necessary work to transmit the packet when it is free ⭐ like, no rushing, no drama, she just lines it up and makes sure it gets sent when the hardware's ready. main character scheduling energy tbh πŸ‘‘

and why do we do it this way?? two reasons, and they're both lowkey iconic:

  1. to firstly avoid sleeping with the network device locked πŸ˜΄πŸ”’ β€” sleeping while holding the lock is a big no-no, we do not do that here
  2. to secondly be able to round up more than one packet to transmit, which means we can try and avoid generating too many transmit done interrupts πŸ”₯ like, batching the packets means fewer interrupts, and fewer interrupts is a vibe check that we absolutely pass πŸ’―

πŸ’œ SEE ALSO πŸ’œ

if you liked this one, you're gonna be obsessed with her friends πŸ’… all of these are in the kernel file ./drivers/net/ethernet/micrel/ks8851_par.c:


ngl bestie the whole crew lives in ./drivers/net/ethernet/micrel and honestly, that's the friend group 🧚

mwah πŸ’‹ that's the whole page!! this cutie dropped in October 2026 courtesy of the fine people at ./drivers/net/ethernet/micrel, and yup, the page name on the way out is still ks8851_start_xmit_par(9) β€” no cap, that's a wrap πŸŒˆπŸ’–

πŸ“¦ where this page comes from