public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 net-next 0/4] net: low latency Ethernet device polling
@ 2013-05-21 14:26 Eliezer Tamir
  2013-05-21 14:26 ` [PATCH v4 net-next 1/4] net: implement support for low latency socket polling Eliezer Tamir
                   ` (4 more replies)
  0 siblings, 5 replies; 12+ messages in thread
From: Eliezer Tamir @ 2013-05-21 14:26 UTC (permalink / raw)
  To: Dave Miller
  Cc: linux-kernel, netdev, Jesse Brandeburg, Don Skidmore, e1000-devel,
	Willem de Bruijn, Andi Kleen, HPA, Or Gerlitz, Eilon Greenstien,
	Eliezer Tamir

Hello Dave,

I believe that I addressed the issues that were raised.
Please look and see if you have more comments.

Thank you all for your input.

To prevent the use of a stale napi pointer, I implemented a global id
that should be incremented whenever a napi is freed.
I used the free space in skb's second bitfield (7 bits) since I did not
want to increase the size of the structure. In an earlier attempt to do
this I chopped the global id to seven bits but in testing, this would
crash on the wrap-around. 
Now if the seven bits that are in the skb match the global id, 
we save the un-chopped id in the socket.
(This removes the module parameter and the limit on unloading.)


is this how you prefer the change log?

change log
v4
- removed separate config option for TCP busy-polling as suggested Eric Dumazet.
- added linux mib counter for packets received through the low latency path.
- re-allow module unloading, remove module param, use a global generation id
  instead to prevent the use of a stale napi pointer, as suggested
  by Eric Dumazet
- updated Documentation/networking/ip-sysctl.txt text

v3
- coding style changes suggested by Dave Miller

v2
- the sysctl knob is now in microseconds. The default value is now 0 (off).
- for now the code depends at configure time on CONFIG_I86_TSC 
- the napi reference in struct skb is now a union with the dma cookie
  since the former is only used on RX and the latter on TX,
  as suggested by Eric Dumazet.
- we do a better job at honoring non-blocking operations.
- removed busy-polling support for tcp_read_sock()
- remove dynamic disabling of GRO
- coding style fixes
- disallow unloading the device module after the feature has been used

Thanks,
Eliezer

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

end of thread, other threads:[~2013-05-23 11:02 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-05-21 14:26 [PATCH v4 net-next 0/4] net: low latency Ethernet device polling Eliezer Tamir
2013-05-21 14:26 ` [PATCH v4 net-next 1/4] net: implement support for low latency socket polling Eliezer Tamir
2013-05-21 14:35   ` Eric Dumazet
2013-05-21 17:23   ` Ben Hutchings
2013-05-21 17:28     ` Eliezer Tamir
2013-05-21 17:27   ` Ben Hutchings
2013-05-21 14:27 ` [PATCH v4 net-next 2/4] tcp: add TCP support for low latency receive poll Eliezer Tamir
2013-05-21 17:30   ` Ben Hutchings
2013-05-21 14:27 ` [PATCH v4 net-next 3/4] ixgbe: Add support for ndo_ll_poll Eliezer Tamir
2013-05-21 17:33   ` Ben Hutchings
2013-05-21 14:27 ` [PATCH v4 net-next 4/4] ixgbe: add extra stats " Eliezer Tamir
2013-05-23 11:00 ` [PATCH v4 net-next 0/4] net: low latency Ethernet device polling Alex Rosenbaum

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox