NFSv4 boot support?

Sascha Hauer s.hauer at pengutronix.de
Fri Mar 8 02:23:34 PST 2024


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 |



More information about the barebox mailing list