kern/122961: write operation on msdosfs file system causes panic

Dominic Fandrey kamikaze at bsdforen.de
Mon Apr 21 17:15:56 UTC 2008


gavin at FreeBSD.org wrote:
> To submitter: are you able to connect the USB stick to a machine
> running Windows and run chkdsk, to confirm that the filesystem
> is not invalid?  (Although we should ideally be resiliant to
> corrupt filesystems, if it still panics after a chkdisk then it's
> a more serious problem...)
> 

I have already checked the stick under windows. Chkdisk did not find any 
problems, but the panic still occurs.

The problem started after I updated RELENG_7 on my machine this weekend. The 
previous RELENG_7 build was ~2 months old.

> Also, can you give some detail about the system in question?  How big
> is the USB stick?  Are there any modifications to your custom kernel
> that may be related in amy way?
> 

The sticks is 8G large. I'll just post anything that might be useful:

This is my (compacted) kernel config:
cpu		HAMMER
ident		HP6510b
makeoptions	DEBUG=-g		# Build kernel with gdb(1) debug symbols
options 	SCHED_ULE
options 	PREEMPTION		# Enable kernel thread preemption
options 	INET			# InterNETworking
options 	INET6			# IPv6 communications protocols
options 	SCTP			# Stream Control Transmission Protocol
options 	FFS			# Berkeley Fast Filesystem
options 	SOFTUPDATES		# Enable FFS soft updates support
options 	UFS_ACL			# Support for access control lists
options 	UFS_DIRHASH		# Improve performance on big directories
options 	UFS_GJOURNAL		# Enable gjournal-based UFS journaling
options 	MD_ROOT			# MD is a potential root device
options 	NFSCLIENT		# Network Filesystem Client
options 	NFSSERVER		# Network Filesystem Server
options 	NFS_ROOT		# NFS usable as /, requires NFSCLIENT
options 	NTFS			# NT File System
options 	MSDOSFS			# MSDOS Filesystem
options 	CD9660			# ISO 9660 Filesystem
options 	PROCFS			# Process filesystem (requires PSEUDOFS)
options 	PSEUDOFS		# Pseudo-filesystem framework
options 	GEOM_PART_GPT		# GUID Partition Tables.
options 	GEOM_LABEL		# Provides labelization
options 	COMPAT_43TTY		# BSD 4.3 TTY compat [KEEP THIS!]
options 	COMPAT_IA32		# Compatible with i386 binaries
options 	COMPAT_FREEBSD6		# Compatible with FreeBSD6
options 	SCSI_DELAY=5000		# Delay (in ms) before probing SCSI
options 	KTRACE			# ktrace(1) support
options 	SYSVSHM			# SYSV-style shared memory
options 	SYSVMSG			# SYSV-style message queues
options 	SYSVSEM			# SYSV-style semaphores
options 	_KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options 	KBD_INSTALL_CDEV	# install a CDEV entry in /dev
options 	ADAPTIVE_GIANT		# Giant mutex is adaptive.
options 	STOP_NMI		# Stop CPUS using NMI instead of IPI
options 	AUDIT			# Security event auditing
options 	SMP			# Symmetric MultiProcessor Kernel
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
device		acpi
device		pci
options 	ATA_STATIC_ID	# Static device numbering
options 	AHC_REG_PRETTY_PRINT	# Print register bitfields in debug
					# output.  Adds ~128k to driver.
options 	AHD_REG_PRETTY_PRINT	# Print register bitfields in debug
					# output.  Adds ~215k to driver.
device		atkbdc		# AT keyboard controller
device		atkbd		# AT keyboard
device		psm		# PS/2 mouse
device		kbdmux		# keyboard multiplexer
device		vga		# VGA video card driver
device		sc
device		loop		# Network loopback
device		ether		# Ethernet support
device		pty		# Pseudo-ttys (telnet etc)
device		bpf		# Berkeley packet filter



This is my loader.conf:

# Boot loader.
autoboot_delay="2"
loader_logo="beastie"
# ATA controller drivers
atadisk_load="YES"
atapci_load="YES"
# Deactivate write cache
#hw.ata.wc=0
# USB drivers
usb_load="YES"
ubsa_load="YES"
umass_load="YES"
ums_load="YES"
ugen_load="YES"
# network driver
if_bge_load="YES"
# random device
random_load="YES"
# agp bus
agp_load="YES"
# CD/DVD driver
acd_load="YES"
atapicam_load="YES"
# Required to create memory disks.
geom_md_load="YES"
# Intel 3945ABG Wireless LAN IEEE 802.11 driver.
legal.intel_wpi.license_ack=1
if_wpi_load="YES"
wlan_load="YES"
wlan_amrr_load="YES"
firmware_load="YES"
wpifw_load="YES"
wlan_scan_sta_load="YES"
# Sound driver.
snd_hda_load="YES"
# Sound multiplexer.
hw.snd.maxautovchans="8"
# Synaptics support.
#hw.psm.synaptics_support="1"
# Linux compat
linux_load="YES"
# Sync PDA over USB.
uvisor_load="YES"


