Re: git: cc352a850f98 - main - nfs_clvfsops.c: Fix the non-VIMAGE build

From: Gleb Smirnoff <glebius_at_freebsd.org>
Date: Thu, 03 Sep 2026 20:31:40 UTC
On Tue, Sep 01, 2026 at 05:34:52PM +0000, Rick Macklem wrote:
R> The branch main has been updated by rmacklem:
R> 
R> URL: https://cgit.FreeBSD.org/src/commit/?id=cc352a850f9860eadf9558cf0c920a3655fae576
R> 
R> commit cc352a850f9860eadf9558cf0c920a3655fae576
R> Author:     Rick Macklem <rmacklem@FreeBSD.org>
R> AuthorDate: 2026-09-01 17:33:08 +0000
R> Commit:     Rick Macklem <rmacklem@FreeBSD.org>
R> CommitDate: 2026-09-01 17:33:08 +0000
R> 
R>     nfs_clvfsops.c: Fix the non-VIMAGE build
R>     
R>     The OFED code checks for a vnet argument, but it is
R>     is not defined.
R>     
R>     Reported by:    glebius
R>     MFC after:      3 months
R>     Fixes:  884ee8d6c9b4 ("nfscl: Add some glue for client side NFS over RDMA")
R> ---
R>  sys/fs/nfsclient/nfs_clvfsops.c | 4 ++++
R>  1 file changed, 4 insertions(+)
R> 
R> diff --git a/sys/fs/nfsclient/nfs_clvfsops.c b/sys/fs/nfsclient/nfs_clvfsops.c
R> index afe954c2a69d..f336e320b04c 100644
R> --- a/sys/fs/nfsclient/nfs_clvfsops.c
R> +++ b/sys/fs/nfsclient/nfs_clvfsops.c
R> @@ -1544,7 +1544,11 @@ nfs_mount(struct mount *mp)
R>  			error = EINVAL;
R>  			goto out;
R>  		}
R> +#ifdef VIMAGE
R>  		error = rdma_check_route(vnet0, nam, NFSV4_CBSLOTS);
R> +#else
R> +		error = rdma_check_route(NULL, nam, NFSV4_CBSLOTS);
R> +#endif

We might want a define for vnet0, so that this commit could have been
a one liner.  In net/vnet.h under !VIMAGE case:

#define	vnet0	NULL

On the other hand, any module that wants to use vnet0, or check if
curvnet is vnet0 or not, is very likely doing something wrong :)

I haven't looked at rdma, but passing vnet as function parameter
seems wrong.

The above was rhetorical grumbling, not a request for any action :)

-- 
Gleb Smirnoff