netpoll question
Hey all, I have netpoll question. How does netpoll work with MSI/X, NAPI, and nics that setup multiple RSS style receive queues for a single port? From what I can tell, if you're doing something like netdump using netpoll for IO, then you might never process incoming packets that get posted to the rx queues not associated with the main netdevice structure because netpoll only calls the poll() function for the main netdev struct. Not the dummy netdevs setup for multiple rx queues. Is this the case or am I confused? Thanks, Steve. - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: netpoll question
Steve Wise wrote: Hey all, I have netpoll question. How does netpoll work with MSI/X, NAPI, and nics that setup multiple RSS style receive queues for a single port? From what I can tell, if you're doing something like netdump using netpoll for IO, then you might never process incoming packets that get posted to the rx queues not associated with the main netdevice structure because netpoll only calls the poll() function for the main netdev struct. Not the dummy netdevs setup for multiple rx queues. Is this the case or am I confused? Thanks, Steve You are correct. Netpoll needs a bit of work, especially on the receive side, for multi-queue and some other possible problems related to taking locks when the system is frozen. If I get some time soon, I'm going to propose an overhaul to address some of these issues that show up in the kgdboe and netdump cases. Mark Huth - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: netpoll question
On Wed, 2007-03-28 at 16:28 -0700, Mark Huth wrote: Steve Wise wrote: Hey all, I have netpoll question. How does netpoll work with MSI/X, NAPI, and nics that setup multiple RSS style receive queues for a single port? From what I can tell, if you're doing something like netdump using netpoll for IO, then you might never process incoming packets that get posted to the rx queues not associated with the main netdevice structure because netpoll only calls the poll() function for the main netdev struct. Not the dummy netdevs setup for multiple rx queues. Is this the case or am I confused? Thanks, Steve You are correct. Netpoll needs a bit of work, especially on the receive side, for multi-queue and some other possible problems related to taking locks when the system is frozen. If I get some time soon, I'm going to propose an overhaul to address some of these issues that show up in the kgdboe and netdump cases. Mark Huth Hey Mark, What are your thoughts on how to implement this? Scrub every softnet_data queue-poll_list for every cpu? Or perhaps its better to have a new function ptr off the netdev that sez poll all rx queues? Steve. - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html