Paul Durrant wrote:
> Yunsong (Roamer) Lu wrote:
>> LRO is not yet supported in the stack, and there will be some other 
>> issues than the b_cont check in IP.
>>
>> But experimentally LRO implementation in driver works after fixing the 
>> check against maximum 2-block of message. You may apply this *hack* to 
>> try your LRO implementation if you can compile IP module for your 
>> Solaris version.
>>
> 
> Roamer,
> 
> There's also the mblk_pull_len issue (there is a bug for this but I 
> can't find the number right now). At the moment it needs to be set to 
> zero to avoid unnecessary copying in the stack.

mblk_pull_len is set to 64 by default and it's used in kstrgetmsg():
http://cvs.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/os/streamio.c

The comments state the introduction of it is to decrease the per mblk
overhead in dealing with a streams message consists of many short
messages.

Could you be more detailed of the issue with LRO?

--Lucy

> BTW, I've tested my LRO implementation with netperf on my driver. It 
> does not affect performance of a single stream test (I can get 10G line 
> rate regardless) but the CPU idle % on the netserver end (on the 
> interrupted CPU) goes from ~5% to ~50% i.e. LRO saves nearly half a core 
> of CPU time. Understandably then, it's quite important to getting good 
> performance on multi-stream tests.
> Any word on when we may see these stack issues fixed?
> 
>    Paul
> _______________________________________________
> networking-discuss mailing list
> [email protected]
> 

_______________________________________________
networking-discuss mailing list
[email protected]

Reply via email to