Subject: Re: NFSv3
To: None <tls@rek.tjls.com>
From: Michael Richardson <mcr@sandelman.ottawa.on.ca>
List: tech-net
Date: 04/09/2007 14:01:01
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


Thank you for the replies.
I realize that NetBSD doesn't do ext3... I figured if the journal was
properly re-played, that I could transfer the disk and use it as ext2.
No, I don't intend to move it back to Linux... Likely I will jungle some
things around, and move it to UFS. It's a 300G drive full of movies + my
/distros mirrors.

I'm moving it to NFS so that I can re-install the "media" machine
multiple times with different setups/etc.

I was able to get it mounted with nfsvers=2,udp options.
Yes, I also serve UFS file systems regularly to all sorts of clients
from a NetBSD 3.0 host.  Generally, I'm happier with NetBSD as NFS
server than Linux.

It certainly looks like it's the getdirent() code.
The thread you pointed to suggests that it's glibc's fault?
It seems to me like it's a fault in the ext2 handling of readdirplus() call.

- From an ubuntu host:

root@franklin:~# uname -a
Linux franklin.sandelman.ca 2.6.16-xen #3 SMP Mon Sep 11 19:59:33 EDT 2006 i686 GNU/Linux
root@franklin:~# mount aragorn:/kesey /mnt
root@franklin:~# ls /mnt/.
ls: reading directory /mnt/.: Input/output error
root@franklin:~# umount /mnt

TCPDUMP inline below.

One of the partitions on the moved disk is junk, so I newfs'ed it:

aragorn# uname -a
NetBSD aragorn.sandelman.ca. 4.99.6 NetBSD 4.99.6 (XEN3_DOMU) #2: Sat Dec 30 11:17:44 EST 2006  mcr@istari.sandelman.ca:/corp/network/kernels/compile-current/XEN3_DOMU i386
aragorn# newfs /dev/xbd2g 
...
root@franklin:~# mount aragorn:/psalm /mnt
root@franklin:~# ls -lt /mnt 
total 0

No problems with UFS.
(tell me if I should be updating my kernel)

I guess LFS is really what I should be using for such large partitions,
though.

aragorn# tcpdump -v -v -s 1600 -i xennet0 -n -p host franklin.sandelman.ca.
tcpdump: listening on xennet0, link-type EN10MB (Ethernet), capture size 1600 bytes
17:26:24.531144 IP (tos 0x0, ttl  64, id 2, offset 0, flags [DF], length: 152) 205.150.200.226.1279213905 > 205.150.200.227.2049: 124 access fh 142,21/127947 001f
17:26:24.531229 IP (tos 0x0, ttl  64, id 48815, offset 0, flags [none], length: 148) 205.150.200.227.2049 > 205.150.200.226.1279213905: reply ok 120 access attr: DIR 775 ids 179/1002 sz 0x1000 nlink 21 rdev 2/5 fsid 0x8e15 fileid 0x2 a/m/ctime 1176137227.000000 1160500348.000000 1160500348.000000 c 001f
17:26:24.532391 IP (tos 0x0, ttl  64, id 3, offset 0, flags [DF], length: 148) 205.150.200.226.1295991121 > 205.150.200.227.2049: 120 getattr fh 142,21/127947
17:26:24.532439 IP (tos 0x0, ttl  64, id 48816, offset 0, flags [none], length: 140) 205.150.200.227.2049 > 205.150.200.226.1295991121: reply ok 112 getattr DIR 775 ids 179/1002 sz 0x1000

17:26:24.532603 IP (tos 0x0, ttl  64, id 4, offset 0, flags [DF], length: 172) 205.150.200.226.1312768337 > 205.150.200.227.2049: 144 readdirplus fh 142,21/127947 512 bytes @ 0x0 max 4096 verf 0000000000000000

17:26:24.532644 IP (tos 0x0, ttl  64, id 48817, offset 0, flags [none], length: 144) 205.150.200.227.2049 > 205.150.200.226.1312768337: reply ok 116 readdirplus ERROR: Input/output error POST: DIR 775 ids 179/1002 sz 0x1000 nlink 21 rdev 2/5 fsid 0x8e15 fileid 0x2 a/m/ctime 1176137227.000000 1160500348.000000 1160500348.000000

17:26:27.981252 IP (tos 0x0, ttl  64, id 0, offset 0, flags [DF], length: 84) 205.150.200.226.628 > 205.150.200.227.111: [udp sum ok] UDP, length: 56
17:26:27.981418 IP (tos 0x0, ttl  64, id 48824, offset 0, flags [none], length: 56) 205.150.200.227.111 > 205.150.200.226.628: [udp sum ok] UDP, length: 28
17:26:27.981683 IP (tos 0x0, ttl  64, id 0, offset 0, flags [DF], length: 128) 205.150.200.226.629 > 205.150.200.227.1020: [udp sum ok] UDP, length: 100
17:26:28.054081 IP (tos 0x0, ttl  64, id 48826, offset 0, flags [none], length: 52) 205.150.200.227.1020 > 205.150.200.226.629: [udp sum ok] UDP, length: 24
^C
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Finger me for keys

iQEVAwUBRhp/WICLcPvd0N1lAQJMawf/V8jTI1Vm27sb6x9cThQbZjxZrrTGQ6Od
RJ7VuL6ZytxHRIxf4xB29atL9XpnmrhcrHCtUuPfbHwG3WxR68qG2L5vnJ9XbUS3
g4w//YG3zCCmNeVD7MmO/INAYKr+4zc0jjd01/xKg1GM6C0ZCV/RbANerH7niKKw
TzmeDdurUI8Ec2VdqRP2YiKaq4aenS6LssGj6iHdFG1Jg3F1xmSMA+xalbK8vajy
QQcpEDZ3u4JcDo+FstZsCtoisSwcpewcJbqxcsqcftuBQ5B2rvuPujFQaYck33iS
lfkLcNRicwoMEG/t8veqKAe24wBSD/WyYbfUN9SGEawRsdOrLw+eog==
=g/0Z
-----END PGP SIGNATURE-----