kern/105476: mdconfig: allocating file-backed vnode over NFS panic

S.C.Sprong scsprong at gmail.com
Mon Nov 13 14:10:04 UTC 2006


>Number:         105476
>Category:       kern
>Synopsis:       mdconfig: allocating file-backed vnode over NFS panic
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Nov 13 14:10:01 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     S.C.Sprong
>Release:        FreeBSD 6.2-PRERELEASE i386
>Organization:
>Environment:
System: FreeBSD volte.student.utwente.nl 6.2-PRERELEASE FreeBSD 6.2-PRERELEASE #0: Sat Nov 11 12:40:18 CET 2006 root at volte.student.utwente.nl:/usr/obj/mnt/export/software/unix/FreeBSD/RELENG_6/src/sys/PULSE21 i386


	

FreeBSD RELENG_6 i386
world build date: source up to 20061005
kernel build date: several updates between 20061005 and 20061111 that all
exhibit the same behaviour.

Kernel config:

ident		"i686-PULSE-20061101"
options 	PQ_CACHESIZE=256
options 	INCLUDE_CONFIG_FILE     # Include this file in kernel
options 	ROOTDEVNAME=\"ufs:ad0s1a\"
options 	SCHED_4BSD
options 	COMPAT_43
options 	COMPAT_FREEBSD4
options 	COMPAT_FREEBSD5
options 	SYSVSHM
options 	SYSVSEM
options 	SYSVMSG
options 	KTRACE			#kernel tracing
options 	ALQ
options 	KTR_ALQ
options 	INVARIANTS
options 	INVARIANT_SUPPORT
options 	HWPMC_HOOKS		# Other necessary kernel hooks
options 	INET			#Internet communications protocols
options 	INET6			#IPv6 communications protocols
options 	IPSEC			#IP security
options 	IPSEC_FILTERGIF		#filter ipsec packets from a tunnel
options 	ALTQ
options 	ALTQ_CBQ	# Class Bases Queueing
options 	ALTQ_RED	# Random Early Detection
options 	ALTQ_RIO	# RED In/Out
options 	ALTQ_HFSC	# Hierarchical Packet Scheduler
options 	ALTQ_CDNR	# Traffic conditioner
options 	ALTQ_PRIQ	# Priority Queueing
options 	ALTQ_NOPCC	# Required for SMP build
options 	ALTQ_DEBUG
options 	NETGRAPH		# netgraph(4) system
options 	NETGRAPH_DEBUG		# enable extra debugging, this
device		ether			#Generic Ethernet
device		vlan			#VLAN support (needs miibus)
device		wlan			#802.11 support
device		wlan_wep		#802.11 WEP support
device		wlan_ccmp		#802.11 CCMP support
device		wlan_tkip		#802.11 TKIP support
device		wlan_xauth		#802.11 external authenticator support
device		wlan_acl		#802.11 MAC ACL support
device		sppp			#Generic Synchronous PPP
device		loop			#Network loopback device
device		bpf			#Berkeley packet filter
device		tun			#Tunnel driver (ppp(8), nos-tun(8))
device		sl			#Serial Line IP
device		gre			#IP over IP tunneling
device		if_bridge		#Bridge interface
device		carp			#Common Address Redundancy Protocol
device		ppp			#Point-to-point protocol
options 	PPP_BSDCOMP		#PPP BSD-compress support
options 	PPP_DEFLATE		#PPP zlib/deflate/gzip support
options 	PPP_FILTER		#enable bpf filtering (needs bpf)
device		gif			#IPv6 and IPv4 tunneling
options 	XBONEHACK
device		faith			#for IPv6 and IPv4 translation
device		stf			#6to4 IPv6 over IPv4 encapsulation
options 	MROUTING		# Multicast routing
options 	PIM			# Protocol Independent Multicast
options 	IPFILTER		#ipfilter support
options 	IPFILTER_LOG		#ipfilter logging
options 	IPFILTER_LOOKUP		#ipfilter pools
options 	IPFILTER_DEFAULT_BLOCK	#block all packets by default
options 	IPSTEALTH		#support for stealth forwarding
options 	ACCEPT_FILTER_DATA
options 	ACCEPT_FILTER_HTTP
options 	TCP_SIGNATURE		#include support for RFC 2385
options 	ZERO_COPY_SOCKETS
options 	FFS			#Fast filesystem
options 	SOFTUPDATES
options 	UFS_EXTATTR
options 	UFS_EXTATTR_AUTOSTART
options 	UFS_ACL
options 	UFS_DIRHASH
options 	MD_ROOT_SIZE=10
options 	MD_ROOT
device		random
device		mem
options 	_KPOSIX_PRIORITY_SCHEDULING
options 	HZ=1000
device		scbus		#base SCSI code
device		da		#SCSI direct access devices (aka disks)
device		pass		#CAM passthrough driver
device		pty		#Pseudo ttys
device		nmdm		#back-to-back tty devices
device		md		#Memory/malloc disk
device		snp		#Snoop device - to look at pty/vty/etc..
device		firmware	#firmware(9) support
options 	LIBICONV
device		kbdmux
device		vga
device		splash			# Splash screen and screen saver support
device		sc
options 	MAXCONS=8		# number of virtual consoles
options 	SC_NORM_ATTR=(FG_LIGHTGREEN|BG_BLACK)
options 	SC_NORM_REV_ATTR=(FG_BLACK|BG_GREEN)
options 	SC_KERNEL_CONS_ATTR=(FG_LIGHTRED|BG_BLACK)
options 	SC_KERNEL_CONS_REV_ATTR=(FG_BLACK|BG_TRED)
device		sym
device		ata
device		atadisk		# ATA disk drives
device		atapicam	# emulate ATAPI devices as SCSI ditto via CAM
options 	ATA_STATIC_ID
device		sio
device		miibus
device		fxp		# Intel EtherExpress PRO/100B (82557, 82558)
device		sis		# Silicon Integrated Systems SiS 900/SiS 7016
device		sound
device		smbus		# Bus support, required for smb below.
device		ichsmb
device		viapm
device		smb
device		iicbus		# Bus support, required for ic/iic/iicsmb below.
device		iicbb
device		ic
device		iic
device		iicsmb		# smb over i2c bridge
options 	DIRECTIO
machine		i386
device		apic			# I/O apic
cpu		I686_CPU		# aka Pentium Pro(tm)
options 	DEVICE_POLLING
device		isa		# Required by npx(4)
device		pci
device		agp
options 	VESA
device		npx
device		acpi
options		NDISAPI


