updating from r231158 to 234465: mounting from ufs:/dev/ad4s1a failed with error 19

Anton Shterenlikht mexas at bristol.ac.uk
Thu Apr 26 22:42:23 UTC 2012


I was updating from r231158 to 234465
(amd64 laptop Compaq 6715s),
and I think I must've messed someting
up in the kernel config. Now I get
build error, panic of a loader error,
depending on which kernel I build.

*********************************************************

If I build GENERIC, I get:

(transcribed by hand)

mountroot: waiting for device /dev/ad4s1a
Mounting from ufs:/dev/ad4s1a failed with error 19.

mountroot> ?

 List of GEOM managed disk devices:

  cd0

mountroot>


The device is certainly correct in r231158:

BUZI> df
Filesystem  512-blocks     Used    Avail Capacity  Mounted on
/dev/ad4s1a  101554068 46474368 46955376    50%    /
devfs                2        2        0   100%    /dev
BUZI> 

*********************************************************

If I add

 device atadisk

to GENERIC, then I get this linking error:

linking kernel.debug
ata-disk.o: In function `ad_init':
/usr/src/sys/dev/ata/ata-disk.c:397: undefined reference to `ata_setmode'
/usr/src/sys/dev/ata/ata-disk.c:405: undefined reference to `ata_wc'
/usr/src/sys/dev/ata/ata-disk.c:406: undefined reference to `ata_controlcmd'
/usr/src/sys/dev/ata/ata-disk.c:408: undefined reference to `ata_controlcmd'
/usr/src/sys/dev/ata/ata-disk.c:401: undefined reference to `ata_controlcmd'
/usr/src/sys/dev/ata/ata-disk.c:415: undefined reference to `ata_controlcmd'
ata-disk.o: In function `ad_shutdown':
/usr/src/sys/dev/ata/ata-disk.c:204: undefined reference to `ata_controlcmd'
ata-disk.o: In function `ad_detach':
/usr/src/sys/dev/ata/ata-disk.c:190: undefined reference to `ata_fail_requests'
ata-disk.o: In function `ad_dump':
/usr/src/sys/dev/ata/ata-disk.c:370: undefined reference to `ata_drop_requests'
/usr/src/sys/dev/ata/ata-disk.c:378: undefined reference to `ata_controlcmd'
ata-disk.o: In function `ad_attach':
/usr/src/sys/dev/ata/ata-disk.c:115: undefined reference to `ata_setmax'
ata-disk.o: In function `ad_describe':
/usr/src/sys/dev/ata/ata-disk.c:555: undefined reference to `ata_satarev2str'
/usr/src/sys/dev/ata/ata-disk.c:555: undefined reference to `ata_unit2str'
ata-disk.o: In function `ad_set_geometry':
/usr/src/sys/dev/ata/ata-disk.c:492: undefined reference to `ata_queue_request'
/usr/src/sys/dev/ata/ata-disk.c:511: undefined reference to `ata_queue_request'
/usr/src/sys/dev/ata/ata-disk.c:516: undefined reference to `ata_getparam'
ata-disk.o: In function `ad_spindown':
/usr/src/sys/dev/ata/ata-disk.c:250: undefined reference to `ata_queue_request'
ata-disk.o: In function `ad_ioctl':
/usr/src/sys/dev/ata/ata-disk.c:354: undefined reference to `ata_device_ioctl'
ata-disk.o: In function `ad_strategy':
/usr/src/sys/dev/ata/ata-disk.c:335: undefined reference to `ata_queue_request'
atapi-cd.o: In function `acd_reinit':
/usr/src/sys/dev/ata/atapi-cd.c:166: undefined reference to `ata_setmode'
atapi-cd.o: In function `acd_shutdown':
/usr/src/sys/dev/ata/atapi-cd.c:152: undefined reference to `ata_controlcmd'
atapi-cd.o: In function `acd_geom_detach':
/usr/src/sys/dev/ata/atapi-cd.c:199: undefined reference to `ata_fail_requests'
atapi-cd.o: In function `acd_test_ready':
/usr/src/sys/dev/ata/atapi-cd.c:1693: undefined reference to `ata_atapicmd'
atapi-cd.o: In function `acd_mode_select':
/usr/src/sys/dev/ata/atapi-cd.c:1619: undefined reference to `ata_atapicmd'
atapi-cd.o: In function `acd_mode_sense':
/usr/src/sys/dev/ata/atapi-cd.c:1609: undefined reference to `ata_atapicmd'
atapi-cd.o: In function `acd_pause_resume':
/usr/src/sys/dev/ata/atapi-cd.c:1599: undefined reference to `ata_atapicmd'
atapi-cd.o: In function `acd_start_stop':
/usr/src/sys/dev/ata/atapi-cd.c:1590: undefined reference to `ata_atapicmd'
atapi-cd.o:/usr/src/sys/dev/ata/atapi-cd.c:1581: more undefined references to `ata_atapicmd' foll
atapi-cd.o: In function `acd_get_progress':
/usr/src/sys/dev/ata/atapi-cd.c:1236: undefined reference to `ata_queue_request'
atapi-cd.o: In function `acd_strategy':
/usr/src/sys/dev/ata/atapi-cd.c:889: undefined reference to `ata_queue_request'
atapi-cd.o: In function `acd_geom_access':
/usr/src/sys/dev/ata/atapi-cd.c:704: undefined reference to `ata_queue_request'
atapi-cd.o: In function `acd_read_format_caps':
/usr/src/sys/dev/ata/atapi-cd.c:1671: undefined reference to `ata_atapicmd'
atapi-cd.o: In function `acd_geom_ioctl':
/usr/src/sys/dev/ata/atapi-cd.c:680: undefined reference to `ata_device_ioctl'
atapi-cd.o: In function `acd_format':
/usr/src/sys/dev/ata/atapi-cd.c:1682: undefined reference to `ata_atapicmd'
atapi-cd.o: In function `acd_report_key':
/usr/src/sys/dev/ata/atapi-cd.c:1336: undefined reference to `ata_atapicmd'
atapi-cd.o: In function `acd_read_track_info':
/usr/src/sys/dev/ata/atapi-cd.c:1206: undefined reference to `ata_atapicmd'
atapi-cd.o: In function `acd_init_writer':
/usr/src/sys/dev/ata/atapi-cd.c:1056: undefined reference to `ata_atapicmd'
/usr/src/sys/dev/ata/atapi-cd.c:1059: undefined reference to `ata_atapicmd'
atapi-cd.o:/usr/src/sys/dev/ata/atapi-cd.c:1086: more undefined references to `ata_atapicmd' foll
atapi-cd.o: In function `acd_attach':
/usr/src/sys/dev/ata/atapi-cd.c:129: undefined reference to `ata_setmode'
/usr/src/sys/dev/ata/atapi-cd.c:130: undefined reference to `ata_controlcmd'
atapi-cd.o: In function `acd_describe':
/usr/src/sys/dev/ata/atapi-cd.c:1884: undefined reference to `ata_satarev2str'
/usr/src/sys/dev/ata/atapi-cd.c:1884: undefined reference to `ata_unit2str'
/usr/src/sys/dev/ata/atapi-cd.c:1706: undefined reference to `ata_unit2str'
/usr/src/sys/dev/ata/atapi-cd.c:1733: undefined reference to `ata_satarev2str'
*** Error code 1
1 error

