[2.3.99-pre3-[67]] error copying to nfs mounted raid0 filesystem

From: Shane Shrybman (shane@zeke.yi.org)
Date: Thu Mar 23 2000 - 12:58:36 EST


When I try to copy a file to an nfs mounted raid0 filesystem I get this
error from cp

cp: ./junk: Input/output error
cp: ./junk: Input/output error

and only 200704 bytes are copied.

These errors appear in the logs on the nfs client side

Mar 23 12:25:03 mars kernel: RPC: garbage, exit EIO
Mar 23 12:25:03 mars kernel: RPC: garbage, retrying 37287
Mar 23 12:25:03 mars kernel: RPC: garbage, retrying 37288
Mar 23 12:25:03 mars kernel: RPC: garbage, retrying 37289
Mar 23 12:25:03 mars kernel: RPC: garbage, retrying 37290
Mar 23 12:25:03 mars kernel: RPC: garbage, retrying 37287
Mar 23 12:25:03 mars kernel: RPC: garbage, retrying 37288
Mar 23 12:25:03 mars kernel: RPC: garbage, retrying 37289
Mar 23 12:25:03 mars kernel: RPC: garbage, retrying 37290
Mar 23 12:25:03 mars kernel: RPC: garbage, exit EIO

The nfs server is an 200MMX x86 machine running kernel 2.2.15pre10 + 0.9
raid + pppox patches and has been up for ~26 days. It has
nfs-server-clients-2.2beta37-1 and nfs-server-2.2beta37-1 rpm packages
installed.

The nfs client machine is x86 with LVM enabled ( and appropriate LVM patch
from linux.msede.com applied), but no LVM volumes were involved in my
tests. It has knfsd-clients-1.4.7-7 knfsd-1.4.7-7 packges installed. I
have seen this with kernels 2.3.99pre3-6 and 7, the 2.3.~52 and
previous kernels seemed to be ok.

Reading/writing to non-raid nfs filesystems seems to be fine, reading from
the nfs raid0 is also ok. I tried this patch from Trond/Linus that I found
on LKML

--- fs/nfs/proc.c.orig Wed Mar 22 20:59:16 2000
+++ fs/nfs/proc.c Thu Mar 23 08:20:35 2000
@@ -114,7 +114,8 @@
        struct nfs_writeargs arg = { fhandle, offset, count, 1, 1,
                                        {{(void *) buffer, count}, {0,0},
{0,0}, {0,0},
                                        {0,0}, {0,0}, {0,0}, {0,0}}};
- struct nfs_writeres res = {fattr, 0, count};
+ struct nfs_writeverf verf;
+ struct nfs_writeres res = {fattr, &verf, count};
        int status;
 
        dprintk("NFS call write %d @ %ld\n", count, offset);

It didn't help.

Shane

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Mar 23 2000 - 21:00:38 EST