Extra modules:

Id Refs Address    Size     Name
 1   35 0xc0400000 50ba84   kernel
 2    1 0xc090c000 1f314    linux.ko
 3    1 0xc092c000 b1b0     if_fxp.ko
 4    1 0xc0938000 87a0     if_sis.ko
 5    7 0xc0941000 23184    usb.ko
 6    1 0xc0965000 519c     ugen.ko
 7    1 0xc096b000 2d88     uhid.ko
 8    1 0xc096e000 7f64     ukbd.ko
 9    1 0xc0976000 3fd8     ums.ko
10    1 0xc097a000 74d4     umass.ko
11    1 0xc0982000 192c     accf_data.ko
12    1 0xc0984000 2384     accf_http.ko
13    4 0xc0987000 2be8     ng_bluetooth.ko
14    1 0xc098a000 9698     ng_ubt.ko
15    1 0xc4fdf000 12000    ng_hci.ko
16    1 0xc4ff1000 16000    ng_l2cap.ko
17    1 0xc5007000 1d000    ng_btsocket.ko
18    1 0xc5031000 5000     ng_socket.ko
19    1 0xc50d8000 31000    nfsclient.ko
20    1 0xc5113000 23000    nfsserver.ko



>Description:

Allocating a file-backed vnode, say a DVD ISO image you plan to mount with
mount_cd9960, that is located on a UDP NFS v3 mounted file system like this:

    mdconfig -a -t vnode -f <path>/<file>

immediately causes a kernel panic:

panic: mutex Giant not owned at <path>/src/sys/nfsclient/nfs_socket.c:557

KDB stack backtraces etc. available upon request.

	
>How-To-Repeat:

Repeat the action in the description. It always happens.

	
>Fix:
	I wish.
	


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list