From: Sascha Hauer <s.hauer@pengutronix.de>
To: Alessandro Rubini <rubini-list@gnudd.com>
Cc: barebox@lists.infradead.org
Subject: Re: NFSv4 boot support?
Date: Fri, 8 Mar 2024 11:23:34 +0100 [thread overview]
Message-ID: <ZernJsdi43QXwuVr@pengutronix.de> (raw)
In-Reply-To: <ZdSu671i2n4RQPoz@arcana.i.gnudd.com>
On Tue, Feb 20, 2024 at 02:53:47PM +0100, Alessandro Rubini wrote:
> >> This hasn't
> >> seen development activity in 5 years.
> >
> > Please see https://github.com/virtualsquare/picotcp
>
> But the TCP/IPV4 standard didn't change, either.
>
> >> lwIP on the other hand still sees active development.
> >
> > I agree with you. It looks like lwIP is more popular than picotcp.
>
> Sure. It's older and it has a loyal (or addicted) user base and
> commercial support. Or it just needs more commits because it'w worse and
> full of bugs.
>
> As far as I know, lwIP is horrible code, difficult to integrate and
> maintain, while picotcp is designed in the right way (although I admit
> I only looked at the former, about picotcp I only talked with the main
> author without looking at the code).
I have played around with lwIP and tried to integrate it into barebox.
Now that there are patches integrating lwIP into U-Boot that was quite
easy to do as the patches show the places we have to touch.
It was easy to get ping and dns working, at least when the host to be
pinged is in the local network. I wasn't able though to figure out how I
can get lwIP to route packets through a gateway other than setting my
(currently only) network interface as the default fallback interface
which is used whenever no route is found.
It turns out that in lwIP the ip, netmask and gateway are members of
struct netif. It has no idea of separating a link from a network
interface. Yes, we do the same in barebox as well, but I don't need
a dedicated network stack to have the same limitations we have in our
adhoc network stack.
In order to get an idea of how routing is supposed to work I had to look
around in the code. It's really a pain to see and I really don't want to
have to debug it. The combination of two spaces indentation and a huge
#ifdef density makes it really hard to read.
>From that experience I can understand your concerns about lwIP.
Sascha
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
next prev parent reply other threads:[~2024-03-08 10:24 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-31 21:03 Dan Shelton
2024-01-31 21:37 ` Ahmad Fatoum
2024-02-05 9:59 ` Antony Pavlov
2024-02-17 8:51 ` Ahmad Fatoum
2024-02-19 2:17 ` Dan Shelton
2024-02-20 14:17 ` Ahmad Fatoum
2024-02-20 15:28 ` Uwe Kleine-König
2024-02-19 21:43 ` Antony Pavlov
2024-02-20 13:53 ` Alessandro Rubini
2024-02-26 12:17 ` Ahmad Fatoum
2024-03-08 10:23 ` Sascha Hauer [this message]
2024-03-09 10:01 ` Alessandro Rubini
2024-02-28 7:26 ` Antony Pavlov
2024-02-28 9:20 ` Sascha Hauer
2024-02-28 11:50 ` Antony Pavlov
2024-02-28 12:27 ` Sascha Hauer
2024-02-05 18:41 ` Antony Pavlov
2024-02-06 4:40 ` Dan Shelton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZernJsdi43QXwuVr@pengutronix.de \
--to=s.hauer@pengutronix.de \
--cc=barebox@lists.infradead.org \
--cc=rubini-list@gnudd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox