All of lore.kernel.org
 help / color / mirror / Atom feed
* Linux 2.6.12 cannot run on 24K. Please give me some clues.
@ 2007-07-24  7:09 ` colin
  0 siblings, 0 replies; 9+ messages in thread
From: colin @ 2007-07-24  7:09 UTC (permalink / raw)
  To: linux-mips

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="big5", Size: 1846 bytes --]


Hi all,
Could you help me on porting MIPS Linux?

Our first embedded system using 4Kec is running very well on Linux 2.6.12.
Now the second chip using 24K has problems. I found that mtf0 and mtc0 have
hazard problem and I have solved it.
static inline void unmask_mips_irq(unsigned int irq)
{
        set_c0_status(0x100 << (irq - mips_cpu_irq_base));
        irq_enable_hazard();
}

Now Linux can continue running and then it will encounter problems when
running the first application, init. I will appreciate your clues for
helping me on this probem. :D

Colin

ÿttyS0 at MMIO 0x0 (irq = 3) is a 16550A
ttyS1 at MMIO 0x0 (irq = 3) is a 16550A
io scheduler noop registered
Freeing prom memory: 0kb freed
Reclaim bootloader memory from 80010000 to 800f0000
Freeing unused kernel memory: 252k freed
CPU 0 Unable to handle kernel paging request at virtual address ffffff88,
epc == 00440f10, ra == 004000e4
Oops in arch/mips/mm/fault.c::do_page_fault, line 167[#1]:
Cpu 0
$ 0   : 00000000 10000990 00400090 00000000
$ 4   : 7fdd5ed0 7fdd5f94 00000000 7fdd5f94
$ 8   : 00000000 00000000 80001cb2 00000b3b
$12   : 7f1c0300 0001ffff 0001ffff 00000115
$16   : 801f5e04 00000000 00000000 00000000
$20   : 00000000 00000000 00000000 00000000
$24   : 00000000 00440f00
$28   : 10008c70 7fdd5e18 7fdd5e38 004000e4
Hi    : 00000000
Lo    : 00000000
epc   : 00440f10     Not tainted
ra    : 004000e4 Status: 00006802    KERNEL EXL
Cause : 0880400c
BadVA : ffffff88
PrId  : 00019378
Process init (pid: 1, threadinfo=80848000, task=80854bd8)
Stack : 00000000 00000000 10008c70 00000000 10008c70 7fdd5e38 10008c70
004276e4
        00000000 00000000 00000000 00000000 10008c70 00000000 7fdd5f9c
00000000
        00000000 00000000 00000000 00000000 00000000 00000000 00000003
00400034
        00000004 00000020 00000005 00000002 00000006 00001000 00000007
000000

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Linux 2.6.12 cannot run on 24K. Please give me some clues.
@ 2007-07-24  7:09 ` colin
  0 siblings, 0 replies; 9+ messages in thread
From: colin @ 2007-07-24  7:09 UTC (permalink / raw)
  To: linux-mips

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="big5", Size: 1846 bytes --]


Hi all,
Could you help me on porting MIPS Linux?

Our first embedded system using 4Kec is running very well on Linux 2.6.12.
Now the second chip using 24K has problems. I found that mtf0 and mtc0 have
hazard problem and I have solved it.
static inline void unmask_mips_irq(unsigned int irq)
{
        set_c0_status(0x100 << (irq - mips_cpu_irq_base));
        irq_enable_hazard();
}

Now Linux can continue running and then it will encounter problems when
running the first application, init. I will appreciate your clues for
helping me on this probem. :D

Colin

