linux-mips
[Top] [All Lists]

RE: [MIPS] SB1: Build fix: delete initialization of flush_icache_page po

To: "Atsushi Nemoto" <anemo@mba.ocn.ne.jp>
Subject: RE: [MIPS] SB1: Build fix: delete initialization of flush_icache_page pointer.
From: "Manoj Ekbote" <manoje@broadcom.com>
Date: Mon, 25 Sep 2006 20:05:59 -0700
Cc: "Mark E Mason" <mark.e.mason@broadcom.com>, linux-mips@linux-mips.org, ralf@linux-mips.org, ths@networkno.de
In-reply-to: <20060823.131627.75185523.nemoto@toshiba-tops.co.jp>
Original-recipient: rfc822;linux-mips@linux-mips.org
Sender: linux-mips-bounce@linux-mips.org
Thread-index: AcbGavG27legh5bGTYOZAKxXvmDrJgapYngA
Thread-topic: [MIPS] SB1: Build fix: delete initialization of flush_icache_page pointer.
Hello,

The latest tip still has problems with booting on Broadcom boards.
I turned on a couple of printk's in the page fault handler and I see the
following messages:

[4294669.578000] VFS: Mounted root (nfs filesystem).
[4294669.579000] Freeing unused kernel memory: 116k freed
[4294669.585000] Cpu0[init:1:0000000010000540:1:ffffffff80214a1c]
[4294669.589000] Cpu0[init:1:000000002ab01a30:1:ffffffff80214a1c]
[4294669.594000] Cpu0[init:1:000000002aaa8b00:0:000000002aaa8b00]
[4294669.595000] Cpu0[init:1:000000002aaa9364:0:000000002aaa9364]
[4294669.596000] Cpu0[init:1:000000002aab3200:0:000000002aab3200]
[4294669.600000] Cpu0[init:1:0000000000000004:0:000000002aab32f4]
[4294669.601000] do_page_fault() #2: sending SIGSEGV to init for invalid
read access from
[4294669.601000] 0000000000000004 (epc == 000000002aab32f4, ra ==
000000002aaa8cbc)
[4294669.602000] Cpu0[init:1:0000000000000004:0:000000002aab32f4]
[4294669.603000] do_page_fault() #2: sending SIGSEGV to init for invalid
read access from
[4294669.603000] 0000000000000004 (epc == 000000002aab32f4, ra ==
000000002aaa8cbc)
[4294669.604000] Cpu0[init:1:0000000000000004:0:000000002aab32f4]
[4294669.605000] do_page_fault() #2: sending SIGSEGV to init for invalid
read access from
[4294669.605000] 0000000000000004 (epc == 000000002aab32f4, ra ==
000000002aaa8cbc)

It looks like a cache corruption issue.  Did the removal of
flush_icache_page
cause this? 

Any thoughts appreciated.

Thx,
/manoj


>-----Original Message-----
>From: Atsushi Nemoto [mailto:anemo@mba.ocn.ne.jp] 
>Sent: Tuesday, August 22, 2006 9:16 PM
>To: Manoj Ekbote
>Cc: Mark E Mason; linux-mips@linux-mips.org; 
>ralf@linux-mips.org; ths@networkno.de
>Subject: Re: [MIPS] SB1: Build fix: delete initialization of 
>flush_icache_page pointer.
>
>On Mon, 21 Aug 2006 12:27:47 -0700, "Manoj Ekbote" 
><manoje@broadcom.com> wrote:
>> The patch doesn't help. The kernel hangs in the same fashion. 
>
>Thank you for testing.
>
>Then I have no idea why the kernel hangs...
>
>
>Random thoughts:
>
>Does it still hang on init=/bin/sh?
>
>Does enabling second and third "#if 0" blocks in 
>arch/mips/mm/fault.c show some useful information?
>
>Finally, I think there is no serious reason separating c-sb1.c 
>from c-r4k.c.  The c-r4k.c support both vtagged-icache and 
>pindexed-dcache, therefore SB1 can use it too.
>
>mm/c-r4k.c:probe_pcache()
>       switch (c->cputype) {
>       case CPU_20KC:
>       case CPU_25KF:
>       case CPU_SB1:
>       case CPU_SB1A:
>               c->dcache.flags |= MIPS_CACHE_PINDEX;
>       case CPU_R10000:
>       case CPU_R12000:
>       case CPU_R14000:
>               break;
>
>kernel/cpu-probe.c:cpu_probe_sibyte()
>#if 0
>       c->options &= ~MIPS_CPU_4K_CACHE;
>       c->options |= MIPS_CPU_SB1_CACHE;
>#endif
>
>---
>Atsushi Nemoto
>
>


<Prev in Thread] Current Thread [Next in Thread>