On Tue, Jan 15, 2008 at 07:52:12AM -0600, Scot Hetzel wrote:
quoted text > When I boot a Jan 13th or Jan 15th kernel, and then run
> /usr/local/etc/cvsup/update.sh to update the local CVS repository, I
> get the following panic:
>=20
> panic: System call lstat returning with 1 locks held
> cpuid =3D 0
> KDB: enter: panic
> [thread ; pid 1240 tid 10031]
> stopped at kdb_enter+0x3d: movq __PLACEHOLDER__0_,0x41b048(%rip)
> db> show alllocks
> db> show locks
> db> bt
> tracing pid 1240 tid 10031 td 0xffffff001c1ad360
> kdb_enter() at kdb_enter+0x3d
> panic() at panic+0x176
> syscalls() at syscalls+0x66d
> Xfast_syscalls() at Xfast_syscalls+0xab
> --- syscall (0, FreeBSD ELF64, nosys), rip =3D 0x8009e87ec, rsp=3D
> 0x72ec50, rbp =3D 0x72ed28 ---
>=20
I think this could be related to the recent vn_lock()/VOP_LOCK() KPI change=
s.
Please, add DEBUG_VFS_LOCKS to the kernel config, and do the
show lockedvnods
from the ddb prompt when the panic occurs. The witness does not track
the lockmgr locks.
quoted text > ----
> $ strings /boot/kernel_hp_debug/kernel | grep CURRENT
> @(#)FreeBSD 8.0-CURRENT #0: Tue Jan 15 01:30:50 CST 2008
> FreeBSD 8.0-CURRENT #0: Tue Jan 15 01:30:50 CST 2008
> 8.0-CURRENT
>=20
> $ strings /boot/kernel_hp_debug.old/kernel | grep CURRENT
> @(#)FreeBSD 8.0-CURRENT #0: Sun Jan 13 13:12:56 CST 2008
> FreeBSD 8.0-CURRENT #0: Sun Jan 13 13:12:56 CST 2008
> 8.0-CURRENT
> ---
>=20
> When I try to look at the core file that gets generated, kgdb is
> having problems reading it:
>=20
> hp010# cd /sys/amd64/compile/DV8135NR
> hp010# kgdb -n 14 kernel.debug
> kgdb: kvm_read: invalid address (0x1050000)
> [GDB will not be able to debug user-mode threads:
> /usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"]
> GNU gdb 6.1.1 [FreeBSD]
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you =
are
quoted text > welcome to change it and/or distribute copies of it under certain conditi=
ons.
quoted text > Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB. Type "show warranty" for detail=
s.
quoted text > This GDB was configured as "amd64-marcel-freebsd".
> Ready to go. Enter 'tr' to connect to the remote target
> with /dev/cuad0, 'tr /dev/cuad1' to connect to a different port
> or 'trf portno' to connect to the remote target with the firewire
> interface. portno defaults to 5556.
>=20
> Type 'getsyms' after connection to load kld symbols.
>=20
> If you're debugging a local system, you can use 'kldsyms' instead
> to load the kld symbols. That's a less obnoxious interface.
> During symbol reading...location expression too complex...
> During symbol reading, unsupported tag: 'DW_TAG_const_type'.
> Cannot access memory at address 0x0
> (kgdb)
>=20
> ---
>=20
> A Jan 9th kernel doesn't exhibit this problem with lstat when
> /usr/local/etc/cvsup/update.sh is run.
>=20
> Any suggestions to isolate this problem?
>=20
> Scot
quoted text > options CONFIG_AUTOGENERATED
> ident DV8135NR-debug
> machine amd64
> cpu HAMMER
> makeoptions KODIR=3D/boot/${KERNEL}_hp_debug
> makeoptions DEBUG=3D-g
> options INCLUDE_CONFIG_FILE
> options WITNESS_SKIPSPIN
> options WITNESS
> options INVARIANT_SUPPORT
> options INVARIANTS
> options GDB
> options DDB
> options KDB
> options ATA_STATIC_ID
> options SMP
> options AUDIT
> options STOP_NMI
> options KBD_INSTALL_CDEV
> options _KPOSIX_PRIORITY_SCHEDULING
> options SYSVSEM
> options SYSVMSG
> options SYSVSHM
> options STACK
> options KTRACE
> options SCSI_DELAY=3D5000
> options COMPAT_FREEBSD7
> options COMPAT_FREEBSD6
> options COMPAT_FREEBSD5
> options COMPAT_FREEBSD4
> options COMPAT_IA32
> options COMPAT_43TTY
> options GEOM_LABEL
> options GEOM_PART_GPT
> options PSEUDOFS
> options PROCFS
> options CD9660
> options MSDOSFS
> options NTFS
> options NFS_ROOT
> options NFSSERVER
> options NFSCLIENT
> options MD_ROOT
> options UFS_GJOURNAL
> options UFS_DIRHASH
> options UFS_ACL
> options SOFTUPDATES
> options FFS
> options SCTP
> options INET6
> options INET
> options PREEMPTION
> options SCHED_ULE
> options KSE
> options GEOM_MBR
> options GEOM_BSD
> device isa
> device mem
> device io
> device uart_ns8250
> device cpufreq
> device acpi
> device pci
> device fdc
> device ata
> device atadisk
> device ataraid
> device atapicd
> device atapifd
> device atapist
> device scbus
> device ch
> device da
> device sa
> device cd
> device pass
> device ses
> device atkbdc
> device atkbd
> device psm
> device kbdmux
> device vga
> device splash
> device sc
> device agp
> device cbb
> device pccard
> device cardbus
> device sio
> device uart
> device miibus
> device rl
> device loop
> device random
> device ether
> device sl
> device ppp
> device tun
> device pty
> device md
> device gif
> device faith
> device firmware
> device bpf
> device uhci
> device ohci
> device ehci
> device usb
> device ugen
> device uhid
> device ukbd
> device ulpt
> device umass
> device ums
> device urio
> device uscanner
> device ucom
> device uark
> device ubsa
> device ubser
> device uftdi
> device uipaq
> device uplcom
> device uvisor
> device uvscom
> device firewire
> device sbp
> device fwe
> device fwip
> device dcons
> device dcons_crom
> =00
> _______________________________________________
>
freebsd-current@freebsd.org mailing list
>
http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"