*********************************************************

Finally, if I try build my old kernel config file
(which I might've modified by forgot to document),
I get this panic (the kernel config is below):

(transcribed by hand)

Memory modified after free 0xfffffe0001848800(504) val=802f1f20 @
 0xfffffe00018488a8
panic: Most recently used by bus-sc

*skip very long backtrace, ending with* 

bus_set_pass() at bus_set_pass+0x7a
configure() at configure+0xa
mi_startup() at mi_startup+0x77
btext() at btext+0x2c



The kernel config:


cpu	HAMMER		# buzi laptop
ident	BUZI

makeoptions	DEBUG=-g		# Build kernel with gdb(1) debug symbols
makeoptions	MODULES_OVERRIDE=

options	ALT_BREAK_TO_DEBUGGER
options	ATA_STATIC_ID	# Static device numbering
options	AUDIT			# Security event auditing
options	BREAK_TO_DEBUGGER
options	CD9660
options	COMPAT_43TTY		# BSD 4.3 TTY compat (sgtty)
options	COMPAT_FREEBSD32
options	COMPAT_LINUX32
options	DDB
#options	EXCEPTION_TRACING
options	FFS
options	FLOWTABLE		# per-cpu routing cache
options	GDB
options	GEOM_PART_GPT		# GUID Partition Tables.
options	GEOM_LABEL		# Provides labelization
options	HWPMC_HOOKS		# Necessary kernel hooks for hwpmc(4)
options	IEEE80211_DEBUG	# enable debug msgs
options	IEEE80211_AMPDU_AGE # age frames in AMPDU reorder q's
options	IEEE80211_SUPPORT_MESH	# enable 802.11s draft support
options	INCLUDE_CONFIG_FILE     # Include this file in kernel
options	INET
options	INET6
options	INVARIANTS
options	INVARIANT_SUPPORT
options	IPFILTER
options	IPFILTER_DEFAULT_BLOCK
options	IPFILTER_LOG
#options	IPI_PREEMPTION
options	KDB
options	KBD_INSTALL_CDEV # install a CDEV entry in /dev
#options	KDTRACE_FRAME		# Ensure frames are compiled in
#options	KDTRACE_HOOKS		# Kernel DTrace hooks
options	KTRACE
#options	MAC			# TrustedBSD MAC Framework
options	MD_ROOT
options	MSDOSFS
options	P1003_1B_SEMAPHORES
#options	PREEMPTION
options	PRINTF_BUFR_SIZE=128
options	PROCFS
options	PSEUDOFS
#options	SCHED_4BSD
options	SCHED_ULE
options	SCSI_DELAY=5000		# Delay (in ms) before probing SCSI
options	SCTP			# Stream Control Transmission Protocol
options	SMP			# Symmetric MultiProcessor Kernel
options	SOFTUPDATES
options	STACK			# stack(9) support
options	SYSVMSG
options	SYSVSEM
options	SYSVSHM
options	UFS_ACL			# Support for access control lists
options	UFS_DIRHASH
options	UFS_GJOURNAL		# Enable gjournal-based UFS journaling
#options	UWX_TRACE_ENABLE
options	WITNESS
#options	WITNESS_KDB
options	WITNESS_SKIPSPIN
options	_KPOSIX_PRIORITY_SCHEDULING

device	acpi
device	ata
device	atadisk		# ATA disk drives
device	atapicd		# ATAPI CDROM drives
device	atkbdc		# AT keyboard controller
device	atkbd		# AT keyboard
device	bge		# Broadcom BCM570xx Gigabit Ethernet
device	bpf		# Berkeley packet filter
device	cardbus		# CardBus (32-bit) bus
device	cbb		# cardbus (yenta) bridge
device	cpufreq
device	da		# Direct Access (disks)
device	miibus		# MII bus support
device	pass		# Passthrough device (direct SCSI access)
device	pccard		# PC Card (16-bit) bus
device	pci
device	psm		# PS/2 mouse
device	sc
device	scbus		# SCSI bus (required for SCSI)
device	sound
device	snd_hda
device	uart		# Generic UART driver
device	vga		# VGA video card driver

# Pseudo devices.
device	ether		# Ethernet support
device	faith		# IPv6-to-IPv4 relaying (translation)
#device	firmware	# firmware assist module
device	gif		# IPv6 and IPv4 tunneling
device	loop		# Network loopback
device	md		# Memory "disks"
device	pty		# BSD-style compatibility pseudo ttys
device	random		# Entropy device
device	tun		# Packet tunnel.
device	vlan		# 802.1Q VLAN support


Please advise

Many thanks

-- 
Anton Shterenlikht
Room 2.6, Queen's Building
Mech Eng Dept
Bristol University
University Walk, Bristol BS8 1TR, UK
Tel: +44 (0)117 331 5944
Fax: +44 (0)117 929 4423


More information about the freebsd-current mailing list