| Summary: | Heavy NFS traffic over virtual interface causes instability, lockup under 4.2-STABLE | ||
|---|---|---|---|
| Product: | Base System | Reporter: | amesbury <amesbury> |
| Component: | i386 | Assignee: | freebsd-bugs (Nobody) <bugs> |
| Status: | Closed FIXED | ||
| Severity: | Affects Only Me | ||
| Priority: | Normal | ||
| Version: | 4.2-STABLE | ||
| Hardware: | Any | ||
| OS: | Any | ||
State Changed From-To: open->feedback Is this problem still present with more recent sources? State Changed From-To: feedback->closed The submitter no longer has the configuration on which the problem occurred [the reply was a while ago, but I mislaid it]. |
The system in question is has a NIC configured to answer to two IP addresses, named capstone (real if.) and mausoleum (virtual if.). nfsd is configured to export a number of directories via mausoleum's address. Capstone is configured to use AMD to mount NFS shares from mausoleum as if mausoleum were actually a remote host, not just a virtual interface. Here's what ifconfig looks like: amesbury@capstone:[~] % ifconfig xl0 xl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 192.168.100.1 netmask 0xffffff00 broadcast 192.168.100.255 inet 192.168.100.221 netmask 0xffffffff broadcast 192.168.100.221 atalk 58305.179 range 0-65534 phase 2 broadcast 0.255 ether 00:01:02:ca:98:91 media: autoselect (100baseTX <full-duplex>) status: active supported media: autoselect 100baseTX <full-duplex> 100baseTX 10baseT/UTP <full-duplex> 10baseT/UTP 100baseTX <hw-loopback> AMD is configured on capstone (the host's real name) to automatically mount directories from mausoleum (capstone's virtual interface) as if mausoleum were really a different machine. For example: amesbury@capstone:[~] % mount | grep home pid167@capstone:/home on /home (nfs) mausoleum:/export/mausoleum05/home/amesbury on /.amd_mnt/mausoleum/export/mausoleum05/home/amesbury (nfs) The system becomes unstable when very large files (>100MB) are transferred from a remote system into a directory mounted by capstone from mausoleum. This instability exhibits itself regardless of whether the transfer is initiated from capstone or from a remote system, and does not seem to be dependent on the transfer method used (both scp and FTP crashed the system). If the transfer is made to the NFS mount point (mounted via AMD), the system will crash. If the transfer is made directly to the real directory location, the transfer will succeed, regardless of whether the connection was made to capstone or masoleum. For example, if I 'cd' to '/home/amesbury' and, using FTP, download a very large file into the current directory, the file gets written over NFS to mausoleum (capstone's virtual interface). The system will become unstable (network services will freeze, commands like 'reboot' and 'ls' will simply hang), and eventually it will lock up completely. I've seen no syslog output, kernel panics, or anything else that looked like it might be of use in troubleshooting this further. Fix: Workaround: don't use NFS locally via a system's virtual interface? How-To-Repeat: We have very limited resources, so have been unable to try this on another machine. If I get an opportunity to, I'll post the results. Also, since capstone/mausoleum is a production, business-critical host, I'm reluctant to experiment with it further.