public inbox for linux-nfs@vger.kernel.org
 help / color / mirror / Atom feed
* NFS4 Delegations: Unexpected behavior of readdir + child delegations
@ 2024-12-26  6:56 Roi Azarzar
  2024-12-26 22:08 ` Jeff Layton
  0 siblings, 1 reply; 2+ messages in thread
From: Roi Azarzar @ 2024-12-26  6:56 UTC (permalink / raw)
  To: linux-nfs; +Cc: Sagi Grimberg

[-- Attachment #1: Type: text/plain, Size: 1424 bytes --]

Hi,

I Tested the following against linux server:
1. client 1:
>
> >>> open1 = os.open("/mnt/roi_test/var/nfs/export_top/test_for_readdir_deleg/file1.txt",os.O_RDWR)
>
> >>> open2 = os.open("/mnt/roi_test/var/nfs/export_top/test_for_readdir_deleg/file2.txt",os.O_RDWR)
>
> >>> open3 = os.open("/mnt/roi_test/var/nfs/export_top/test_for_readdir_deleg/file3.txt",os.O_RDWR)


2. client 2:
[centos@rnd-nfs-c01 ~]$ stat
/mnt/roi_test/var/nfs/export_top/test_for_readdir_deleg/ File:
'/mnt/roi_test/var/nfs/export_top/test_for_readdir_deleg/' Size: 57
Blocks: 0 IO Block: 1048576 directory Device: 2fh/47d Inode: 33564533
Links: 2 Access: (0777/drwxrwxrwx) Uid: ( 1000/ centos) Gid: ( 1000/
centos) Access: 2024-12-25 21:51:41.103296943 +0200 Modify: 2024-12-25
21:51:40.160278216 +0200 Change: 2024-12-25 21:52:05.733786050 +0200
Birth: - [centos@rnd-nfs-c01 ~]$ ls -ltr
/mnt/roi_test/var/nfs/export_top/test_for_readdir_deleg/ total 0
-rwxrwxrwx 1 centos centos 0 Dec 25 21:51 file2.txt -rwxrwxrwx 1
centos centos 0 Dec 25 21:51 file1.txt
-rwxrwxrwx 1 centos centos 0 Dec 25 22:06 file3.txt

I noticed in the pcap that the server doesn't wait for all CB_GETATTR
responses for all childs before responding on READDIR, and for some
reason also sends CB_RECALL.


Any reason why to do so?

Linux version:
Linux protocol-linux-server 6.10.3-custom #1 SMP PREEMPT_DYNAMIC Mon
Aug 12 12:42:22 IDT 2024 x86_64 x86_64 x86_64 GNU/Linux

[-- Attachment #2: nfs4_readdir.pcap --]
[-- Type: application/octet-stream, Size: 1679416 bytes --]

[-- Attachment #3: image.png --]
[-- Type: image/png, Size: 253021 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: NFS4 Delegations: Unexpected behavior of readdir + child delegations
  2024-12-26  6:56 NFS4 Delegations: Unexpected behavior of readdir + child delegations Roi Azarzar
@ 2024-12-26 22:08 ` Jeff Layton
  0 siblings, 0 replies; 2+ messages in thread
From: Jeff Layton @ 2024-12-26 22:08 UTC (permalink / raw)
  To: Roi Azarzar, linux-nfs; +Cc: Sagi Grimberg

On Thu, 2024-12-26 at 08:56 +0200, Roi Azarzar wrote:
> Hi,
> 
> I Tested the following against linux server:
> 1. client 1:
> > 
> > > > > open1 = os.open("/mnt/roi_test/var/nfs/export_top/test_for_readdir_deleg/file1.txt",os.O_RDWR)
> > 
> > > > > open2 = os.open("/mnt/roi_test/var/nfs/export_top/test_for_readdir_deleg/file2.txt",os.O_RDWR)
> > 
> > > > > open3 = os.open("/mnt/roi_test/var/nfs/export_top/test_for_readdir_deleg/file3.txt",os.O_RDWR)
> 
> 
> 2. client 2:
> [centos@rnd-nfs-c01 ~]$ stat
> /mnt/roi_test/var/nfs/export_top/test_for_readdir_deleg/ File:
> '/mnt/roi_test/var/nfs/export_top/test_for_readdir_deleg/' Size: 57
> Blocks: 0 IO Block: 1048576 directory Device: 2fh/47d Inode: 33564533
> Links: 2 Access: (0777/drwxrwxrwx) Uid: ( 1000/ centos) Gid: ( 1000/
> centos) Access: 2024-12-25 21:51:41.103296943 +0200 Modify: 2024-12-25
> 21:51:40.160278216 +0200 Change: 2024-12-25 21:52:05.733786050 +0200
> Birth: - [centos@rnd-nfs-c01 ~]$ ls -ltr
> /mnt/roi_test/var/nfs/export_top/test_for_readdir_deleg/ total 0
> -rwxrwxrwx 1 centos centos 0 Dec 25 21:51 file2.txt -rwxrwxrwx 1
> centos centos 0 Dec 25 21:51 file1.txt
> -rwxrwxrwx 1 centos centos 0 Dec 25 22:06 file3.txt
> 
> I noticed in the pcap that the server doesn't wait for all CB_GETATTR
> responses for all childs before responding on READDIR, and for some
> reason also sends CB_RECALL.
> 
> 
> Any reason why to do so?
> 
> Linux version:
> Linux protocol-linux-server 6.10.3-custom #1 SMP PREEMPT_DYNAMIC Mon
> Aug 12 12:42:22 IDT 2024 x86_64 x86_64 x86_64 GNU/Linux

There are some known bugs in the server's CB_GETATTR implementation
that were fixed recently (bf92e5008b17f9, in particular). Are you able
to test a v6.13-rc client? Does it show similar behavior?

Thanks,
-- 
Jeff Layton <jlayton@kernel.org>

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-12-26 22:08 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-26  6:56 NFS4 Delegations: Unexpected behavior of readdir + child delegations Roi Azarzar
2024-12-26 22:08 ` Jeff Layton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox