Subject: kern/5655: NFS hangs
To: None <gnats-bugs@gnats.netbsd.org>
From: Lennart Augustsson <augustss@cs.chalmers.se>
List: netbsd-bugs
Date: 06/25/1998 21:12:36
>Number:         5655
>Category:       kern
>Synopsis:       NFS hangs
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    kern-bug-people (Kernel Bug People)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Jun 25 12:20:00 1998
>Last-Modified:
>Originator:     Lennart Augustsson
>Organization:
Chalmers University
>Release:        NetBSD-current 98-06-25
>Environment:
See below.

>Description:
	I have a NEC Versa 6050MX laptop that has worked perfectly before,
	but with the latest kernel I have great problems.  When transferring
	large files (a few megabytes) NFS invariably hangs.  There are
	several kinds:
	* The machine goes catatonic.  I have DDB in the kernel, but
	  it does not respond to CTL-ALT-ESC when it has entered this state.
	  I guess it is looping in some interrupt code.
	* It says "NFS server XXX is not responding" and never recovers
	  from this.  The NFS server is not down, of course, you can
	  talk to it with other programs.  (I've got a partial tcpdump
	  from when this happens.)  Processes hang wait on nfssrv when
	  this happens.
	* As above but without the message.
	I've tried both UDP and TCP mounts; same phenomena.
	I tried lowering the NFS blocksize, that made it worse.
	I think my ethernet is a little ratty, but that should not cause
	the machine to die!

	The machine is simply not useable with NFS.

>How-To-Repeat:
	Well, I can reproduce it easily.  I don't know if anyone else can.
>Fix:
	No clue.


#
#	HOBBES
#

include "arch/i386/conf/std.i386"

maxusers	16

options 	I586_CPU

# CPU-related options.
options 	VM86		# virtual 8086 emulation
options 	USER_LDT	# user-settable LDT; used by WINE
options 	DUMMY_NOPS

# Misc. i386-specific options
options 	XSERVER		# X server support in console drivers

# Standard system options

options 	UCONSOLE	# users can use TIOCCONS (for xconsole)
options 	INSECURE	# disable kernel security levels

options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
options 	NTP		# NTP phase/frequency locked loop

options 	KTRACE		# system call tracing via ktrace(1)

#options 	UVM		# Use UVM instead of Mach VM.
#options 	PMAP_NEW	# new pmap interface; requires UVM

options 	SYSVMSG		# System V-like message queues
options 	SYSVSEM		# System V-like semaphores
options 	SYSVSHM		# System V-like memory sharing
#options 	SHMMAXPGS=1024	# 1024 pages is the default

#options 	LKM		# loadable kernel modules

# Diagnostic/debugging support options
options 	DIAGNOSTIC	# cheap kernel consistency checks
#options 	DEBUG		# expensive debugging checks/support
#options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
options 	DDB		# in-kernel debugger
#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
#options 	KGDB		# remote debugger
#options 	"KGDB_DEVNAME=\"com\"",KGDBADDR=0x3f8,KGDBRATE=9600
#makeoptions	DEBUG="-g"	# compile full symbol table

# Compatibility options
options 	COMPAT_NOMID	# compatibility with 386BSD, BSDI, NetBSD 0.8,
#options 	COMPAT_09	# NetBSD 0.9,
#options 	COMPAT_10	# NetBSD 1.0,
options 	COMPAT_11	# NetBSD 1.1,
options 	COMPAT_12	# NetBSD 1.2,
options 	COMPAT_13	# NetBSD 1.3,
options 	COMPAT_43	# and 4.3BSD
options 	COMPAT_386BSD_MBRPART # recognize old partition ID

#options 	COMPAT_SVR4	# binary compatibility with SVR4
options 	COMPAT_IBCS2	# binary compatibility with SCO and ISC
options 	COMPAT_LINUX	# binary compatibility with Linux
options 	COMPAT_FREEBSD	# binary compatibility with FreeBSD

# Executable format options
options 	EXEC_ELF32	# 32-bit ELF executables (SVR4, Linux)

