2009-05-12 12:01:07

by Shehjar Tikoo

[permalink] [raw]
Subject: Different rsize/wsize for different NFS server software

Hi All

I've been running some tests using the linux NFS3 client using the
in-kernel NFS server and the unfs3 project.

I see that the client mounts the in-kernel server with default
[rw]size values of 32k and the unfs3 server using [rw]size values
of 512k. Where is this difference coming from, because I do not
specify these different [rw]size value on the command line for mount.

The client kernel is Debian's 2.6.18-5-amd64 and the server kernel
is Fedora's 2.6.18-92.1.6.el5.

Thanks
Shehjar


2009-05-12 13:45:05

by Shehjar Tikoo

[permalink] [raw]
Subject: Re: Different rsize/wsize for different NFS server software

Shehjar Tikoo wrote:
> Hi All
>
> I've been running some tests using the linux NFS3 client using the
> in-kernel NFS server and the unfs3 project.
>
> I see that the client mounts the in-kernel server with default
> [rw]size values of 32k and the unfs3 server using [rw]size values
> of 512k. Where is this difference coming from, because I do not
> specify these different [rw]size value on the command line for mount.
>

Through wireshark, I see that an FSINFO request is sent
by the client in order to get the wtpref and rtpref values and that is
what determines the wsize and rsize values at the client.

The next strange behaviour is that, with unfs3 as the server, I try
to mount using wsize set to 65536 with the command:

$ mount 192.168.1.201:/server/ -o wsize=65536 /test/mount

but the /proc/mounts entry still reports a 512k wsize value.

$ cat /proc/mounts
192.168.1.201:/server/ /test/mount nfs
rw,vers=3,rsize=524288,wsize=524288,hard,intr,proto=tcp,timeo=600,retrans=2,sec=sys,addr=192.168.1.201
0 0

and wireshark also shows client sending 512k requests.
mount.fs version is: mount.nfs (linux nfs-utils 1.1.4)

Is there any way to force the client to use a 64k wsize value?

Thanks
Shehjar

> The client kernel is Debian's 2.6.18-5-amd64 and the server kernel
> is Fedora's 2.6.18-92.1.6.el5.
>
> Thanks
> Shehjar
> --
> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>


2009-05-12 14:09:08

by Trond Myklebust

[permalink] [raw]
Subject: Re: Different rsize/wsize for different NFS server software

On Tue, 2009-05-12 at 19:17 +0530, Shehjar Tikoo wrote:
> Shehjar Tikoo wrote:
> > Hi All
> >
> > I've been running some tests using the linux NFS3 client using the
> > in-kernel NFS server and the unfs3 project.
> >
> > I see that the client mounts the in-kernel server with default
> > [rw]size values of 32k and the unfs3 server using [rw]size values
> > of 512k. Where is this difference coming from, because I do not
> > specify these different [rw]size value on the command line for mount.
> >
>
> Through wireshark, I see that an FSINFO request is sent
> by the client in order to get the wtpref and rtpref values and that is
> what determines the wsize and rsize values at the client.
>
> The next strange behaviour is that, with unfs3 as the server, I try
> to mount using wsize set to 65536 with the command:
>
> $ mount 192.168.1.201:/server/ -o wsize=65536 /test/mount
>
> but the /proc/mounts entry still reports a 512k wsize value.
>
> $ cat /proc/mounts
> 192.168.1.201:/server/ /test/mount nfs
> rw,vers=3,rsize=524288,wsize=524288,hard,intr,proto=tcp,timeo=600,retrans=2,sec=sys,addr=192.168.1.201
> 0 0
>
> and wireshark also shows client sending 512k requests.
> mount.fs version is: mount.nfs (linux nfs-utils 1.1.4)
>
> Is there any way to force the client to use a 64k wsize value?

You probably have the exact same filesystem still mounted somewhere else
on that client. A 2.6.18 kernel will, in those circumstances, share the
same super block with both mount points, and will therefore not permit
you to use different mount options.

This is something which has been fixed in more recent kernels.

Trond


2009-05-12 15:21:29

by Shehjar Tikoo

[permalink] [raw]
Subject: Re: Different rsize/wsize for different NFS server software

Trond Myklebust wrote:
> On Tue, 2009-05-12 at 19:17 +0530, Shehjar Tikoo wrote:
>> Shehjar Tikoo wrote:
...
...
...
>> Is there any way to force the client to use a 64k wsize value?
>
> You probably have the exact same filesystem still mounted somewhere else
> on that client. A 2.6.18 kernel will, in those circumstances, share the
> same super block with both mount points, and will therefore not permit
> you to use different mount options.

That was, in fact, the case.

Thanks
Shehjar

>
> This is something which has been fixed in more recent kernels.
>

> Trond
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>