netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* New NAPI API: Need for netif_napi_remove() ?!
@ 2007-09-11  0:18 Kok, Auke
  2007-09-11  0:27 ` Kok, Auke
  0 siblings, 1 reply; 3+ messages in thread
From: Kok, Auke @ 2007-09-11  0:18 UTC (permalink / raw)
  To: David S. Miller, Stephen Hemminger, Waskiewicz Jr, Peter P,
	Jesse Brandeburg
  Cc: NetDev


David,

 From an old thread:

 > 5) Since, in the NETPOLL case, netif_napi_init() adds the NAPI struct
 >   to the per-device list I renamed it to netif_napi_add().  Currently
 >   no teardown is really necessary, anything that would need to be done
 >   would be driver internal, so I didn't create the corollary
 >   netif_napi_remove() for the time being.  Let's not add it unless it
 >   really becomes necessary.

while coding the NAPI API changes into the ixgbe driver, I notice that I'm in 
need for an implementation for netif_napi_remove(). The ixgbe driver itself 
already modifies it's polling routing on open() and close() based on whether it 
was able to acquire MSI-X vectors or not, and can thus logically change as the 
system suspends/resumes and new hardware is inserted that change the balance in 
the MSI-X vectors in the system. Or, even more bluntly, all MSI support is 
disabled and we want the driver to come up in legacy mode and use a completely 
different poll routine alltogether. We can't do this at probe time.

In any case I think we have a legitimate case for netif_napi_remove() to be 
implemented.

Auke

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-09-12 14:29 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-09-11  0:18 New NAPI API: Need for netif_napi_remove() ?! Kok, Auke
2007-09-11  0:27 ` Kok, Auke
2007-09-12 14:29   ` David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).