# File systems
file-system 	FFS		# UFS
file-system 	EXT2FS		# second extended file system (linux)
#file-system 	LFS		# log-structured file system
file-system 	MFS		# memory file system
file-system 	NFS		# Network File System client
file-system 	CD9660		# ISO 9660 + Rock Ridge file system
file-system 	MSDOSFS		# MS-DOS file system
file-system 	FDESC		# /dev/fd
file-system 	KERNFS		# /kern
file-system 	NULLFS		# loopback file system
#file-system 	PORTAL		# portal filesystem (still experimental)
file-system 	PROCFS		# /proc
#file-system 	UMAPFS		# NULLFS + uid and gid remapping
file-system 	UNION		# union file system

# File system options
#options 	QUOTA		# UFS quotas
#options 	FFS_EI		# FFS Endian Independant support
#options 	NFSSERVER	# Network File System server
options 	FIFO		# FIFOs; RECOMMENDED
#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
				# immutable) behave as system flags.

# Networking options
#options 	GATEWAY		# packet forwarding
options 	INET		# IP + ICMP + TCP + UDP
#options 	MROUTING	# IP multicast routing
#options 	NS		# XNS
#options 	NSIP		# XNS tunneling over IP
#options 	ISO,TPIP	# OSI
#options 	EON		# OSI tunneling over IP
#options 	CCITT,LLC,HDLC	# X.25
#options 	NETATALK	# AppleTalk networking protocols
#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
#options 	PPP_DEFLATE	# Deflate compression support for PPP
#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
#options 	PFIL_HOOKS	# pfil(9) packet filter hooks
#options 	IPFILTER_LOG	# ipmon(8) log support

# Compatibility with 4.2BSD implementation of TCP/IP.  Not recommended.
#options 	TCP_COMPAT_42

options 	PCIVERBOSE	# verbose PCI device autoconfig messages
#options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
options 	SCSIVERBOSE	# human readable SCSI error messages

# Kernel root file system and dump configuration.
config		netbsd	root on ? type ?

#
# Device configuration
#

mainbus0 at root

apm0	at mainbus0			# Advanced power management

# Basic Bus Support

# PCI bus support
pci*	at mainbus? bus ?

# PCI bridges
pchb*	at pci? dev ? function ?	# PCI-Host bridges
pcib*	at pci? dev ? function ?	# PCI-ISA bridges

# ISA bus support
isa*	at pcib?

options	PCIC_ISA_ALLOC_IOBASE=0x400
options	PCIC_ISA_ALLOC_IOSIZE=0x100
options	PCIC_ISA_INTR_ALLOC_MASK=0xffff

# PCMCIA bus support
pcmcia*	at pcic? controller ? socket ?

# ISA PCMCIA controllers
pcic0	at isa? port 0x3e0 iomem 0xd0000 iosiz 0x4000

# Coprocessor Support

# Math Coprocessor support
npx0	at isa? port 0xf0 irq 13	# x86 math coprocessor


# Console Devices

# ISA console.  You can only configure one of these!
pc0	at isa? port 0x60 irq 1		# pccons generic PC console driver
#vt0	at isa? port 0x60 irq 1		# PCVT console driver

pcppi0	at isa?
sysbeep0	at pcppi?

# Serial Devices

com0	at isa? port 0x3f8 irq 4	# Standard PC serial ports
com1	at isa? port 0x2f8 irq 3
com2	at isa? port 0x3e8 irq 9

# PCMCIA serial interfaces
com*	at pcmcia? function ?		# Modems and serial cards

# Parallel Printer Interfaces

# ISA parallel printer interfaces
lpt0	at isa? port 0x378 irq 7	# standard PC parallel ports


# IDE and Related Devices

# ISA IDE controllers
wdc0	at isa? port 0x1f0 irq 14	# ST506, ESDI, and IDE controllers

# IDE drives
wd0	at wdc? drive ?			# the drives themselves

# ATAPI bus support
atapibus* at wdc?

# ATAPI devices
cd0	at atapibus? drive ?		# ATAPI CD-ROM drives


# Miscellaneous mass storage devices

# ISA floppy
fdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
fd0	at fdc? drive 0			# the drives themselves

# Network Interfaces

# PCMCIA network interfaces
ep*	at pcmcia? function ?		# 3Com 3c589 and 3c562 Ethernet
mbe*	at pcmcia? function ?		# MB8696x based Ethernet
ne*	at pcmcia? function ?		# NE2000-compatible Ethernet
sm*	at pcmcia? function ?		# Megahertz Ethernet

# Audio Devices
sb0	at isa? port 0x220 irq 5 drq 1 drq2 5	# SoundBlaster

