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>
prev parent 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