[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-arm-kernel
Subject:    Re: [CFT] Mark IO as bufferable
From:       Richard Purdie <rpurdie () rpsys ! net>
Date:       2005-06-29 11:45:31
Message-ID: 1120045531.7457.46.camel () localhost ! localdomain
[Download RAW message or body]

On Wed, 2005-06-29 at 10:43 +0100, Russell King - ARM Linux wrote:
> The only things which will have changed are the static MT_DEVICE mappings.
> ioremap and user-space non-memory mappings will still be completely
> uncached/unbuffered.

Sorry, I was getting confused partly because a lot of the corgi devices
used to be statically mapped (but aren't now). 

For reference, I turned on the head.S debug code and captured the full
oops (Same oops with some different clock speeds to what Lothar saw):

CPU: XScale-PXA255 [69052d06] revision 6 (ARMv5TE)
Machine: SHARP Husky
<4>Ignoring unrecognised tag 0x00000000
Memory policy: ECC disabled, Data cache writeback
<6>Memory clock: 99.53MHz (*27)
<6>Run Mode clock: 199.07MHz (*2)
<6>Turbo Mode clock: 398.13MHz (*2.0, active)
<7>On node 0 totalpages: 16384
<7>  DMA zone: 16384 pages, LIFO batch:7
<7>  Normal zone: 0 pages, LIFO batch:1
<7>  HighMem zone: 0 pages, LIFO batch:1
CPU0: D VIVT undefined 5 cache
CPU0: I cache: 32768 bytes, associativity 32, 32 byte lines, 32 sets
CPU0: D cache: 32768 bytes, associativity 32, 32 byte lines, 32 sets
Built 1 zonelists
<5>Kernel command line: console=ttyS0,115200n8 console=tty1 noinitrd root=/dev/mtdblock2 rootfstype=jffs2
<1>Unhandled fault: imprecise external abort (0xc06) at 0xfffbffff
<1>Unable to handle kernel NULL pointer dereference at virtual address 00000000
<1>pgd = c0004000
<1>[00000000] *pgd=00000000
Internal error: Oops: f5 [#1]
Modules linked in:
CPU: 0
PC is at kmem_cache_alloc+0x18/0x50
LR is at __sigqueue_alloc+0x60/0xd4
pc : [<c0064084>]    lr : [<c0043110>]    Not tainted
sp : c0225e80  ip : c0225e94  fp : c0225e90
r10: 00000001  r9 : c0225f50  r8 : 680000d3
r7 : 00000000  r6 : 00000007  r5 : 00000000  r4 : 280000d3
r3 : c0276274  r2 : 280000d3  r1 : 00000020  r0 : 00000000
Flags: nzCv  IRQs off  FIQs off  Mode SVC_32  Segment kernel
Control: 397F  Table: A0004000  DAC: 00000017
Process swapper (pid: 0, stack limit = 0xc0224194)
Stack: (0xc0225e80 to 0xc0226000)
5e80: c0226200 c0225ea8 c0225e94 c0043110 c0064078 00000001 c0226404 c0225ec8
5ea0: c0225eac c0043d34 c00430bc 00000001 00000007 c0226200 00000000 c0225ee8
5ec0: c0225ecc c0043e64 c0043c70 c0224000 c0226200 00000007 00000006 c0225f10
5ee0: c0225eec c0043f78 c0043de0 c0227654 00000c06 00000108 c0224000 c022775c
5f00: fffbffff c0225f20 c0225f14 c004448c c0043ed8 c0225f4c c0225f24 c0024000
5f20: c0044480 ffffffff c0225f84 c0227178 ffffffff a0019480 880000d3 a0019420
5f40: c0225fa8 c0225f50 c001b960 c0023f9c 00000000 00000000 f2e00000 00000000
5f60: 00000000 c026eb08 c0227178 ffffffff a0019480 69052d06 a0019420 c0225fa8
5f80: f2d00000 c0225f98 c000e318 c000e010 880000d3 ffffffff c026eae0 c0225fb8
5fa0: c0225fac c000e318 c000dfd8 c0225fd8 c0225fbc c000bb94 c000e314 0000397d
5fc0: c026eb9c c0227170 c0288ae8 c0225ff4 c0225fdc c0008878 c000bb3c c0008464
5fe0: c026ec08 0000397d 00000000 c0225ff8 a0008094 c00087ec 00000000 00000000
Backtrace:
[<c006406c>] (kmem_cache_alloc+0x0/0x50) from [<c0043110>] (__sigqueue_alloc+0x60/0xd4)
 r4 = C0226200
[<c00430b0>] (__sigqueue_alloc+0x0/0xd4) from [<c0043d34>] (send_signal+0xd0/0x170)
 r5 = C0226404  r4 = 00000001
[<c0043c64>] (send_signal+0x0/0x170) from [<c0043e64>] (specific_send_sig_info+0x90/0xf8)
 r7 = 00000000  r6 = C0226200  r5 = 00000007  r4 = 00000001
[<c0043dd4>] (specific_send_sig_info+0x0/0xf8) from [<c0043f78>] (force_sig_info+0xac/0xdc)
 r7 = 00000006  r6 = 00000007  r5 = C0226200  r4 = C0224000
[<c0043ecc>] (force_sig_info+0x0/0xdc) from [<c004448c>] (force_sig+0x18/0x1c)
[<c0044474>] (force_sig+0x0/0x1c) from [<c0024000>] (do_DataAbort+0x70/0xa0)
[<c0023f90>] (do_DataAbort+0x0/0xa0) from [<c001b960>] (__dabt_svc+0x40/0x60)
[<c000dfcc>] (pxa_init_irq+0x0/0x150) from [<c000e318>] (corgi_init_irq+0x10/0x14)
 r4 = C026EAE0
[<c000e308>] (corgi_init_irq+0x0/0x14) from [<c000bb94>] (init_IRQ+0x64/0x78)
[<c000bb30>] (init_IRQ+0x0/0x78) from [<c0008878>] (start_kernel+0x98/0x184)
 r7 = C0288AE8  r6 = C0227170  r5 = C026EB9C  r4 = 0000397D
[<c00087e0>] (start_kernel+0x0/0x184) from [<a0008094>] (0xa0008094)
 r4 = 0000397D
Code: e24cb004 e10f4000 e3842080 e121f002 (e590c000)
 <0>Kernel panic - not syncing: Attempted to kill the idle task!

Richard



-------------------------------------------------------------------
List admin: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-kernel
FAQ:        http://www.arm.linux.org.uk/mailinglists/faq.php
Etiquette:  http://www.arm.linux.org.uk/mailinglists/etiquette.php
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic