mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Yan, Haixiao (CN)" <haixiao.yan.cn@windriver.com>
To: NeilBrown <neil@brown.name>
Cc: chuck.lever@oracle.com, stable@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: nfs mount failed with ipv6 addr
Date: Fri, 23 May 2025 17:00:40 +0800	[thread overview]
Message-ID: <ba4f9f5d-0688-4537-b721-7b2bda8ead8c@windriver.com> (raw)
In-Reply-To: <174798616079.608730.9700383239346135852@noble.neil.brown.name>


On 5/23/2025 3:42 PM, NeilBrown wrote:
> CAUTION: This email comes from a non Wind River email account!
> Do not click links or open attachments unless you recognize the sender and know the content is safe.
>
> On Fri, 23 May 2025, Yan, Haixiao (CN) wrote:
>> On 5/23/2025 7:21 AM, NeilBrown wrote:
>>> CAUTION: This email comes from a non Wind River email account!
>>> Do not click links or open attachments unless you recognize the sender and know the content is safe.
>>>
>>> On Thu, 22 May 2025, Haixiao Yan wrote:
>>>> On 2025/5/22 07:32, NeilBrown wrote:
>>>>> CAUTION: This email comes from a non Wind River email account!
>>>>> Do not click links or open attachments unless you recognize the sender and know the content is safe.
>>>>>
>>>>> On Thu, 22 May 2025, Yan, Haixiao (CN) wrote:
>>>>>> On linux-5.10.y, my testcase run failed:
>>>>>>
>>>>>> root@intel-x86-64:/opt/wr-test/testcases/userspace/nfs-utils_v6# mount -t nfs [::1]:/mnt/nfs_root /mnt/v6 -o nfsvers=3
>>>>>> mount.nfs: requested NFS version or transport protocol is not supported
>>>>>>
>>>>>> The first bad commit is:
>>>>>>
>>>>>> commit 7229200f68662660bb4d55f19247eaf3c79a4217
>>>>>> Author: Chuck Lever <chuck.lever@oracle.com>
>>>>>> Date:   Mon Jun 3 10:35:02 2024 -0400
>>>>>>
>>>>>>       nfsd: don't allow nfsd threads to be signalled.
>>>>>>
>>>>>>       [ Upstream commit 3903902401451b1cd9d797a8c79769eb26ac7fe5 ]
>>>>>>
>>>>>>
>>>>>> Here is the test log:
>>>>>>
>>>>>> root@intel-x86-64:/opt/wr-test/testcases/userspace/nfs-utils_v6# dd if=/dev/zero of=/tmp/nfs.img bs=1M count=100
>>>>>> 100+0 records in
>>>>>> 100+0 records out
>>>>>> 104857600 bytes (105 MB, 100 MiB) copied, 0.0386658 s, 2.7 GB/s
>>>>>> root@intel-x86-64:/opt/wr-test/testcases/userspace/nfs-utils_v6# mkfs /tmp/nfs.img
>>>>>> mke2fs 1.46.1 (9-Feb-2021)
>>>>>> Discarding device blocks:   1024/102400\b\b\b\b\b\b\b\b\b\b\b\b\b             \b\b\b\b\b\b\b\b\b\b\b\b\bdone
>>>>>> Creating filesystem with 102400 1k blocks and 25688 inodes
>>>>>> Filesystem UUID: 77e3bc56-46bb-4e5c-9619-d9a0c0999958
>>>>>> Superblock backups stored on blocks:
>>>>>>          8193, 24577, 40961, 57345, 73729
>>>>>>
>>>>>> Allocating group tables:  0/13\b\b\b\b\b     \b\b\b\b\bdone
>>>>>> Writing inode tables:  0/13\b\b\b\b\b     \b\b\b\b\bdone
>>>>>> Writing superblocks and filesystem accounting information:  0/13\b\b\b\b\b     \b\b\b\b\bdone
>>>>>> root@intel-x86-64:/opt/wr-test/testcases/userspace/nfs-utils_v6# mount /tmp/nfs.img /mnt
>>>>>>
>>>>>> root@intel-x86-64:/opt/wr-test/testcases/userspace/nfs-utils_v6# mkdir /mnt/nfs_root
>>>>>>
>>>>>> root@intel-x86-64:/opt/wr-test/testcases/userspace/nfs-utils_v6# touch /etc/exports
>>>>>>
>>>>>> root@intel-x86-64:/opt/wr-test/testcases/userspace/nfs-utils_v6# echo '/mnt/nfs_root *(insecure,rw,async,no_root_squash)' >> /etc/exports
>>>>>>
>>>>>> root@intel-x86-64:/opt/wr-test/testcases/userspace/nfs-utils_v6# /opt/wr-test/bin/svcwp.sh nfsserver restart
>>>>>> stopping mountd: done
>>>>>> stopping nfsd: ..........failed
>>>>>>      using signal 9:
>>>>>> ..........failed
>>>>> What does your "nfsserver" script do to try to stop/restart the nfsd?
>>>>> For a very long time the approved way to stop nfsd has been to run
>>>>> "rpc.nfsd 0".  My guess is that whatever script you are using still
>>>>> trying to send a signal to nfsd.  That no longer works.
>>>>>
>>>>> Unfortunately the various sysv-init scripts for starting/stopping nfsd
>>>>> have never been part of nfs-utils so we were not able to update them.
>>>>> nfs-utils *does* contain systemd unit files for sites which use systemd.
>>>>>
>>>>> If you have a non-systemd way of starting/stopping nfsd, we would be
>>>>> happy to make the relevant scripts part of nfs-utils so that we can
>>>>> ensure they stay up to date.
>>>> Actually, we use  service nfsserver restart  =>
>>>> /etc/init.d/nfsserver =>
>>>>
>>>> stop_nfsd(){
>>>>        # WARNING: this kills any process with the executable
>>>>        # name 'nfsd'.
>>>>        echo -n 'stopping nfsd: '
>>>>        start-stop-daemon --stop --quiet --signal 1 --name nfsd
>>>>        if delay_nfsd || {
>>>>            echo failed
>>>>            echo ' using signal 9: '
>>>>            start-stop-daemon --stop --quiet --signal 9 --name nfsd
>>>>            delay_nfsd
>>>>        }
>>>>        then
>>>>            echo done
>>>>        else
>>>>            echo failed
>>>>        fi
>>> The above should all be changed to
>>>      echo -n 'stopping nfsd: '
>>>      rpc.nfsd 0
>>>      echo done
>>>
>>> or similar.  What distro are you using?
>>>
>>> I can't see how this would affect your problem with IPv6 but it would be
>>> nice if you could confirm that IPv6 still doesn't work even after
>>> changing the above.
>>> What version of nfs-utils are you using?
>>> Are you should that the kernel has IPv6 enabled?  Does "ping6 ::1" work?
>>>
>>> NeilBrown
>>>
>> It works as expected.
>>
>> My distro is Yocto and nfs-utils 2.5.3.
> Thanks.  I've sent a patch to openembedded to change the nfsserver
> script.
>
> Can you make the change to nfsserver and let me know if it fixes your
> problem?

What's the version of your nfs-utils?

The patch failed to apply.

$ git am '[PATCH OE-core] nfs-utils don'\''t use signals to shut down 
nfs server. - '\''NeilBrown '\'' (neil@brown.name) - 2025-05-23 
1541.eml' Applying: nfs-utils: don't use signals to shut down nfs 
server. error: patch failed: 
meta/recipes-connectivity/nfs-utils/nfs-utils/nfsserver:89 error: 
meta/recipes-connectivity/nfs-utils/nfs-utils/nfsserver: patch does not 
apply Patch failed at 0001 nfs-utils: don't use signals to shut down nfs 
server. hint: Use 'git am --show-current-patch=diff' to see the failed 
patch When you have resolved this problem, run "git am --continue". If 
you prefer to skip this patch, run "git am --skip" instead. To restore 
the original branch and stop patching, run "git am --abort".

Thanks,

Haixiao

>
> Thanks,
> NeilBrown

  reply	other threads:[~2025-05-23  9:01 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-21 14:11 Yan, Haixiao (CN)
2025-05-21 15:03 ` Chuck Lever
2025-05-21 23:32 ` NeilBrown
2025-05-22  4:35   ` Haixiao Yan
2025-05-22 23:21     ` NeilBrown
2025-05-23  6:52       ` Yan, Haixiao (CN)
2025-05-23  7:42         ` NeilBrown
2025-05-23  9:00           ` Yan, Haixiao (CN) [this message]
2025-05-23 12:13             ` NeilBrown
2025-05-23 17:18               ` Yan, Haixiao (CN)

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=ba4f9f5d-0688-4537-b721-7b2bda8ead8c@windriver.com \
    --to=haixiao.yan.cn@windriver.com \
    --cc=chuck.lever@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=neil@brown.name \
    --cc=stable@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

all inboxes | Powered by JetHome®