netdev_lower_get_next(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

okay bestie, welcome to the netdev_lower_get_next(9) page from the Kernel API Manual πŸ’– β€” this one is literally about grabbing the next device from a lower neighbour list.

  • netdev_lower_get_next β€” Get the next device from the lower neighbour list. That’s the whole main-character mission, no cap. πŸ’…

πŸ¦‹ SYNOPSIS πŸ¦‹

here’s the exact signature, copy it like your fave screenshot:

void * netdev_lower_get_next (struct net_device *dev , struct list_head **iter );

πŸŽ€ ARGUMENTS πŸŽ€

  • dev β€” device. Yep, that’s the device you’re working with, bestie.
  • iter β€” list_head ** of the current position. It’s literally the lil pointer to where you are in the list walk. πŸ“

πŸ’œ DESCRIPTION πŸ’œ

So netdev_lower_get_next() gets the next netdev_adjacent from dev’s lower neighbour list, starting from the iter position. It’s giving β€œwalk the lower-neighbour list, one adjacent at a time” energy ✨.

🚨 okay but for real, bestie: the caller must hold the RTNL lock or its own locking that guarantees that the neighbour lower list will remain unchanged. Like, do not skip this vibe check β€” the list has to stay stable while you’re walking it. No cap. πŸ’€

πŸ”₯ SEE ALSO πŸ”₯

This whole squad lives in the Kernel file ./net/core/dev.c, and here’s every single (9) reference, no skips:


mwah πŸ’‹ that’s the whole page, bestie. This cutie comes from the ./net/core source, dated October 2026, and its manual name is netdev_lower_get_next(9) β€” periodt. 🫢

πŸ“¦ where this page comes from