Linux NFS development
 help / color / mirror / Atom feed
From: Jeff Layton <jlayton@kernel.org>
To: "Mantas Mikulėnas" <grawity@gmail.com>,
	"Linux NFS Mailing List" <linux-nfs@vger.kernel.org>
Subject: Re: crossmnt exports partially broken in 7.2?
Date: Tue, 08 Sep 2026 12:57:40 -0400	[thread overview]
Message-ID: <2be2a594f73bc5f8a3b4514bf91980d5e3a76224.camel@kernel.org> (raw)
In-Reply-To: <920a1a2f-ada8-4a9d-93a7-31922a0079af@gmail.com>

On Mon, 2026-09-07 at 14:33 +0300, Mantas Mikulėnas wrote:
> Hello,
> 
> After upgrading an NFS server to kernel 7.2.2 (from 7.1.11), it is no longer
> possible to mount filesystems that should be handled by a "crossmnt" export.
> 
> For example, with /etc/exports being:
> 
>          /       *(rw,crossmnt,sec=krb5:krb5i:krb5p)
> 
> and all clients using NFSv4.2, it used to be possible to either mount 
> foo:/hdd2
> directly, or to descend into it through a "foo:/" mount.
> 
> With kernel 7.2 this no longer works -- after mounting foo:/hdd2 all 
> attempts
> to access it result in -ESTALE and the client's kernel complains about 
> "fileid
> changed":
> 
>          # mount horizon:/hdd1 /mnt
> 
>          # ls -l /mnt
>          ls: cannot open directory '/mnt': Stale file handle
> 
>          # dmesg | tail -2
>          [374226.359731] NFS: server horizon error: fileid changed
>                          fsid 0:150: expected fileid 0x2, got 0x100
> 
> Mounting "foo:/" on /mnt and trying to stat /mnt/hdd1 likewise returns 
> -ESTALE.
> (Or hangs for a while if it's a autofs mount on the server side, but I 
> switched
> from systemd.automount to regular non-autofs mounts for now.)
> 
> In this case the server's root filesystem is Btrfs, additional disks are 
> Ext4.
> Another system with the same problem has Btrfs for both the rootfs and 
> for the
> secondary disks.
> 
> Bisect points to commit 70b7e3526c53d9dd7caccdbeff5b0485640d8cf1 which 
> adds a
> netlink interface for nfs-utils' rpc.mountd to use. Indeed if I disable 
> netlink
> support there (adding "[mountd] no-netlink=1" to the server's /etc/nfs.conf)
> then crossmnt exports again start working as they should, even with 
> kernel 7.2.
> I've also tried kernel 7.3-rc1 with the same results.
> 
> Does this look like a kernel bug, or a nfs-utils (rpc.mountd) bug, or both?
> The server has nfs-utils 2.9.2.
> 

It's an nfs-utils bug (I think), though I'm still confirming that. I
had Claude draft some patches, but they're still quite raw. If you're
interested in testing them, they're in my nl-crossmnt branch on github:

    https://github.com/jtlayton/nfs-utils/tree/nl-crossmnt

Thanks for the bug report!
-- 
Jeff Layton <jlayton@kernel.org>

      reply	other threads:[~2026-09-08 16:57 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-07 11:33 crossmnt exports partially broken in 7.2? Mantas Mikulėnas
2026-09-08 16:57 ` Jeff Layton [this message]

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=2be2a594f73bc5f8a3b4514bf91980d5e3a76224.camel@kernel.org \
    --to=jlayton@kernel.org \
    --cc=grawity@gmail.com \
    --cc=linux-nfs@vger.kernel.org \
    /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