DragonFly commits List (threaded) for 2005-05
Re: cvs commit: src/sys/i386/i386 nexus.c src/sys/i386/include atomic.h src/sys/kern kern_poll.c lwkt_serialize.c src/sys/net if.c if_var.h rtsock.c src/sbin/ifconfig ifconfig.c src/sys/dev/netif/dc if_dc.c src/sys/dev/netif/em if_em.c if_em.h ...
On Tue, May 24, 2005 at 06:44:33PM -0700, Matthew Dillon wrote:
> Rewrite the polling code. Instead of trying to do fancy polling enablement
> from inside the IF interrupt itself, which creates a headache in the code,
This is OK.
> simply allow IFF_POLLING to be set and cleared via ifconfig. This greatly
This is *not* OK.
> The kernel polling code no longer randomly turns off the polling bit if an
> interface goes down or is reset.
It's the same as why we distinguish between IFF_RUNNING and IFF_UP.
The first is the internal state, the latter is an administrative decision.
There is no need to run the polling header for inactive interactive, but
even more important, there is no need to have them in the queue, since
the code has to loop through all the polling handlers.
> Remove IFCAP_POLLING, it serves no purpose.
It's the mechanism used to activate polling. Polling is an interface
capability, removing it at the very least removes the information if
polling is supported.