Performance of SheevaPlug on 8-stable
Maks Verver
maksverver at geocities.com
Fri Mar 12 20:07:11 UTC 2010
On 03/10/2010 07:07 PM, Mark Tinguely wrote:
> I believe there is still a path that md.pv_kva is not being zeroed
> before the page is freed. [..] We can prove this theory by placing a
> temporary printf statement or even better a panic in
> vm_page_free_toq().
I tried this, and it triggers immediately during boot, but I don't
really know what to do at the debugger prompt except produce a backtrace.
Here's the complete log:
## Starting application at 0x00900100 ...
KDB: debugger backends: ddb
KDB: current backend: ddb
Copyright (c) 1992-2010 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 9.0-CURRENT #2: Fri Mar 12 18:49:03 CET 2010
root at heaven.student.utwente.nl:/usr/obj/arm/usr/src/sys/ELYSIUM arm
CPU: Feroceon 88FR131 rev 1 (Marvell core)
DC enabled IC enabled WB enabled EABT branch prediction enabled
16KB/32B 4-way Instruction cache
16KB/32B 4-way write-back-locking-C Data cache
real memory = 536870912 (512 MB)
avail memory = 520273920 (496 MB)
SOC: Marvell 88F6281 rev A0, TClock 200MHz
mbus0: <Marvell Internal Bus (Mbus)> on motherboard
ic0: <Marvell Integrated Interrupt Controller> at mem
0xf1020200-0xf102023b on mbus0
timer0: <Marvell CPU Timer> at mem 0xf1020300-0xf102032f irq 1 on mbus0
timer0: [FILTER]
rtc0: <Marvell Integrated RTC> at mem 0xf1010300-0xf1010307 on mbus0
gpio0: <Marvell Integrated GPIO Controller> at mem 0xf1010100-0xf101011f
irq 35,36,37,38,39,40,41 on mbus0
gpio0: [FILTER]
gpio0: [FILTER]
gpio0: [FILTER]
gpio0: [FILTER]
gpio0: [FILTER]
gpio0: [FILTER]
gpio0: [FILTER]
uart0: <16550 or compatible> at mem 0xf1012000-0xf101201f irq 33 on mbus0
uart0: [FILTER]
uart0: console (115740,n,8,1)
uart1: <16550 or compatible> at mem 0xf1012100-0xf101211f irq 34 on mbus0
uart1: [FILTER]
ehci0: <Marvell Integrated USB 2.0 controller> at mem
0xf1050000-0xf1050fff irq 48,19 on mbus0
ehci0: [FILTER]
ehci0: [ITHREAD]
usbus0: EHCI version 1.0
usbus0: set host controller mode
usbus0: <Marvell Integrated USB 2.0 controller> on ehci0
mge0: <Marvell Gigabit Ethernet controller> at mem 0xf1072000-0xf1073fff
irq 12,13,14,11,46 on mbus0
mge0: Ethernet address: 00:50:43:01:d8:2c
miibus0: <MII bus> on mge0
e1000phy0: <Marvell 88E1116R Gigabit PHY> PHY 0 on miibus0
e1000phy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT,
1000baseT-FDX, auto
mge0: [ITHREAD]
mge0: [ITHREAD]
Timecounter "CPU Timer" frequency 200000000 Hz quality 1000
Timecounters tick every 1.000 msec
usbus0: 480Mbps High Speed USB v2.0
Trying to mount root from ufs:/dev/da0s1d. Press CTRL+C to abort.
ROOT MOUNT ERROR:
If you have invalid mount options, reboot, and first try the following from
the loader prompt:
set vfs.root.mountfrom.options=rw
and then remove invalid mount options from /etc/fstab.
ugen0.1: <Marvell> at usbus0
uhub0: <Marvell EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus0
uhub0: 1 port with 1 removable, self powered
Trying to mount root from ufs:/dev/da0s1d. Press CTRL+C to abort.
ugen0.2: <vendor 0x3538> at usbus0
umass0: <vendor 0x3538 USB Mass Storage Device, class 0/0, rev
2.00/1.00, addr 2> on usbus0
umass0: SCSI over Bulk-Only; quirks = 0x0000
Trying to mount root from ufs:/dev/da0s1d. Press CTRL+C to abort.
umass0:0:0:-1: Attached to scbus0
da0 at umass-sim0 bus 0 scbus0 target 0 lun 0
da0: <Generic USB Flash Disk 0.00> Removable Direct Access SCSI-2 device
da0: 40.000MB/s transfers
da0: 480MB (983808 512 byte sectors: 64H 32S/T 480C)
Trying to mount root from ufs:/dev/da0s1d. Press CTRL+C to abort.
WARNING: / was not properly dismounted
panic: vm_page_free_toq: pva nonzero 0xc85cc000
KDB: enter: panic
[ thread pid 1 tid 100001 ]
Stopped at kdb_enter+0x48: ldrb r15, [r15, r15, ror r15]!
db> trace
Tracing pid 1 tid 100001 td 0xc341e000
kdb_enter() at kdb_enter+0x10
scp=0xc09d1844 rlv=0xc09a3110 (panic+0xcc)
rsp=0xcf23e804 rfp=0xcf23e818
r4=0x00000100
panic() at panic+0x14
scp=0xc09a3058 rlv=0xc0b1555c (vm_page_free_toq+0x138)
rsp=0xcf23e82c rfp=0xcf23e840
vm_page_free_toq() at vm_page_free_toq+0x10
scp=0xc0b15434 rlv=0xc0b156e8 (vm_page_free+0x1c)
rsp=0xcf23e844 rfp=0xcf23e850
r4=0xc0dafbfc
vm_page_free() at vm_page_free+0x10
scp=0xc0b156dc rlv=0xc0a105f4 (allocbuf+0xad8)
rsp=0xcf23e854 rfp=0xcf23e870
allocbuf() at allocbuf+0xa30
scp=0xc0a1054c rlv=0xc0a10bac (brelse+0x48c)
rsp=0xcf23e874 rfp=0xcf23e8c0
r7=0x00000000 r6=0x00001000
r5=0xc0b74b10 r4=0xc0bfd500
brelse() at brelse+0x10
scp=0xc0a10730 rlv=0xc0aebba0 (ffs_sbupdate+0x265c)
rsp=0xcf23e8c4 rfp=0xcf23e9c0
r10=0x00000000 r9=0x00010000
r8=0x00000000 r7=0xc85cc000 r6=0xc85cc0d4 r5=0x00000000
r4=0xc0be7e08
ffs_sbupdate() at ffs_sbupdate+0xe28
scp=0xc0aea36c rlv=0xc0a215f4 (vfs_donmount+0xc84)
rsp=0xcf23e9c4 rfp=0xcf23ec00
r10=0xc3602518 r9=0x00000003
r8=0xcf23ec04 r7=0xc3602518 r6=0x00004001 r5=0xcf23eb50
r4=0x00000000
vfs_donmount() at vfs_donmount+0x10
scp=0xc0a20980 rlv=0xc0a21cb4 (kernel_mount+0x80)
rsp=0xcf23ec04 rfp=0xcf23ec3c
r10=0xc3541940 r9=0x00000003
r8=0xc3628e80 r7=0xc3541930 r6=0x00000000 r5=0xc3541930
r4=0xffffffff
kernel_mount() at kernel_mount+0x10
scp=0xc0a21c44 rlv=0xc0a21fb0 (kernel_vmount+0x294)
rsp=0xcf23ec40 rfp=0xcf23edf0
r6=0x00000000 r5=0xc0b77118
r4=0xffffffff
kernel_vmount() at kernel_vmount+0x84
scp=0xc0a21da0 rlv=0xc0a227c0 (vfs_mountroot+0x2a4)
rsp=0xcf23edf4 rfp=0xcf23ee2c
r10=0x00000000 r9=0xc341c000
r8=0xc0b770d8 r7=0x00000000 r6=0x00000003 r5=0xffffffff
r4=0xc0bf7b2c
vfs_mountroot() at vfs_mountroot+0x10
scp=0xc0a2252c rlv=0xc0964734 (exec_shell_imgact+0x7ac)
rsp=0xcf23ee30 rfp=0xcf23ee84
r8=0xc341c000 r7=0xcf23eeac
r6=0x00000000 r5=0xc0b6339c r4=0xc0bf1ab8
exec_shell_imgact() at exec_shell_imgact+0x768
scp=0xc09646f0 rlv=0xc097dc54 (fork_exit+0x8c)
rsp=0xcf23ee88 rfp=0xcf23eea8
r10=0x00000000 r9=0x00000000
r8=0xc341c000 r7=0xcf23eeac r6=0x00000000 r5=0xc09646e0
r4=0xc341e000
fork_exit() at fork_exit+0x10
scp=0xc097dbd8 rlv=0xc0b34410 (fork_trampoline+0x14)
rsp=0xcf23eeac rfp=0x00000000
r8=0x00000000 r7=0x00000000
r6=0x00000000 r5=0x00000000 r4=0xc09646e0
Does this help?
- Maks Verver.
More information about the freebsd-arm
mailing list