xfs
[Top] [All Lists]

nfs errors on exported xfs fs

To: linux-xfs@xxxxxxxxxxx
Subject: nfs errors on exported xfs fs
From: Jason <xfs@xxxxxxxxxxxx>
Date: Wed, 27 Jun 2001 17:04:52 -0600
Sender: owner-linux-xfs@xxxxxxxxxxx
I've been getting several different kinds of errors somewhat
consistently
on my nfs mounted xfs partition in my home network.  Here are the
vitals:

Network: 100Mbit switched

NFS server (parsec): 
 Alpha running Debian GNU/Linux
 parsec:/var/log# uname -a
Linux parsec 2.4.2-XFS #4 Mon May 21 17:28:46 MST 2001 alpha unknown
 Promise UDMA/33 PCI controller
 80G Maxtor IDE drive
 30G xfs partition (/gulf) exported via user-space Linux nfs server v2.2
 second 30G ext2 partition (/memoryhole) also exported
 linux-2.4-xfs-1.0.patch
 (yes, I know it's somewhat perverse to be using an IDE hd on a SCSI
  Alpha with a PC IDE controller to create an SGI partition and then
  export it via nfs...)

NFS client (erg):
 x86 linux (RH 6.2)

First noticed errors of the form:

somefile: No such file or directory

when untarring a 200MB tarball of my /usr/doc directory to the nfs
partition from the client (erg).  I've also gotten "Input/Output error"s
several times.

Untarring locally on parsec wasn't a problem, nor was untarring from erg
to the ext2 partition.

This script usually gives me errors, but not always.  Just now, it ran
fine on directories 0 and 1, but then:

...
1+0 records in
1+0 records out
1+0 records in
1+0 records out
1+0 records in
1+0 records out
dd: 2/0: No such file or directory
dd: 2/1: No such file or directory
dd: 2/2: No such file or directory
dd: 2/3: No such file or directory
dd: 2/4: No such file or directory
...

The script:
#!/usr/bin/perl

#Cause problems on my nfs'ed xfs partition -JH

for($i=0; $i<500; $i++) {
    system("mkdir $i");
    for($j=0; $j<100; $j++) {
        $size = int(rand(10000));
        system("dd if=/dev/zero of=$i/$j bs=$size count=1");
#       system("cp /tmp/qwerty $i/$j");
    }
}

The script runs fine when the cwd is in the exported ext2 partition,
and sometimes even works on the xfs partition.  The /usr/doc tarball
seems to always have problems.

Something screwy seems to be going on with writing to files just after
creating directories, but changing it to this also produces occasional
I/O
errors:

#!/usr/bin/perl

for($i=0; $i<500; $i++) {
        for($j=0; $j<100; $j++) {
                $size = int(rand(10000));
                system("dd if=/dev/zero of=$j bs=$size count=1");
        }
}

Interestingly, just now I ran that script and then did this:

[jason@erg] /gulf/test$ rm -rf *
rm: cannot remove `0': Input/output error

And now I get:
[jason@erg] /gulf/test$ ls -la
ls: 0: Input/output error
total 8
drwxrwsr-x    2 jason    nfsusers       14 Jun  8 02:34 .
drwxrwsr-x   21 root     nfsusers     8192 Jun  8 02:02 ..

Yet, from parsec locally:
parsec:/gulf/test# ls -la
total 8
drwxrwsr-x    2 jason    nfsusers       14 Jun  8 01:34 .
drwxrwsr-x   21 root     nfsusers     8192 Jun  8 01:02 ..
-rw-rw-r--    1 jason    nfsusers        0 Jun  8 01:33 0

So, something screwy is going on, restricted to nfs accesses of the xfs
partition.  No troubles locally, and none with the exported ext2 fs.
Oddly enough, nothing interesting in the logs of either machine, either.

                                        -J

<Prev in Thread] Current Thread [Next in Thread>