HomeFreeBSD

Bring polling(4) to new ifnet world order.

Description

Bring polling(4) to new ifnet world order.

o Since polling(4) is so much ifnet-oriented 'svn move' it:

kern/kern_poll.c -> net/if_polling.c

o Make the polling table not static, but dynamic and growing,

taking idea from the ifindex table. Now registering an interface
for polling can not fail.

o Create if_poll_t method in the if_ops. Drivers that support polling

should declare IFCAP_POLLING in their capabilities and impment
ifop_poll.

o Rename:

ether_poll_register -> if_poll_register
ether_poll_deregister -> if_poll_deregister
And make these functions private to the stack. Note that they are
voids now, due to not failing.

o The stack calls if_poll_register/if_poll_deregister on SIOCSIFCAP

and passes it down to driver. A driver needs to do only hardware
specific things to turn polling on or off.

Sponsored by: Netflix
Sponsored by: Nginx, Inc.

Details

Provenance
glebiusAuthored on
Parents
rS277398: Mechanically rename rest of s/struct ifnet */if_t/.
Branches
Unknown
Tags
Unknown

Event Timeline