AW: [NFS] fetching kernel via nfs

Johannes Kirchmair - SKIDATA Johannes.Kirchmair at skidata.com
Thu May 16 12:53:38 CEST 2024


Hello Sébastien,

missed that because was testing on v2024.4.
And did not think about looking at master branch because it seemed to be broken for quite a while.

Anyways, thanks for the quick response and for fixing this thing.

Best regards

-----Ursprüngliche Nachricht-----
Von: Sébastien Szymanski <sebastien.szymanski at armadeus.com>
Gesendet: Mittwoch, 15. Mai 2024 18:53
An: Johannes Kirchmair - SKIDATA <Johannes.Kirchmair at skidata.com>; u-boot at lists.denx.de
Cc: joe.hershberger at ni.com; rfried.dev at gmail.com
Betreff: Re: [NFS] fetching kernel via nfs

[Sie erhalten nicht häufig E-Mails von sebastien.szymanski at armadeus.com. Weitere Informationen, warum dies wichtig ist, finden Sie unter https://aka.ms/LearnAboutSenderIdentification ]

EXTERNAL EMAIL


Hello,

On 5/15/24 14:40, Johannes Kirchmair - SKIDATA wrote:
> Dear u-boot people,
>
> I encountered some problems trying to fetch the Linux kernel via nfs (v3).
> One problem was that the nfs file lookup always returned NFS3ERR_BADHANDLE.

I have fixed this. See:

https://source.denx.de/u-boot/u-boot/-/commit/d2986567b27dae764b19886bcda1d24b7c41d075

Regards,

> This is due to the following line in nfs_lookup_req() function (net/nfs.c):
>
>               len = (uint32_t *)p - (uint32_t *)&(data[0]);
>               rpc_req(PROG_NFS, NFS_LOOKUP, data, len);
>       } else {  /* NFS_V3 */
>               *p++ = htonl(NFS_FHSIZE);       /* Dir handle length */    <=====  this line
>               memcpy(p, dirfh, NFS_FHSIZE);
>               p += (NFS_FHSIZE / 4);
>               *p++ = htonl(fnamelen);
>
> In the NFS_V3 case we add the dir file handle  size to data and then the dir file handle.
> IUC, this is not correct here because dirfh includes already the size of the handle in the first 4 bytes.
> Feel free to correct me if I am wrong.
>
> As a result, if I remove the line "*p++ = htonl(NFS_FHSIZE);", it works fine.
>
> Don't have an in deps understanding of nfs, so I am not sure if this is the root problem here.
>
> Best regards Johannes

--
Sébastien Szymanski, Armadeus Systems
Software engineer



More information about the U-Boot mailing list