[PATCH v12 00/13] net: tcp: improve tcp support in legacy stack
Mikhail Kshevetskiy
mikhail.kshevetskiy at iopsys.eu
Wed Nov 6 10:44:07 CET 2024
On 05.11.2024 19:02, Peter Robinson wrote:
> On Tue, 5 Nov 2024 at 15:15, Simon Glass <sjg at chromium.org> wrote:
>> Hi Peter,
>>
>> On Tue, 5 Nov 2024 at 06:10, Peter Robinson <pbrobinson at gmail.com> wrote:
>>> On Tue, 5 Nov 2024 at 13:03, Simon Glass <sjg at chromium.org> wrote:
>>>> Hi Tom,
>>>>
>>>> On Mon, 4 Nov 2024 at 16:32, Tom Rini <trini at konsulko.com> wrote:
>>>>> On Mon, Oct 28, 2024 at 05:31:30PM +0300, Mikhail Kshevetskiy wrote:
>>>>>
>>>>>> Legacy TCP stack is bad. Here are some of the known issues:
>>>>>> * tcp packet from other connection can break a current one
>>>>>> * tcp send sequence always starts from zero
>>>>>> * bad tcp options processing
>>>>>> * strange assumptions on packet size for selective acknowledge
>>>>>> * tcp interface assumes one of the two scenarios:
>>>>>> - data downloading from remote host to a board
>>>>>> - request-response exchange with a small packets
>>>>>> so it's not possible to upload large amount of data from the
>>>>>> board to remote host.
>>>>>> * wget test generate bad tcp stream, test should fail but it passes instead
>>>>>>
>>>>>> This series of patches fixes all of the above issues.
>>>>> I know Peter asked on the last one, but I want to ask as well. With lwIP
>>>>> merged, why do we want to add features to the old stack? I can see
>>>>> fixing issues, but not adding new functionality as well. Thanks.
>>>>>
>>>> Let's apply this. It has tests and the old stack is still used by a
>>>> lot of boards. At present lwip is only used on one. There is more work
>>>> to do on the new stack, including finishing off the sandbox
>>>> implementation.
>>> I agree with applying the fixes pieces, I do not agree with apply the
>>> HTTP server pieces. This series should actually be split into 3
>> But what is your objection?
>>
>> I would much rather just apply it ASAP. It has already gone through 12
>> versions, during which lwip has been prepared and applied.
> I highlighted my concerns about it all being together all the way back
> in v1, the fact that it should be 3 separate sets of patches.
>
> The fact that it's at v12 is irrelevant and should never be used as a
> reason just merge a patch set, it makes no senses.
>
>> The HTTP server is a useful feature and we should be able to use it to
>> test networking in U-Boot in a more self-contained and performant
>> manner.
> LWIP has a HTTP server which is widely tested, that is what should be
> used *if* we have to have one, I still have yet to see a useful
> usecase, and no CI is not because ultimately how useful is testing
> against ourselves, the fact is testing the HTTP client against apache
> or nginx is a better real world usecase because the reality is that
> U-Boot being the client and the server in that use case isn't really a
> real world use case.
We are using httpd server in u-boot for the emergency firmware upgrade
purposes. It have the following reasons:
* No need to install a special tools like tftp server on clients PC.
Only a browser is required.
* It much easy for support and client both -- the less specific
knowledge is required the easy recovery process.
Mikhail
More information about the U-Boot
mailing list