ÿttyS0 at MMIO 0x0 (irq = 3) is a 16550A
ttyS1 at MMIO 0x0 (irq = 3) is a 16550A
io scheduler noop registered
Freeing prom memory: 0kb freed
Reclaim bootloader memory from 80010000 to 800f0000
Freeing unused kernel memory: 252k freed
CPU 0 Unable to handle kernel paging request at virtual address ffffff88,
epc == 00440f10, ra == 004000e4
Oops in arch/mips/mm/fault.c::do_page_fault, line 167[#1]:
Cpu 0
$ 0   : 00000000 10000990 00400090 00000000
$ 4   : 7fdd5ed0 7fdd5f94 00000000 7fdd5f94
$ 8   : 00000000 00000000 80001cb2 00000b3b
$12   : 7f1c0300 0001ffff 0001ffff 00000115
$16   : 801f5e04 00000000 00000000 00000000
$20   : 00000000 00000000 00000000 00000000
$24   : 00000000 00440f00
$28   : 10008c70 7fdd5e18 7fdd5e38 004000e4
Hi    : 00000000
Lo    : 00000000
epc   : 00440f10     Not tainted
ra    : 004000e4 Status: 00006802    KERNEL EXL
Cause : 0880400c
BadVA : ffffff88
PrId  : 00019378
Process init (pid: 1, threadinfo=80848000, task=80854bd8)
Stack : 00000000 00000000 10008c70 00000000 10008c70 7fdd5e38 10008c70
004276e4
        00000000 00000000 00000000 00000000 10008c70 00000000 7fdd5f9c
00000000
        00000000 00000000 00000000 00000000 00000000 00000000 00000003
00400034
        00000004 00000020 00000005 00000002 00000006 00001000 00000007
000000

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Linux 2.6.12 cannot run on 24K. Please give me some clues.
  2007-07-24  7:09 ` colin
  (?)
@ 2007-07-24 12:20 ` Maciej W. Rozycki
  -1 siblings, 0 replies; 9+ messages in thread
From: Maciej W. Rozycki @ 2007-07-24 12:20 UTC (permalink / raw)
  To: colin; +Cc: linux-mips

On Tue, 24 Jul 2007, colin wrote:

> Now Linux can continue running and then it will encounter problems when
> running the first application, init. I will appreciate your clues for
> helping me on this probem. :D

 I suggest you update to a version of Linux less old than two years.  FYI, 
2.6.22 is the current version.

  Maciej

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [SPAM] Linux 2.6.12 cannot run on 24K. Please give me some clues.
@ 2007-07-26  7:03   ` Markus Gothe
  0 siblings, 0 replies; 9+ messages in thread
From: Markus Gothe @ 2007-07-26  7:03 UTC (permalink / raw)
  To: colin; +Cc: linux-mips

[-- Attachment #1: Type: text/plain, Size: 2440 bytes --]

Seems to me that running in EXkLusive/supervisor mode is the culprit.  
Try changing that before you get to userspace...

On 24 Jul, 2007, at 09:09 , colin wrote:

>
> Hi all,
> Could you help me on porting MIPS Linux?
>
> Our first embedded system using 4Kec is running very well on Linux  
> 2.6.12.
> Now the second chip using 24K has problems. I found that mtf0 and  
> mtc0 have
> hazard problem and I have solved it.
> static inline void unmask_mips_irq(unsigned int irq)
> {
>         set_c0_status(0x100 << (irq - mips_cpu_irq_base));
>         irq_enable_hazard();
> }
>
> Now Linux can continue running and then it will encounter problems  
> when
> running the first application, init. I will appreciate your clues for
> helping me on this probem. :D
>
> Colin
>
> ÿttyS0 at MMIO 0x0 (irq = 3) is a 16550A
> ttyS1 at MMIO 0x0 (irq = 3) is a 16550A
> io scheduler noop registered
> Freeing prom memory: 0kb freed
> Reclaim bootloader memory from 80010000 to 800f0000
> Freeing unused kernel memory: 252k freed
> CPU 0 Unable to handle kernel paging request at virtual address  
> ffffff88,
> epc == 00440f10, ra == 004000e4
> Oops in arch/mips/mm/fault.c::do_page_fault, line 167[#1]:
> Cpu 0
> $ 0   : 00000000 10000990 00400090 00000000
> $ 4   : 7fdd5ed0 7fdd5f94 00000000 7fdd5f94
> $ 8   : 00000000 00000000 80001cb2 00000b3b
> $12   : 7f1c0300 0001ffff 0001ffff 00000115
> $16   : 801f5e04 00000000 00000000 00000000
> $20   : 00000000 00000000 00000000 00000000
> $24   : 00000000 00440f00
> $28   : 10008c70 7fdd5e18 7fdd5e38 004000e4
> Hi    : 00000000
> Lo    : 00000000
> epc   : 00440f10     Not tainted
> ra    : 004000e4 Status: 00006802    KERNEL EXL
> Cause : 0880400c
> BadVA : ffffff88
> PrId  : 00019378
> Process init (pid: 1, threadinfo=80848000, task=80854bd8)
> Stack : 00000000 00000000 10008c70 00000000 10008c70 7fdd5e38 10008c70
> 004276e4
>         00000000 00000000 00000000 00000000 10008c70 00000000 7fdd5f9c
> 00000000
>         00000000 00000000 00000000 00000000 00000000 00000000 00000003
> 00400034
>         00000004 00000020 00000005 00000002 00000006 00001000 00000007
> 000000
>
>
>
>

_______________________________________

Mr Markus Gothe
Software Engineer

Phone: +46 (0)13 21 81 20 (ext. 1046)
Fax: +46 (0)13 21 21 15
Mobile: +46 (0)73 718 72 80
Diskettgatan 11, SE-583 35 Linköping, Sweden
www.27m.com



[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 186 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [SPAM] Linux 2.6.12 cannot run on 24K. Please give me some clues.
@ 2007-07-26  7:03   ` Markus Gothe
  0 siblings, 0 replies; 9+ messages in thread
From: Markus Gothe @ 2007-07-26  7:03 UTC (permalink / raw)
  To: colin; +Cc: linux-mips

[-- Attachment #1: Type: text/plain, Size: 2440 bytes --]

Seems to me that running in EXkLusive/supervisor mode is the culprit.  
Try changing that before you get to userspace...

On 24 Jul, 2007, at 09:09 , colin wrote:

>
> Hi all,
> Could you help me on porting MIPS Linux?
>
> Our first embedded system using 4Kec is running very well on Linux  
> 2.6.12.
> Now the second chip using 24K has problems. I found that mtf0 and  
> mtc0 have
> hazard problem and I have solved it.
> static inline void unmask_mips_irq(unsigned int irq)
> {
>         set_c0_status(0x100 << (irq - mips_cpu_irq_base));
>         irq_enable_hazard();
> }
>
> Now Linux can continue running and then it will encounter problems  
> when
> running the first application, init. I will appreciate your clues for
> helping me on this probem. :D
>
> Colin
>
> ÿttyS0 at MMIO 0x0 (irq = 3) is a 16550A
> ttyS1 at MMIO 0x0 (irq = 3) is a 16550A
> io scheduler noop registered
> Freeing prom memory: 0kb freed
> Reclaim bootloader memory from 80010000 to 800f0000
> Freeing unused kernel memory: 252k freed
> CPU 0 Unable to handle kernel paging request at virtual address  
> ffffff88,
> epc == 00440f10, ra == 004000e4
> Oops in arch/mips/mm/fault.c::do_page_fault, line 167[#1]:
> Cpu 0
> $ 0   : 00000000 10000990 00400090 00000000
> $ 4   : 7fdd5ed0 7fdd5f94 00000000 7fdd5f94
> $ 8   : 00000000 00000000 80001cb2 00000b3b
> $12   : 7f1c0300 0001ffff 0001ffff 00000115
> $16   : 801f5e04 00000000 00000000 00000000
> $20   : 00000000 00000000 00000000 00000000
> $24   : 00000000 00440f00
> $28   : 10008c70 7fdd5e18 7fdd5e38 004000e4
> Hi    : 00000000
> Lo    : 00000000
> epc   : 00440f10     Not tainted
> ra    : 004000e4 Status: 00006802    KERNEL EXL
> Cause : 0880400c
> BadVA : ffffff88
> PrId  : 00019378
> Process init (pid: 1, threadinfo=80848000, task=80854bd8)
> Stack : 00000000 00000000 10008c70 00000000 10008c70 7fdd5e38 10008c70
> 004276e4
>         00000000 00000000 00000000 00000000 10008c70 00000000 7fdd5f9c
> 00000000
>         00000000 00000000 00000000 00000000 00000000 00000000 00000003
> 00400034
>         00000004 00000020 00000005 00000002 00000006 00001000 00000007
> 000000
>
>
>
>

_______________________________________

Mr Markus Gothe
Software Engineer

Phone: +46 (0)13 21 81 20 (ext. 1046)
Fax: +46 (0)13 21 21 15
Mobile: +46 (0)73 718 72 80
Diskettgatan 11, SE-583 35 Linköping, Sweden
www.27m.com



[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 186 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [SPAM] Linux 2.6.12 cannot run on 24K. Please give me some clues.
  2007-07-26  7:03   ` Markus Gothe
  (?)
@ 2007-07-26 10:57   ` Maciej W. Rozycki
  -1 siblings, 0 replies; 9+ messages in thread
From: Maciej W. Rozycki @ 2007-07-26 10:57 UTC (permalink / raw)
  To: Markus Gothe; +Cc: colin, linux-mips

On Thu, 26 Jul 2007, Markus Gothe wrote:

> Seems to me that running in EXkLusive/supervisor mode is the culprit. Try
> changing that before you get to userspace...

 Oopses always have either ERL or EXL set with an R4k-style cp0 status 
register as this is how these bits are handled by hardware when an 
exception happens.

 Now ffffff88 is obviously a wrong address, which looks like a negative 
offset from a null pointer, but it is up to the reporter to narrow it down 
well enough someone else can say anything about it.  Though as I say, I 
doubt anybody on this list cares of a piece of software that is two years 
old.

  Maciej

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [SPAM] Linux 2.6.12 cannot run on 24K. Please give me some clues.
  2007-07-26  7:03   ` Markus Gothe
  (?)
  (?)
@ 2007-07-29 15:13   ` Sergei Shtylyov
  2007-07-30  3:45       ` colin
  -1 siblings, 1 reply; 9+ messages in thread
From: Sergei Shtylyov @ 2007-07-29 15:13 UTC (permalink / raw)
  To: Markus Gothe; +Cc: colin, linux-mips

Hello.

Markus Gothe wrote:

> Seems to me that running in EXkLusive/supervisor mode is the culprit.

    EXL doesn't mean "exclusive", it means "exception level". And you'll 
always see this bit set in an oops happening when the kernel is handling 
exception (I'm not saying that it's actually set during all that time, just 
that the handler is entered with EXL=1 and that walue of the Status regs is 
saved on stack and later dumped along with the other regs)

> Try changing that before you get to userspace...

> On 24 Jul, 2007, at 09:09 , colin wrote:
> 
>>
>> Hi all,
>> Could you help me on porting MIPS Linux?
>>
>> Our first embedded system using 4Kec is running very well on Linux  
>> 2.6.12.
>> Now the second chip using 24K has problems. I found that mtf0 and  
>> mtc0 have
>> hazard problem and I have solved it.
>> static inline void unmask_mips_irq(unsigned int irq)
>> {
>>         set_c0_status(0x100 << (irq - mips_cpu_irq_base));
>>         irq_enable_hazard();
>> }
>>
>> Now Linux can continue running and then it will encounter problems  when
>> running the first application, init. I will appreciate your clues for
>> helping me on this probem. :D
>>
>> Colin
>>
>> ÿttyS0 at MMIO 0x0 (irq = 3) is a 16550A
>> ttyS1 at MMIO 0x0 (irq = 3) is a 16550A
>> io scheduler noop registered
>> Freeing prom memory: 0kb freed
>> Reclaim bootloader memory from 80010000 to 800f0000
>> Freeing unused kernel memory: 252k freed
>> CPU 0 Unable to handle kernel paging request at virtual address  
>> ffffff88,
>> epc == 00440f10, ra == 004000e4

   It's not a kernel address, BTW...

>> Oops in arch/mips/mm/fault.c::do_page_fault, line 167[#1]:
>> Cpu 0
>> $ 0   : 00000000 10000990 00400090 00000000
>> $ 4   : 7fdd5ed0 7fdd5f94 00000000 7fdd5f94
>> $ 8   : 00000000 00000000 80001cb2 00000b3b
>> $12   : 7f1c0300 0001ffff 0001ffff 00000115
>> $16   : 801f5e04 00000000 00000000 00000000
>> $20   : 00000000 00000000 00000000 00000000
>> $24   : 00000000 00440f00
>> $28   : 10008c70 7fdd5e18 7fdd5e38 004000e4
>> Hi    : 00000000
>> Lo    : 00000000
>> epc   : 00440f10     Not tainted
>> ra    : 004000e4 Status: 00006802    KERNEL EXL
>> Cause : 0880400c
>> BadVA : ffffff88
>> PrId  : 00019378
>> Process init (pid: 1, threadinfo=80848000, task=80854bd8)
>> Stack : 00000000 00000000 10008c70 00000000 10008c70 7fdd5e38 10008c70
>> 004276e4
>>         00000000 00000000 00000000 00000000 10008c70 00000000 7fdd5f9c
>> 00000000
>>         00000000 00000000 00000000 00000000 00000000 00000000 00000003
>> 00400034
>>         00000004 00000020 00000005 00000002 00000006 00001000 00000007
>> 000000

WBR, Sergei

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [SPAM] Linux 2.6.12 cannot run on 24K. Please give me some clues.
@ 2007-07-30  3:45       ` colin
  0 siblings, 0 replies; 9+ messages in thread
From: colin @ 2007-07-30  3:45 UTC (permalink / raw)
  To: Sergei Shtylyov, Markus Gothe; +Cc: linux-mips


This is the second situations.
EPC is in:

static inline void __cache_free(kmem_cache_t *cachep, void *objp)
{
        struct array_cache *ac = ac_data(cachep);

        check_irq_off();
        objp = cache_free_debugcheck(cachep, objp,
__builtin_return_address(0));

>>>>>>>>>   if (likely(ac->avail < ac->limit)) {
                STATS_INC_FREEHIT(cachep);
                ac_entry(ac)[ac->avail++] = objp;
                return;
        } else {
                STATS_INC_FREEMISS(cachep);
                cache_flusharray(cachep, ac);
                ac_entry(ac)[ac->avail++] = objp;
        }
}

I am trying to use MIPS32 release 2 code on 24k. I found that 2.6.12 &
2.6.13 donot support release 2 well. They can not even be compiled.
Therefore, I upgrade Linux to 2.6.14.

Colin









k init, 0k highmem)
17.92 BogoMIPS (lpj=89600)
==================== Warning! The calculated loops_per_jiffy is not similar
to t
he default one. ====================
Mount-cache hash table entries: 512
Checking for 'wait' instruction...  available.
CPU 0 Unable to handle kernel paging request at virtual address 44100280,
epc ==
 801549b0, ra == 8020805c
Oops in arch/mips/mm/fault.c::do_page_fault, line 167[#1]:
Cpu 0
$ 0   : 00000000 10007700 80805540 80800000
$ 4   : 8fbc0010 0000000f 00000003 8021b000
$ 8   : 00078554 80290000 80290000 80290000
$12   : 801eead8 00000063 00000063 801eead8
$16   : 44100280 000033e0 802aa000 10007701
$20   : 0000003c 81a95bf1 80220000 80290000
$24   : 00000000 00000000
$28   : 80854000 80855980 00000000 8020805c
Hi    : 00000000
Lo    : 00000000
epc   : 801549b0     Not tainted
ra    : 8020805c Status: 10007702    KERNEL EXL
Cause : 08800008
BadVA : 44100280
PrId  : 00019378
Process swapper (pid: 1, threadinfo=80854000, task=80851bd8)
Stack : 80854000 808559a8 00000006 80207e94 8085e788 000033e0 000032c8
00000007
        8020805c 80207ddc 11801001 020c0810 00000000 801eea1c 801ee9e0
808574a4
        80855ec4 05eb0019 00000005 00000006 00000006 00000007 00000007
00000008
        00000008 00000008 00000008 00000008 00000008 00000009 00000008
00000009
        0000000b 00000009 00000007 00000008 00000008 00000008 00000007
00000009
        ...
Call Trace: [<80207e94>]  [<8020805c>]  [<80207ddc>]  [<802087c8>]
[<80141ba0>]
  [<801004e8>]  [<80103870>]  [<80103860>]

Code: 00431021  8c440018  8c900000 <8e030000> 8e020004  0062102b  10400007
2611
0010  00031080
Kernel panic - not syncing: Attempted to kill init!



----- Original Message ----- 
From: "Sergei Shtylyov" <sshtylyov@ru.mvista.com>
To: "Markus Gothe" <markus.gothe@27m.se>
Cc: "colin" <colin@realtek.com.tw>; <linux-mips@linux-mips.org>
Sent: Sunday, July 29, 2007 11:13 PM
Subject: Re: [SPAM] Linux 2.6.12 cannot run on 24K. Please give me some
clues.


Hello.

Markus Gothe wrote:

> Seems to me that running in EXkLusive/supervisor mode is the culprit.

    EXL doesn't mean "exclusive", it means "exception level". And you'll
always see this bit set in an oops happening when the kernel is handling
exception (I'm not saying that it's actually set during all that time, just
that the handler is entered with EXL=1 and that walue of the Status regs is
saved on stack and later dumped along with the other regs)

> Try changing that before you get to userspace...

> On 24 Jul, 2007, at 09:09 , colin wrote:
>
>>
>> Hi all,
>> Could you help me on porting MIPS Linux?
>>
>> Our first embedded system using 4Kec is running very well on Linux
>> 2.6.12.
>> Now the second chip using 24K has problems. I found that mtf0 and
>> mtc0 have
>> hazard problem and I have solved it.
>> static inline void unmask_mips_irq(unsigned int irq)
>> {
>>         set_c0_status(0x100 << (irq - mips_cpu_irq_base));
>>         irq_enable_hazard();
>> }
>>
>> Now Linux can continue running and then it will encounter problems  when
>> running the first application, init. I will appreciate your clues for
>> helping me on this probem. :D
>>
>> Colin
>>
>> ÿttyS0 at MMIO 0x0 (irq = 3) is a 16550A
>> ttyS1 at MMIO 0x0 (irq = 3) is a 16550A
>> io scheduler noop registered
>> Freeing prom memory: 0kb freed
>> Reclaim bootloader memory from 80010000 to 800f0000
>> Freeing unused kernel memory: 252k freed
>> CPU 0 Unable to handle kernel paging request at virtual address
>> ffffff88,
>> epc == 00440f10, ra == 004000e4

   It's not a kernel address, BTW...

>> Oops in arch/mips/mm/fault.c::do_page_fault, line 167[#1]:
>> Cpu 0
>> $ 0   : 00000000 10000990 00400090 00000000
>> $ 4   : 7fdd5ed0 7fdd5f94 00000000 7fdd5f94
>> $ 8   : 00000000 00000000 80001cb2 00000b3b
>> $12   : 7f1c0300 0001ffff 0001ffff 00000115
>> $16   : 801f5e04 00000000 00000000 00000000
>> $20   : 00000000 00000000 00000000 00000000
>> $24   : 00000000 00440f00
>> $28   : 10008c70 7fdd5e18 7fdd5e38 004000e4
>> Hi    : 00000000
>> Lo    : 00000000
>> epc   : 00440f10     Not tainted
>> ra    : 004000e4 Status: 00006802    KERNEL EXL
>> Cause : 0880400c
>> BadVA : ffffff88
>> PrId  : 00019378
>> Process init (pid: 1, threadinfo=80848000, task=80854bd8)
>> Stack : 00000000 00000000 10008c70 00000000 10008c70 7fdd5e38 10008c70
>> 004276e4
>>         00000000 00000000 00000000 00000000 10008c70 00000000 7fdd5f9c
>> 00000000
>>         00000000 00000000 00000000 00000000 00000000 00000000 00000003
>> 00400034
>>         00000004 00000020 00000005 00000002 00000006 00001000 00000007
>> 000000

WBR, Sergei

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [SPAM] Linux 2.6.12 cannot run on 24K. Please give me some clues.
@ 2007-07-30  3:45       ` colin
  0 siblings, 0 replies; 9+ messages in thread
From: colin @ 2007-07-30  3:45 UTC (permalink / raw)
  To: Sergei Shtylyov, Markus Gothe; +Cc: linux-mips


This is the second situations.
EPC is in:

static inline void __cache_free(kmem_cache_t *cachep, void *objp)
{
        struct array_cache *ac = ac_data(cachep);

        check_irq_off();
        objp = cache_free_debugcheck(cachep, objp,
__builtin_return_address(0));

>>>>>>>>>   if (likely(ac->avail < ac->limit)) {
                STATS_INC_FREEHIT(cachep);
                ac_entry(ac)[ac->avail++] = objp;
                return;
        } else {
                STATS_INC_FREEMISS(cachep);
                cache_flusharray(cachep, ac);
                ac_entry(ac)[ac->avail++] = objp;
        }
}

I am trying to use MIPS32 release 2 code on 24k. I found that 2.6.12 &
2.6.13 donot support release 2 well. They can not even be compiled.
Therefore, I upgrade Linux to 2.6.14.

Colin









k init, 0k highmem)
17.92 BogoMIPS (lpj=89600)
==================== Warning! The calculated loops_per_jiffy is not similar
to t
he default one. ====================
Mount-cache hash table entries: 512
Checking for 'wait' instruction...  available.
CPU 0 Unable to handle kernel paging request at virtual address 44100280,
epc ==
 801549b0, ra == 8020805c
Oops in arch/mips/mm/fault.c::do_page_fault, line 167[#1]:
Cpu 0
$ 0   : 00000000 10007700 80805540 80800000
$ 4   : 8fbc0010 0000000f 00000003 8021b000
$ 8   : 00078554 80290000 80290000 80290000
$12   : 801eead8 00000063 00000063 801eead8
$16   : 44100280 000033e0 802aa000 10007701
$20   : 0000003c 81a95bf1 80220000 80290000
$24   : 00000000 00000000
$28   : 80854000 80855980 00000000 8020805c
Hi    : 00000000
Lo    : 00000000
epc   : 801549b0     Not tainted
ra    : 8020805c Status: 10007702    KERNEL EXL
Cause : 08800008
BadVA : 44100280
PrId  : 00019378
Process swapper (pid: 1, threadinfo=80854000, task=80851bd8)
Stack : 80854000 808559a8 00000006 80207e94 8085e788 000033e0 000032c8
00000007
        8020805c 80207ddc 11801001 020c0810 00000000 801eea1c 801ee9e0
808574a4
        80855ec4 05eb0019 00000005 00000006 00000006 00000007 00000007
00000008
        00000008 00000008 00000008 00000008 00000008 00000009 00000008
00000009
        0000000b 00000009 00000007 00000008 00000008 00000008 00000007
00000009
        ...
Call Trace: [<80207e94>]  [<8020805c>]  [<80207ddc>]  [<802087c8>]
[<80141ba0>]
  [<801004e8>]  [<80103870>]  [<80103860>]

Code: 00431021  8c440018  8c900000 <8e030000> 8e020004  0062102b  10400007
2611
0010  00031080
Kernel panic - not syncing: Attempted to kill init!



----- Original Message ----- 
From: "Sergei Shtylyov" <sshtylyov@ru.mvista.com>
To: "Markus Gothe" <markus.gothe@27m.se>
Cc: "colin" <colin@realtek.com.tw>; <linux-mips@linux-mips.org>
Sent: Sunday, July 29, 2007 11:13 PM
Subject: Re: [SPAM] Linux 2.6.12 cannot run on 24K. Please give me some
clues.


Hello.

Markus Gothe wrote:

> Seems to me that running in EXkLusive/supervisor mode is the culprit.

    EXL doesn't mean "exclusive", it means "exception level". And you'll
always see this bit set in an oops happening when the kernel is handling
exception (I'm not saying that it's actually set during all that time, just
that the handler is entered with EXL=1 and that walue of the Status regs is
saved on stack and later dumped along with the other regs)

> Try changing that before you get to userspace...

> On 24 Jul, 2007, at 09:09 , colin wrote:
>
>>
>> Hi all,
>> Could you help me on porting MIPS Linux?
>>
>> Our first embedded system using 4Kec is running very well on Linux
>> 2.6.12.
>> Now the second chip using 24K has problems. I found that mtf0 and
>> mtc0 have
>> hazard problem and I have solved it.
>> static inline void unmask_mips_irq(unsigned int irq)
>> {
>>         set_c0_status(0x100 << (irq - mips_cpu_irq_base));
>>         irq_enable_hazard();
>> }
>>
>> Now Linux can continue running and then it will encounter problems  when
>> running the first application, init. I will appreciate your clues for
>> helping me on this probem. :D
>>
>> Colin
>>
>> ÿttyS0 at MMIO 0x0 (irq = 3) is a 16550A
>> ttyS1 at MMIO 0x0 (irq = 3) is a 16550A
>> io scheduler noop registered
>> Freeing prom memory: 0kb freed
>> Reclaim bootloader memory from 80010000 to 800f0000
>> Freeing unused kernel memory: 252k freed
>> CPU 0 Unable to handle kernel paging request at virtual address
>> ffffff88,
>> epc == 00440f10, ra == 004000e4

   It's not a kernel address, BTW...

>> Oops in arch/mips/mm/fault.c::do_page_fault, line 167[#1]:
>> Cpu 0
>> $ 0   : 00000000 10000990 00400090 00000000
>> $ 4   : 7fdd5ed0 7fdd5f94 00000000 7fdd5f94
>> $ 8   : 00000000 00000000 80001cb2 00000b3b
>> $12   : 7f1c0300 0001ffff 0001ffff 00000115
>> $16   : 801f5e04 00000000 00000000 00000000
>> $20   : 00000000 00000000 00000000 00000000
>> $24   : 00000000 00440f00
>> $28   : 10008c70 7fdd5e18 7fdd5e38 004000e4
>> Hi    : 00000000
>> Lo    : 00000000
>> epc   : 00440f10     Not tainted
>> ra    : 004000e4 Status: 00006802    KERNEL EXL
>> Cause : 0880400c
>> BadVA : ffffff88
>> PrId  : 00019378
>> Process init (pid: 1, threadinfo=80848000, task=80854bd8)
>> Stack : 00000000 00000000 10008c70 00000000 10008c70 7fdd5e38 10008c70
>> 004276e4
>>         00000000 00000000 00000000 00000000 10008c70 00000000 7fdd5f9c
>> 00000000
>>         00000000 00000000 00000000 00000000 00000000 00000000 00000003
>> 00400034
>>         00000004 00000020 00000005 00000002 00000006 00001000 00000007
>> 000000

WBR, Sergei

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2007-07-30  3:45 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-07-24  7:09 Linux 2.6.12 cannot run on 24K. Please give me some clues colin
2007-07-24  7:09 ` colin
2007-07-24 12:20 ` Maciej W. Rozycki
2007-07-26  7:03 ` [SPAM] " Markus Gothe
2007-07-26  7:03   ` Markus Gothe
2007-07-26 10:57   ` Maciej W. Rozycki
2007-07-29 15:13   ` Sergei Shtylyov
2007-07-30  3:45     ` colin
2007-07-30  3:45       ` colin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.