# kenv | grep smbios
smbios.bios.reldate="01/11/2008"
smbios.bios.vendor="Hewlett-Packard"
smbios.bios.version="68DDU Ver. F.10"
smbios.chassis.maker="Hewlett-Packard"
smbios.chassis.serial="CNU74808MK"
smbios.chassis.tag="CNU74808MK"
smbios.planar.maker="Hewlett-Packard"
smbios.planar.product="30C0"
smbios.planar.version="KBC Version 71.2E"
smbios.socket.enabled="1"
smbios.socket.populated="1"
smbios.system.maker="Hewlett-Packard"
smbios.system.product="HP Compaq 6510b (GR695EA#ABD)"
smbios.system.serial="CNU74808MK"
smbios.system.uuid="e85c3fb2-3f15-e011-08a0-6d990e4acd29"
smbios.system.version="F.10"


# pciconf -lv
hostb0 at pci0:0:0:0:	class=0x060000 card=0x30c0103c chip=0x2a008086 rev=0x0c 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = 'Mobile PM965/GM965/GL960 Express Processor to DRAM Controller'
     class      = bridge
     subclass   = HOST-PCI
vgapci0 at pci0:0:2:0:	class=0x030000 card=0x30c0103c chip=0x2a028086 rev=0x0c 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = 'Mobile 965 Express Integrated Graphics Controller'
     class      = display
     subclass   = VGA
vgapci1 at pci0:0:2:1:	class=0x038000 card=0x30c0103c chip=0x2a038086 rev=0x0c 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = 'Mobile 965 Express Integrated Graphics Controller'
     class      = display
uhci0 at pci0:0:26:0:	class=0x0c0300 card=0x30c0103c chip=0x28348086 rev=0x03 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = '82801H (ICH8 Family) USB UHCI'
     class      = serial bus
     subclass   = USB
uhci1 at pci0:0:26:1:	class=0x0c0300 card=0x30c0103c chip=0x28358086 rev=0x03 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = '82801H (ICH8 Family) USB UHCI'
     class      = serial bus
     subclass   = USB
ehci0 at pci0:0:26:7:	class=0x0c0320 card=0x30c0103c chip=0x283a8086 rev=0x03 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = '81EC1043 (?) ICH8 Enhanced USB2 Enhanced Host Controller'
     class      = serial bus
     subclass   = USB
pcm0 at pci0:0:27:0:	class=0x040300 card=0x30c0103c chip=0x284b8086 rev=0x03 hdr=0x00
     vendor     = 'Intel Corporation'
     device     = '82801H &SUBSYS_81EC1043&REV_02\3&11583659&0&D8'
     class      = multimedia
pcib1 at pci0:0:28:0:	class=0x060400 card=0x30c0103c chip=0x283f8086 rev=0x03 
hdr=0x01
     vendor     = 'Intel Corporation'
     device     = '82801H (ICH8 Family) PCIe Port 1'
     class      = bridge
     subclass   = PCI-PCI
pcib2 at pci0:0:28:1:	class=0x060400 card=0x30c0103c chip=0x28418086 rev=0x03 
hdr=0x01
     vendor     = 'Intel Corporation'
     device     = '82801H (ICH8 Family) PCIe Port 2'
     class      = bridge
     subclass   = PCI-PCI
pcib3 at pci0:0:28:2:	class=0x060400 card=0x30c0103c chip=0x28438086 rev=0x03 
hdr=0x01
     vendor     = 'Intel Corporation'
     device     = '82801H (ICH8 Family) PCIe Port 3'
     class      = bridge
     subclass   = PCI-PCI
pcib4 at pci0:0:28:4:	class=0x060400 card=0x30c0103c chip=0x28478086 rev=0x03 
hdr=0x01
     vendor     = 'Intel Corporation'
     device     = '82801H (ICH8 Family) PCIe Port 5'
     class      = bridge
     subclass   = PCI-PCI
uhci2 at pci0:0:29:0:	class=0x0c0300 card=0x30c0103c chip=0x28308086 rev=0x03 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = '82801H (ICH8 Family) USB UHCI'
     class      = serial bus
     subclass   = USB
uhci3 at pci0:0:29:1:	class=0x0c0300 card=0x30c0103c chip=0x28318086 rev=0x03 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = '82801H (ICH8 Family) USB UHCI'
     class      = serial bus
     subclass   = USB
uhci4 at pci0:0:29:2:	class=0x0c0300 card=0x30c0103c chip=0x28328086 rev=0x03 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = '82801H (ICH8 Family) USB UHCI'
     class      = serial bus
     subclass   = USB
