NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

port-arm/39791: pmap code totally broken at least for OMAP/H4 (armv6, ARM1136)



>Number:         39791
>Category:       port-arm
>Synopsis:       pmap code totally broken at least for OMAP/H4 (armv6, ARM1136)
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    port-arm-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Oct 23 06:40:00 +0000 2008
>Originator:     Andy Shevchenko
>Release:        yesterday -current
>Organization:
Teleca Finland Oy
>Environment:
N/a due to the bug.
>Description:
The pmap code seems totally broken for VIPT cache based CPUs after several 
patches during last few months.

The debugging info are attached below.

BOOT MESSAGES
=============
...
WARNING: no TOD clock present
WARNING: using filesystem time
WARNING: CHECK AND RESET THE DATE!
warning: no /dev/console

uvm_fault(0x81cbddd0, 0, 1) -> e
Fatal kernel mode data abort: 'Translation Fault (P)'
trapframe: 0x8295ccd0
FSR=00000007, FAR=00000040, spsr=60000013
r0 =8056a040, r1 =8056e1f1, r2 =8056e1f1, r3 =00000a01
r4 =80562e40, r5 =00000000, r6 =00000552, r7 =00000000
r8 =8055efd4, r9 =805630f4, r10=00000000, r11=8295cd68
r12=00000000, ssp=8295cd1c, slr=00002040, pc =80489b94

Stopped in pid 2.1 (sh) at      netbsd:pmap_enter+0x328:        ldr     r2, [r12
, #0x040]
db>


BACKTRACE
==========
db> bt
netbsd:pmap_enter+0xc
        scp=0x80489878 rlv=0x80485048 (netbsd:mmrw+0x1c0)
        rsp=0x8295cd6c rfp=0x8295cda8
        r10=0x8295ce98 r9=0x00000000
        r8=0x00000000 r7=0x8055efd4 r6=0x00000000 r5=0x00000000
        r4=0x81004000
netbsd:mmrw+0x18
        scp=0x80484ea0 rlv=0x8040e4b8 (netbsd:cdev_write+0x3c)
        rsp=0x8295cdac rfp=0x8295cdc4
        r10=0x8296bf50 r9=0x8295ce98
        r8=0x2020f400 r7=0x0000002d r6=0x00000000 r5=0x00000010
        r4=0x8295ce98
netbsd:cdev_write+0xc
        scp=0x8040e488 rlv=0x804698ec (netbsd:spec_write+0x98)
        rsp=0x8295cdc8 rfp=0x8295ce24
        r6=0x829710bc r5=0x8296dc40
        r4=0x8295ce44
netbsd:spec_write+0x10
        scp=0x80469864 rlv=0x8035cea8 (netbsd:tmpfs_spec_write+0x64)
        rsp=0x8295ce28 rfp=0x8295ce3c
        r10=0x8296bf50 r9=0x000301f0
        r8=0x2020f400 r7=0x0000002d r6=0x8295ce98 r5=0x8295ce44
        r4=0x829710bc
netbsd:tmpfs_spec_write+0x10
        scp=0x8035ce54 rlv=0x80462c6c (netbsd:VOP_WRITE+0x38)
        rsp=0x8295ce40 rfp=0x8295ce64
        r5=0x829710bc r4=0x00000010
netbsd:VOP_WRITE+0xc
        scp=0x80462c40 rlv=0x8045c98c (netbsd:vn_write+0xb0)
        rsp=0x8295ce68 rfp=0x8295ce8c
netbsd:vn_write+0xc
        scp=0x8045c8e8 rlv=0x8041f760 (netbsd:dofilewrite+0x84)
        rsp=0x8295ce90 rfp=0x8295cee0
        r10=0x8052eee8 r8=0x2020f400
        r7=0x00000001 r6=0x8295cf60 r5=0x0000002d r4=0x00000001
netbsd:dofilewrite+0xc
        scp=0x8041f6e8 rlv=0x8041f894 (netbsd:sys_write+0x74)
        rsp=0x8295cee4 rfp=0x8295cf08
        r10=0x8296dc40 r8=0x8295cfb8
        r7=0x804e256c r6=0x8295cf60 r5=0x8295cfb8 r4=0x00000001
netbsd:sys_write+0xc
        scp=0x8041f82c rlv=0x804808bc (netbsd:syscall_plain+0x1b8)
        rsp=0x8295cf0c rfp=0x8295cf90
        r6=0x8295cfb4 r5=0x00000003
        r4=0x00000000
netbsd:syscall_plain+0x10
        scp=0x80480714 rlv=0x80480a98 (netbsd:swi_handler+0xa0)
        rsp=0x8295cf94 rfp=0x8295cfb0
        r10=0x00000000 r9=0x000301f0
        r8=0x0000002d r7=0x81cb8b28 r6=0xefa00004 r5=0x8296dc40
        r4=0x8295cfb4
netbsd:swi_handler+0x10
        scp=0x80480a08 rlv=0x80483c84 (netbsd:swi_entry+0x2c)
        rsp=0x8295cfb4 rfp=0x7fffe724
        r7=0x00000000 r6=0x00000001
        r5=0x2020f400 r4=0x8052eee8

>How-To-Repeat:
Just try to start -current on OMAP/H4.

>Fix:
It was discussed here:

http://mail-index.netbsd.org/port-arm/2008/08/06/msg000324.html
http://mail-index.netbsd.org/port-arm/2008/08/25/msg000351.html



Home | Main Index | Thread Index | Old Index