Bull GNU/Linux NFSv4 project

2.6.22-rc5-CITI_NFS4_ALL-1
Robustness regression tests

Introduction

Here are the last results for the Robustness and Performances testing  of the kernel and CITI patch: linux-2.6.22-rc5-CITI_NFS4_ALL-1

Tests performed

The following tools have been used:

Performances Results


We retrieve logically a degradation following the security flavor used. There is no longer the performance bug for krb5p (BUGZILLA#117) we got with 2.6.19-rc6-CITI_NFS4_ALL-1.
Nevertheless,
For any flavors but krb5p, we get a drastic degradation performance for 512 Mbytes files and over even having 2G RAM memory. We didn't see that in the previous 2.6.19-rc6-CITI_NFS4_ALL-1

Robustness Results

Remarks:
*When doing the following NFSV4 mount and umount sequence ,
*the first "umount" doesn't give error messages even when we are under the
mounting point
*but the second umount tells well unmounting is not possible


mount /mnt/nosec
cd /mnt/nosec
umount /mnt/nosec

*No messages here telling unmounting not possible
*The commands "mount" tells /mnt/nosec is no longer mounted
*but /proc/mounts still contains the mount.
*If we do a second:

umount /mnt/nosec

*we get normally

umount: /mnt/nosec: device is busy

*By no longer being under the mounted directory

cd /
umount /mnt/nosec

*We effectively unmount

Get an issue when running fsx.
Sometimes results are not good. See
BUGZILLA#143
We get:

truncating to largest ever: 0x3ffff
Size error: expected 0x1fe6 stat 0x2b000 seek 0x2b000
LOG DUMP (38414 total operations):
38415(15 mod 256): WRITE 0x134c7 thru 0x20c13 (0xd74d bytes)
38416(16 mod 256): WRITE 0x22379 thru 0x2f895 (0xd51d bytes) EXTEND
38417(17 mod 256): TRUNCATE UP from 0x2f896 to 0x3b913
38418(18 mod 256): WRITE 0xbba3 thru 0x1b0ca (0xf528 bytes)
38419(19 mod 256): MAPWRITE 0xd8cd thru 0xe939 (0x106d bytes)
38420(20 mod 256): READ 0x1203c thru 0x2064c (0xe611 bytes)
38421(21 mod 256): MAPREAD 0x194de thru 0x24595 (0xb0b8 bytes)
38422(22 mod 256): MAPWRITE 0x36ed7 thru 0x39bca (0x2cf4 bytes)
38423(23 mod 256): READ 0x2611b thru 0x33e13 (0xdcf9 bytes)

You can reproduce it by only running in a while true loop fsx-linux and iozone.

Kerberos Robustness Results

With any flavor krb5,krb5i,krb5p we got the following issue (described at BUGZILLA#143).
When running ./fsx-linux -N 50000 /mnt/krb5p/file

gets sometimes the following error:

truncating to largest ever: 0x3ffff
Size error: expected 0x1fe6 stat 0x2b000 seek 0x2b000
LOG DUMP (38414 total operations):
38415(15 mod 256): WRITE 0x134c7 thru 0x20c13 (0xd74d bytes)
38416(16 mod 256): WRITE 0x22379 thru 0x2f895 (0xd51d bytes) EXTEND
38417(17 mod 256): TRUNCATE UP from 0x2f896 to 0x3b913
38418(18 mod 256): WRITE 0xbba3 thru 0x1b0ca (0xf528 bytes)
38419(19 mod 256): MAPWRITE 0xd8cd thru 0xe939 (0x106d bytes)
38420(20 mod 256): READ 0x1203c thru 0x2064c (0xe611 bytes)
38421(21 mod 256): MAPREAD 0x194de thru 0x24595 (0xb0b8 bytes)
38422(22 mod 256): MAPWRITE 0x36ed7 thru 0x39bca (0x2cf4 bytes)
38423(23 mod 256): READ 0x2611b thru 0x33e13 (0xdcf9 bytes)

You can reproduce it by only running in a while true loop fsx-linux and iozone.

OOps when running the 60Hrs tests. See BUGZILLA#144.
With any flavor krb5,krb5i,krb5p we got the following issue (described at BUGZILLA#145).
*When doing the following NFSV4 mount and umount sequence ,
*the first "umount" doesn't give error messages even when we are under the
mounting point
*but the second umount tells well unmounting is not possible

mount /mnt/nosec
cd /mnt/nosec
umount /mnt/nosec

*No messages here telling unmounting not possible
*The commands "mount" tells /mnt/nosec is no longer mounted
*but /proc/mounts still contains the mount.
*If we do a second:

umount /mnt/nosec

*we get normally

umount: /mnt/nosec: device is busy

*By no longer being under the mounted directory

cd /
umount /mnt/nosec
*We effectively unmount






Software versions

Linux linux-2.6.22-rc5-CITI_NFS4_ALL-1
Client userland package util-linux-2.12
+ util-linux-2.12-CITI_NFS4_ALL-3.dif
Linux nfs-utils version nfs-utils-1.1.0
+nfs-utils-1.1.0-CITI_NFS4_ALL-1.dif
gssapi library
libgssapi-0.11
rpcsecgss
library
librpcsecgss-0.14
nfsidmap
library
libnfsidmap-0.19
acl
library
acl_2.2.29-1
+acl-2.2.29-CITI_NFS4_ALL-3
Linux TI-RPC 0.1.7

Hardware configuration

 Client

Server

Conclusion

Core linux-2.6.22-rc5-CITI_NFS4_ALL-1 functions should be considered as stable for the security flavors sys, krb5 ,krb5i and krb5p.
There is a good improvement about krb5p.
There is a good improvement about write performance with nevertheless a big performance degradation when using iozone with file size from 512Mbytes.

Some unexplained hangs can still happen when the machine is client and server in the same time.
There is also the mount issue
BUGZILLA#145 which can be troubling in many scripts.