ehci1 at pci0:0:29:7:	class=0x0c0320 card=0x30c0103c chip=0x28368086 rev=0x03 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = '82801H (ICH8 Family) USB2 EHCI'
     class      = serial bus
     subclass   = USB
pcib5 at pci0:0:30:0:	class=0x060401 card=0x30c0103c chip=0x24488086 rev=0xf3 
hdr=0x01
     vendor     = 'Intel Corporation'
     device     = '82801BAM/CAM/DBM (ICH2-M/3-M/4-M) Hub Interface to PCI Bridge'
     class      = bridge
     subclass   = PCI-PCI
isab0 at pci0:0:31:0:	class=0x060100 card=0x30c0103c chip=0x28158086 rev=0x03 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = 'ICH8M-E (ICH8 Family) LPC Interface Controller'
     class      = bridge
     subclass   = PCI-ISA
atapci0 at pci0:0:31:1:	class=0x01018a card=0x30c0103c chip=0x28508086 rev=0x03 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = '82801H (ICH8 Family) Ultra ATA Storage Controllers'
     class      = mass storage
     subclass   = ATA
atapci1 at pci0:0:31:2:	class=0x010601 card=0x30c0103c chip=0x28298086 rev=0x03 
hdr=0x00
     vendor     = 'Intel Corporation'
     device     = '82801 Intel(R) 82801HEM/HBM SATA AHCI Controller'
     class      = mass storage
wpi0 at pci0:16:0:0:	class=0x028000 card=0x135c103c chip=0x42228086 rev=0x02 hdr=0x00
     vendor     = 'Intel Corporation'
     device     = '10418086 Intel 3945ABG Wireless LAN controller'
     class      = network
bge0 at pci0:24:0:0:	class=0x020000 card=0x30c0103c chip=0x169314e4 rev=0x02 hdr=0x00
     vendor     = 'Broadcom Corporation'
     device     = 'BCM 5787A Ethernet Controller Broadcom Netlink Gigabit'
     class      = network
     subclass   = ethernet
none0 at pci0:2:4:0:	class=0x060700 card=0x30c0103c chip=0x04761180 rev=0xb6 hdr=0x02
     vendor     = 'Ricoh Company, Ltd.'
     device     = 'unknown Ricoh R/RL/5C476(II)'
     class      = bridge
     subclass   = PCI-CardBus
none1 at pci0:2:4:1:	class=0x0c0010 card=0x30c0103c chip=0x08321180 rev=0x02 hdr=0x00
     vendor     = 'Ricoh Company, Ltd.'
     device     = 'unknown IEEE 1394 (4 pin firewire) chip)'
     class      = serial bus
     subclass   = FireWire


# vmstat -i
interrupt                          total       rate
irq1: atkbd0                        6445          1
irq9: acpi0                         3757          0
irq12: psm0                          780          0
irq14: ata0                          113          0
irq16: pcm0 uhci0+                    11          0
irq17: wpi0 uhci1+                 27081          4
irq18: bge0 ehci0+                 31750          5
irq20: uhci2 ehci1                  6157          1
irq21: uhci3                      188839         34
cpu0: timer                     10901466       1998
cpu1: timer                     10893486       1997
Total                           22059885       4044


I'm using the following patch for mount.c:
http://www.freebsd.org/cgi/query-pr.cgi?prp=120784-5-diff&n=/patch-5.diff


# mount
/dev/ufs/2root on / (ufs, local)
devfs on /dev (devfs, local)
/dev/ufs/2tmp on /tmp (ufs, local, soft-updates)
/dev/ufs/2usr on /usr (ufs, NFS exported, local, soft-updates)
/dev/ufs/2var on /var (ufs, local, soft-updates)
pid874 at mobileKamikaze:/var/run/automounter.amd.mnt on 
/var/run/automounter.amd.mnt (nfs)
/dev/msdosfs/APRIL RYAN on 
/var/run/automounter.mnt/msdosfs/bb8a40b99a061c33a35f4e7275d1842a (msdosfs, 
local, noatime, noexec)


# df -h
Filesystem                                            Size    Used   Avail 
Capacity  Mounted on
/dev/ufs/2root                                        496M    362M     94M 
79%    /
devfs                                                 1.0K    1.0K      0B 
100%    /dev
/dev/ufs/2tmp                                         1.9G     44K    1.8G 
  0%    /tmp
/dev/ufs/2usr                                          38G     18G     17G 
52%    /usr
/dev/ufs/2var                                         3.9G    2.0G    1.5G 
58%    /var
/dev/msdosfs/APRIL RYAN                               7.5G    2.9G    4.7G 
38%    /var/run/automounter.mnt/msdosfs/bb8a40b99a061c33a35f4e7275d1842a


That's all I can think off right now.


More information about the freebsd-bugs mailing list