Re: socket splicing thread

2014-11-03 Thread David Gwynne
> On 4 Nov 2014, at 09:50, Alexander Bluhm wrote: > > On Thu, Oct 30, 2014 at 09:55:35PM -0400, Ted Unangst wrote: >> On Thu, Oct 30, 2014 at 22:10, Alexander Bluhm wrote: >>> + >>> + /* Avoid user land starvation. */ >>> + yield(); >> >> I think this is the responsibility of the taskq thre

Re: socket splicing thread

2014-11-03 Thread Alexander Bluhm
On Thu, Oct 30, 2014 at 09:55:35PM -0400, Ted Unangst wrote: > On Thu, Oct 30, 2014 at 22:10, Alexander Bluhm wrote: > > + > > + /* Avoid user land starvation. */ > > + yield(); > > I think this is the responsibility of the taskq thread, not the > individual task. I am not sure about this. W

Re: socket splicing thread

2014-11-02 Thread David Gwynne
> On 31 Oct 2014, at 22:37, Alexander Bluhm wrote: > > On Fri, Oct 31, 2014 at 02:50:00PM +1000, David Gwynne wrote: >> so without splicing, the payloads from multiple tcp packets (at least all of >> the ones in a single softnet run?) get bundled up into a buffer that >> userland reads and the

Re: socket splicing thread

2014-10-31 Thread Alexander Bluhm
On Fri, Oct 31, 2014 at 02:50:00PM +1000, David Gwynne wrote: > so without splicing, the payloads from multiple tcp packets (at least all of > the ones in a single softnet run?) get bundled up into a buffer that userland > reads and then writes out again in a single go. right? > > you're suggest

Re: socket splicing thread

2014-10-30 Thread David Gwynne
> On 31 Oct 2014, at 07:10, Alexander Bluhm wrote: > > Hi, > > Some performance measurements showed that socket splicing for TCP > can be made faster. The main slowdown was that tcp_output() got > called for every incomming packet. When copying through user-land > this cannot happen as the sc

Re: socket splicing thread

2014-10-30 Thread Ted Unangst
On Thu, Oct 30, 2014 at 22:10, Alexander Bluhm wrote: > + > + /* Avoid user land starvation. */ > + yield(); I think this is the responsibility of the taskq thread, not the individual task. Regarding the second pool diff, that looks very reasonable. Quite a savings for a feature many mach

socket splicing thread

2014-10-30 Thread Alexander Bluhm
Hi, Some performance measurements showed that socket splicing for TCP can be made faster. The main slowdown was that tcp_output() got called for every incomming packet. When copying through user-land this cannot happen as the scheduler gets involved. So my idea is to do the socket splicing for