[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-devel] Fwd: Re: TCP errors going from 1.4.1 to 2.0.3

From: Bill Auerbach
Subject: Re: [lwip-devel] Fwd: Re: TCP errors going from 1.4.1 to 2.0.3
Date: Thu, 9 Nov 2017 14:00:33 +0000

Simon wrote:
>What do you mean by "not error free"? Invalid checksums in your TX packets or
>dup-acks + retransmissions (which would be errors in the RX path)?

Meaning dup acks and data retransmissions from lwIP back to the PC.

>When flushing caches, it's important that struct pbuf is cache-aligned, i.e. 
>the payload region does not interfere with the rest of the struct.

I didn't think this is the case flushing with write-through.  With 
write-through one is ensuring that the DMA is reading or writing to memory that 
won't be changed by cache, or will be reloaded from cache since cache is 
invalid after the write through flush.  If I'm wrong and after the 
write-through flush occurs but the system still would use cache for the 
contents, then this is a problem.  In which case I needed to do a write-through 
flush and an invalidate too.  It's hard to benchmark but it feels like leaving 
the cache available for program code and variables is better.

>As to copying data into application buffers: that part may be true, but before 
>you get the
>rx callback, lwIP already processes the headers. I'm not sure how performance 
>is  affected
>when this is done uncached.

I don't know either.  Of course having a stable error free connection was the 
driving goal.

Thanks for your comments.  If I get time to come up for air I'll revisit this - 
for one I'd like to see it work the way I initially thought it should be done.  
By the way, we are not using iniche or the altera tse drivers as they were 
pretty inefficient but modeled our code off of them.

Thank you,

reply via email to

[Prev in Thread] Current Thread [Next in Thread]