[PATCH 0/5] net: Port NFS to LWIP
Andrew Goodbody
andrew.goodbody at linaro.org
Thu Dec 11 10:07:59 CET 2025
On 10/12/2025 12:55, Heinrich Schuchardt wrote:
> On 12/8/25 13:52, Andrew Goodbody wrote:
>> This series ports the existing NFS code so that it can be used with both
>> the legacy network code and also with LWIP.
>> Firstly some legacy network code, mostly variables, is moved into common
>> files so that it is accessible to LWIP.
>> Secondly the NFS code is refactored so that the parts that are not
>> specific to the network code can be shared with both network
>> implementations.
>> Finally the LWIP specific parts needed to interface the NFS shared code
>> to that network stack are added and enabled.
>>
>> Signed-off-by: Andrew Goodbody <andrew.goodbody at linaro.org>
>> ---
>> Andrew Goodbody (5):
>> net: move net_state to net-common
>> net: Move some variables to net-common files
>> net: nfs: Add licence header
>> net: nfs: Move most NFS code to common files
>> net: lwip: nfs: Port the NFS code to work with LWIP
>>
>> cmd/Kconfig | 28 +-
>> cmd/lwip/Makefile | 1 +
>> cmd/lwip/nfs.c | 11 +
>> include/net-common.h | 38 ++-
>> include/net-legacy.h | 26 --
>> include/net-lwip.h | 1 +
>> net/Makefile | 1 +
>> net/lwip/Makefile | 1 +
>> net/lwip/net-lwip.c | 5 -
>> net/lwip/nfs.c | 282 +++++++++++++++++
>> net/net-common.c | 21 ++
>> net/net.c | 23 --
>> net/nfs-common.c | 863 +++++++++++++++++++++++++++++++++++++++++
>> ++++++++++
>> net/nfs-common.h | 123 ++++++++
>> net/nfs.c | 849
>> +-------------------------------------------------
>> net/nfs.h | 59 ----
>> 16 files changed, 1368 insertions(+), 964 deletions(-)
>> ---
>> base-commit: 59f9fcc1f514762674ac07c13c2a85f7aace7250
>> change-id: 20251029-lwip_nfs-5385efca71bc
>>
>> Best regards,
>
> Thank you for looking into the LWIP port.
>
> We lack an NFS server in our Gitlab CI to run the NFS test.
>
> For HTTP we are running
> python3 -m http.server 80 --directory "${UBOOT_TRAVIS_BUILD_DIR}"
> in .gitlab-ci.yml.
>
> We should do something similar for NFS.
>
> There is a userspace NFS server available
> at https://github.com/unfs3/unfs3.
>
> This worked on my workstation:
>
> cat > exports << EOF
> /home/ubuntu
> EOF
> ./unfsd -e `pwd`/exports -u -n 4096 -m 4096
> sudo mount -t nfs \
> -o port=4096,mountport=4096,mountvers=3,nolock \
> localhost:/home/ubuntu /mnt
>
> Now in /mnt I could see the /home/ubuntu file-system.
Tom, is this something that can be added to the build containers?
> With LWIP we should think about enabling tcp for NFS.
As they say, patches are welcome, but it is unfortunately well outside
the scope of this work.
Andrew
> Best regards
>
> Heinrich
More information about the U-Boot
mailing list