# Audio support
audio*	at sb?

# The spkr driver provides a simple tone interface to the built in speaker.
#spkr0	at pcppi?		# PC speaker


# Mice

# ISA busmice
pms0	at pc? irq 12		# PS/2 auxiliary port mouse
#pms0	at vt? irq 12		# PS/2 auxiliary port mouse


# Pull in optional local configuration
include	"arch/i386/conf/GENERIC.local"


# Pseudo-Devices

# disk/mass storage pseudo-devices
pseudo-device	vnd		4	# disk-like interface to files

# network pseudo-devices
pseudo-device	bpfilter	8	# Berkeley packet filter
#pseudo-device	ipfilter		# IP filter (firewall) and NAT
pseudo-device	loop			# network loopback
pseudo-device	ppp		1	# Point-to-Point Protocol
pseudo-device	sl		1	# Serial Line IP
pseudo-device	tun		2	# network tunneling over tty

# miscellaneous pseudo-devices
pseudo-device	pty		64	# pseudo-terminals

# rnd is EXPERIMENTAL at this point.
#pseudo-device	rnd			# /dev/random and in-kernel generator
#options 	RND_COM			# use "com" randomness as well (BROKEN)


NetBSD 1.3F (HOBBES) #0: Wed Jun 24 23:22:21 CEST 1998
    augustss@opus:/usr/src/sys/arch/i386/compile/HOBBES
cpu0: family 5 model 4 step 4
cpu0: Intel Pentium/MMX (586-class)
real mem  = 16384000
avail mem = 13676544
using 225 buffers containing 921600 bytes of memory
mainbus0 (root)
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o enabled, memory enabled
pchb0 at pci0 dev 0 function 0
pchb0: Intel 82437MX Mobile System Controller (MTSC) (rev. 0x02)
pcib0 at pci0 dev 1 function 0
pcib0: Intel 82371MX Mobile PCI I/O IDE Xcelerator (MPIIX) (rev. 0x03)
Chips and Technologies 65550 (VGA display, revision 0x45) at pci0 dev 2 function 0 not configured
Texas Instruments PCI1130 (CardBus bridge, revision 0x04) at pci0 dev 3 function 0 not configured
Texas Instruments PCI1130 (CardBus bridge, revision 0x04) at pci0 dev 3 function 1 not configured
isa0 at pcib0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
com2 at isa0 port 0x3e8-0x3ef irq 9: ns16550a, working fifo
lpt0 at isa0 port 0x378-0x37b irq 7
wdc0 at isa0 port 0x1f0-0x1f7 irq 14
atapibus0 at wdc0
cd0 at atapibus0 drive 1: <TOSHIBA CD-ROM XM-1502B, 1520701122, 3326> type 5 cdrom removable
wd0 at wdc0 drive 0: <IBM-DTNA-22160>
wd0: using 16-sector 16-bit pio transfers, lba mode
wd0: 2067MB, 4233600 sec, 512 bytes/sec
sb0 at isa0 port 0x220-0x237 irq 5 drq 1 drq2 5: dsp v4.13
audio0 at sb0
pcppi0 at isa0 port 0x61
sysbeep0 at pcppi0
npx0 at isa0 port 0xf0-0xff: using exception 16
pc0 at isa0 port 0x60-0x6f irq 1: color
pms0 at pc0 irq 12
pc0: console
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
pcic0 at isa0 port 0x3e0-0x3e1 iomem 0xd0000-0xd3fff: using irq 10
pcic0: controller 0 (Intel 82365SL Revision 1) has sockets A and B
pcmcia0 at pcic0 controller 0 socket 0
ep0 at pcmcia0 function 0 port 0x400-0x40f: 3Com 3C589 Ethernet
ep0: MAC address 00:60:97:4a:51:e2
ep0: 8KB byte-wide FIFO, 5:3 Rx:Tx split, utp/aui/bnc (default utp)
pcmcia1 at pcic0 controller 0 socket 1
apm0 at mainbus0: Power Management spec V1.1
apm0: battery life expectancy: 0%
apm0: A/C state: on
apm0: battery charge state: critical charging
biomask 4040 netmask 4040 ttymask 54c2
boot device: wd0
root on wd0a dumps on wd0b
root file system type: ffs
pcmcia0: card irq 11
>Audit-Trail:
>Unformatted: