* 64bit kernel not booting with CONFIG_PRINTK_TIME=y
@ 2008-07-16 17:58 Guy Martin
0 siblings, 0 replies; 9+ messages in thread
From: Guy Martin @ 2008-07-16 17:58 UTC (permalink / raw)
To: parisc-linux
Hi all,
I've been trying several times to boot a 64bit kernel with
CONFIG_PRINTK_TIME=y and each time it failed.
This is the output of my L2000 when trying to do so :
Information: No console specified on kernel command line. This is
normal. PALO will choose the console currently used by firmware
(serial). Command line for kernel: 'root=/dev/md1 console=ttyS0
palo_kernel=2/vmlinux' Selected kernel: /vmlinux from partition 2
ELF64 executable
Entry 00100000 first 00100000 n 2
Segment 0 load 00100000 size 4997120 mediaptr 0x1000
Segment 1 load 00634000 size 640576 mediaptr 0x4c5000
Branching to kernel entry point 0x00100000. If this is the last
message you see, you may need to switch your console. This is
a common symptom -- search the FAQ and mailing list at parisc-linux.org
************* SYSTEM ALERT **************
SYSTEM NAME: uninitialized
DATE: 07/16/2008 TIME: 17:47:39
ALERT LEVEL: 7 = reserved
REASON FOR ALERT
SOURCE: 0 = unknown, no source stated
SOURCE DETAIL: 0 = unknown, no source stated SOURCE ID: FF
PROBLEM DETAIL: 0 = no problem detail
LEDs: RUN ATTENTION FAULT REMOTE POWER
FLASH FLASH OFF ON ON
LED State: Running non-OS code. Non-critical error detected.
Check Chassis and Console Logs for error messages.
0x0000007000FF6292 000000F0 F0000000 - type 0 = Data Field Unused
0x5800087000FF6292 00006C06 10112F27 - type 11 = Timestamp 07/16/2008
17:47:39 A: ack read of this entry - X: Disable all future alert
messages Anything else skip redisplay the log entry
->Choice:Timeout!
*****************************************
Recompiling with CONFIG_PRINTK_TIME=n makes it works straight away.
How can this be troubleshooted ? Any idea what the problem could be ?
I'm using gcc-4.2.4 with kernel 2.6.26 but I've have had very same
results with gcc-4.1.2 and 2.6.25.
Cheers,
Guy
--
Guy Martin
Gentoo Linux - HPPA port lead
^ permalink raw reply [flat|nested] 9+ messages in thread
* 64bit kernel not booting with CONFIG_PRINTK_TIME=y
@ 2008-07-16 18:45 Guy Martin
2008-07-16 18:56 ` Kyle McMartin
0 siblings, 1 reply; 9+ messages in thread
From: Guy Martin @ 2008-07-16 18:45 UTC (permalink / raw)
To: linux-kernel
Hi all,
I've been trying several times to boot a 64bit kernel with
CONFIG_PRINTK_TIME=y and each time it failed.
This is the output of my L2000 when trying to do so :
Information: No console specified on kernel command line. This is
normal. PALO will choose the console currently used by firmware
(serial). Command line for kernel: 'root=/dev/md1 console=ttyS0
palo_kernel=2/vmlinux' Selected kernel: /vmlinux from partition 2
ELF64 executable
Entry 00100000 first 00100000 n 2
Segment 0 load 00100000 size 4997120 mediaptr 0x1000
Segment 1 load 00634000 size 640576 mediaptr 0x4c5000
Branching to kernel entry point 0x00100000. If this is the last
message you see, you may need to switch your console. This is
a common symptom -- search the FAQ and mailing list at parisc-linux.org
************* SYSTEM ALERT **************
SYSTEM NAME: uninitialized
DATE: 07/16/2008 TIME: 17:47:39
ALERT LEVEL: 7 = reserved
REASON FOR ALERT
SOURCE: 0 = unknown, no source stated
SOURCE DETAIL: 0 = unknown, no source stated SOURCE ID: FF
PROBLEM DETAIL: 0 = no problem detail
LEDs: RUN ATTENTION FAULT REMOTE POWER
FLASH FLASH OFF ON ON
LED State: Running non-OS code. Non-critical error detected.
Check Chassis and Console Logs for error messages.
0x0000007000FF6292 000000F0 F0000000 - type 0 = Data Field Unused
0x5800087000FF6292 00006C06 10112F27 - type 11 = Timestamp 07/16/2008
17:47:39 A: ack read of this entry - X: Disable all future alert
messages Anything else skip redisplay the log entry
->Choice:Timeout!
*****************************************
Recompiling with CONFIG_PRINTK_TIME=n makes it works straight away.
How can this be troubleshooted ? Any idea what the problem could be ?
I'm using gcc-4.2.4 with kernel 2.6.26 but I've have had very same
results with gcc-4.1.2 and 2.6.25.
Cheers,
Guy
--
Guy Martin
Gentoo Linux - HPPA port lead
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 64bit kernel not booting with CONFIG_PRINTK_TIME=y
2008-07-16 18:45 64bit kernel not booting with CONFIG_PRINTK_TIME=y Guy Martin
@ 2008-07-16 18:56 ` Kyle McMartin
2008-07-17 18:33 ` Kyle McMartin
0 siblings, 1 reply; 9+ messages in thread
From: Kyle McMartin @ 2008-07-16 18:56 UTC (permalink / raw)
To: Guy Martin; +Cc: linux-kernel, linux-parisc
On Wed, Jul 16, 2008 at 08:45:52PM +0200, Guy Martin wrote:
>
> This is the output of my L2000 when trying to do so :
>
> Information: No console specified on kernel command line. This is
> normal. PALO will choose the console currently used by firmware
> (serial). Command line for kernel: 'root=/dev/md1 console=ttyS0
> palo_kernel=2/vmlinux' Selected kernel: /vmlinux from partition 2
> ELF64 executable
> Entry 00100000 first 00100000 n 2
> Segment 0 load 00100000 size 4997120 mediaptr 0x1000
> Segment 1 load 00634000 size 640576 mediaptr 0x4c5000
> Branching to kernel entry point 0x00100000. If this is the last
> message you see, you may need to switch your console. This is
> a common symptom -- search the FAQ and mailing list at parisc-linux.org
>
Wrong mailing list. :)
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 64bit kernel not booting with CONFIG_PRINTK_TIME=y
2008-07-16 18:56 ` Kyle McMartin
@ 2008-07-17 18:33 ` Kyle McMartin
0 siblings, 0 replies; 9+ messages in thread
From: Kyle McMartin @ 2008-07-17 18:33 UTC (permalink / raw)
To: Guy Martin; +Cc: linux-kernel, linux-parisc
On Wed, Jul 16, 2008 at 02:56:27PM -0400, Kyle McMartin wrote:
> On Wed, Jul 16, 2008 at 08:45:52PM +0200, Guy Martin wrote:
> >
> > This is the output of my L2000 when trying to do so :
> >
> > Information: No console specified on kernel command line. This is
> > normal. PALO will choose the console currently used by firmware
> > (serial). Command line for kernel: 'root=/dev/md1 console=ttyS0
> > palo_kernel=2/vmlinux' Selected kernel: /vmlinux from partition 2
> > ELF64 executable
> > Entry 00100000 first 00100000 n 2
> > Segment 0 load 00100000 size 4997120 mediaptr 0x1000
> > Segment 1 load 00634000 size 640576 mediaptr 0x4c5000
> > Branching to kernel entry point 0x00100000. If this is the last
> > message you see, you may need to switch your console. This is
> > a common symptom -- search the FAQ and mailing list at parisc-linux.org
> >
>
How about if you boot with printk_time=0, whilst CONFIG_PRINTK_TIME=y?
r, Kyle
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 64bit kernel not booting with CONFIG_PRINTK_TIME=y
[not found] <20080717190502.74c238d5@bleh.bxl.tuxicoman.be>
@ 2008-07-19 21:54 ` Kyle McMartin
2008-07-19 23:04 ` Kyle McMartin
0 siblings, 1 reply; 9+ messages in thread
From: Kyle McMartin @ 2008-07-19 21:54 UTC (permalink / raw)
To: Guy Martin; +Cc: linux-parisc, linux-kernel
On Thu, Jul 17, 2008 at 07:05:02PM +0200, Guy Martin wrote:
>
> Recompiling with CONFIG_PRINTK_TIME=n makes it works straight away.
>
The problem is kernel/printk.c around line 731.
t = jiffies * (NSEC_PER_SEC / HZ);
do_div(t, 10000000000); is doing some badness (which is hard as hell to
debug since printk isn't working.)
It's doing some sort of bollocks when jiffies is between 9 and 10...
do_div being:
# define do_div(n,base) ({ \
uint32_t __base = (base); \
uint32_t __rem; \
__rem = ((uint64_t)(n)) % __base; \
(n) = ((uint64_t)(n)) / __base; \
__rem; \
})
I'm *guessing* that umoddi3 or udivdi3 is doing an xmpyu or something,
which since this is probably before fpu init, is trapping, which is
trying to printk, which is recursively exploding.
regards, Kyle
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 64bit kernel not booting with CONFIG_PRINTK_TIME=y
2008-07-19 21:54 ` Kyle McMartin
@ 2008-07-19 23:04 ` Kyle McMartin
2008-07-20 9:23 ` Guy Martin
0 siblings, 1 reply; 9+ messages in thread
From: Kyle McMartin @ 2008-07-19 23:04 UTC (permalink / raw)
To: Guy Martin; +Cc: linux-parisc, linux-kernel
On Sat, Jul 19, 2008 at 05:54:59PM -0400, Kyle McMartin wrote:
> I'm *guessing* that umoddi3 or udivdi3 is doing an xmpyu or something,
> which since this is probably before fpu init, is trapping, which is
> trying to printk, which is recursively exploding.
>
If my guess is right, this quick fix might work. Can you please test it,
as my a500 decided to have its scsi controller die in the middle of
this...
(Proper fix is probably to bring fpu bringup into head.S, since it will
be necessary for any printk with CONFIG_PRINTK_TIME on. (Or bring back
my use embedded libgcc patch, which was buggy on 32-bit. :\ ))
diff --git a/init/main.c b/init/main.c
index edeace0..729b150 100644
--- a/init/main.c
+++ b/init/main.c
@@ -560,9 +560,9 @@ asmlinkage void __init start_kernel(void)
tick_init();
boot_cpu_init();
page_address_init();
+ setup_arch(&command_line);
printk(KERN_NOTICE);
printk(linux_banner);
- setup_arch(&command_line);
mm_init_owner(&init_mm, &init_task);
setup_command_line(command_line);
unwind_setup();
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: 64bit kernel not booting with CONFIG_PRINTK_TIME=y
2008-07-19 23:04 ` Kyle McMartin
@ 2008-07-20 9:23 ` Guy Martin
2008-07-29 4:29 ` Kyle McMartin
0 siblings, 1 reply; 9+ messages in thread
From: Guy Martin @ 2008-07-20 9:23 UTC (permalink / raw)
To: Kyle McMartin; +Cc: linux-parisc, linux-kernel
Hi Kyle,
Thanks, this does work like a charm. This is the output now :
Branching to kernel entry point 0x00100000. If this is the last
message you see, you may need to switch your console. This is
a common symptom -- search the FAQ and mailing list at parisc-linux.org
[ 0.000000] FP[0] enabled: Rev 1 Model 16
[ 0.000000] The 64-bit Kernel has started...
[ 0.000000] console [ttyB0] enabled
[ 0.000000] Initialized PDC Console for debugging.
[ 0.000000] Determining PDC firmware type: 64 bit PAT.
[ 0.000000] model 00005d90 00000491 00000000 00000002 09972987 100000f0 00000008 000000b2 000000b2
[ 0.000000] vers 00000301
[ 0.000000] CPUID vers 18 rev 11 (0x0000024b)
[ 0.000000] capabilities 0x1
[ 0.000000] model 9000/800/L2000-5X
[ 0.000000] Memory Ranges:
[ 0.000000] 0) Start 0x0000000000000000 End 0x00000000efffffff Size 3840 MB
[ 0.000000] 1) Start 0x00000010f0000000 End 0x00000010ffffffff Size 256 MB
[ 0.000000] Total Memory: 4096 MB
[ 0.000000] Linux version 2.6.26 (root@spiderman) (gcc version 4.2.4 (Gentoo 4.2.4 p1.0)) #5 SMP Sun Jul 20 11:12:00 CEST 2008
[ 0.000000] SMP: bootstrap CPU ID is 0
[17179569.184000] Built 2 zonelists in Zone order, mobility grouping on. Total pages: 1034240
[17179569.184000] Kernel command line: root=/dev/md1 console=ttyS0 palo_kernel=2/vmlinux.test
[17179569.184000] PID hash table entries: 4096 (order: 12, 32768 bytes)
[17179569.184000] Console: colour dummy device 160x64
[17179569.196000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes)
[17179569.216000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes)
[17179569.676000] Memory: 4115968k/4194304k available (3467k kernel code, 77952k reserved, 1364k data, 244k init)
[17179569.776000] Mount-cache hash table entries: 256
[17179569.776000] Brought up 1 CPUs
Cheers,
Guy
On Sat, 19 Jul 2008 19:04:18 -0400
Kyle McMartin <kyle@mcmartin.ca> wrote:
> On Sat, Jul 19, 2008 at 05:54:59PM -0400, Kyle McMartin wrote:
> > I'm *guessing* that umoddi3 or udivdi3 is doing an xmpyu or
> > something, which since this is probably before fpu init, is
> > trapping, which is trying to printk, which is recursively exploding.
> >
>
> If my guess is right, this quick fix might work. Can you please test
> it, as my a500 decided to have its scsi controller die in the middle
> of this...
>
> (Proper fix is probably to bring fpu bringup into head.S, since it
> will be necessary for any printk with CONFIG_PRINTK_TIME on. (Or
> bring back my use embedded libgcc patch, which was buggy on
> 32-bit. :\ ))
>
> diff --git a/init/main.c b/init/main.c
> index edeace0..729b150 100644
> --- a/init/main.c
> +++ b/init/main.c
> @@ -560,9 +560,9 @@ asmlinkage void __init start_kernel(void)
> tick_init();
> boot_cpu_init();
> page_address_init();
> + setup_arch(&command_line);
> printk(KERN_NOTICE);
> printk(linux_banner);
> - setup_arch(&command_line);
> mm_init_owner(&init_mm, &init_task);
> setup_command_line(command_line);
> unwind_setup();
--
Guy Martin
Gentoo Linux - HPPA port lead
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 64bit kernel not booting with CONFIG_PRINTK_TIME=y
2008-07-20 9:23 ` Guy Martin
@ 2008-07-29 4:29 ` Kyle McMartin
2008-07-29 17:42 ` Guy Martin
0 siblings, 1 reply; 9+ messages in thread
From: Kyle McMartin @ 2008-07-29 4:29 UTC (permalink / raw)
To: Guy Martin; +Cc: Kyle McMartin, linux-parisc, linux-kernel
On Sun, Jul 20, 2008 at 11:23:45AM +0200, Guy Martin wrote:
> [ 0.000000] FP[0] enabled: Rev 1 Model 16
> [ 0.000000] The 64-bit Kernel has started...
I pushed a better fix to my git tree on kernel.org on top of
v2.6.27-rc1. Can you test that?
r, Kyle
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: 64bit kernel not booting with CONFIG_PRINTK_TIME=y
2008-07-29 4:29 ` Kyle McMartin
@ 2008-07-29 17:42 ` Guy Martin
0 siblings, 0 replies; 9+ messages in thread
From: Guy Martin @ 2008-07-29 17:42 UTC (permalink / raw)
To: Kyle McMartin; +Cc: linux-parisc, linux-kernel
Hi Kyle,
Works like a charm !
ELF64 executable
Entry 00100000 first 00100000 n 3
Segment 0 load 00100000 size 5029888 mediaptr 0x1000
Segment 1 load 0063c000 size 395176 mediaptr 0x4cd000
Segment 2 load 006a0000 size 251456 mediaptr 0x52e000
Branching to kernel entry point 0x00100000. If this is the last
message you see, you may need to switch your console. This is
a common symptom -- search the FAQ and mailing list at parisc-linux.org
[17179569.184000] Linux version 2.6.27-rc1 (root@spiderman) (gcc version 4.2.4 (Gentoo 4.2.4 p1.0)) #1 SMP Tue Jul 29 19:32:01 CEST 2008
[17179569.184000] FP[0] enabled: Rev 1 Model 16
[17179569.184000] The 64-bit Kernel has started...
[17179569.184000] console [ttyB0] enabled
[17179569.184000] Initialized PDC Console for debugging.
[17179569.184000] Determining PDC firmware type: 64 bit PAT.
Thanks,
Guy
On Tue, 29 Jul 2008 00:29:29 -0400
Kyle McMartin <kyle@mcmartin.ca> wrote:
> On Sun, Jul 20, 2008 at 11:23:45AM +0200, Guy Martin wrote:
> > [ 0.000000] FP[0] enabled: Rev 1 Model 16
> > [ 0.000000] The 64-bit Kernel has started...
>
> I pushed a better fix to my git tree on kernel.org on top of
> v2.6.27-rc1. Can you test that?
>
> r, Kyle
--
Guy Martin
Gentoo Linux - HPPA port lead
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2008-07-29 17:43 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-16 18:45 64bit kernel not booting with CONFIG_PRINTK_TIME=y Guy Martin
2008-07-16 18:56 ` Kyle McMartin
2008-07-17 18:33 ` Kyle McMartin
[not found] <20080717190502.74c238d5@bleh.bxl.tuxicoman.be>
2008-07-19 21:54 ` Kyle McMartin
2008-07-19 23:04 ` Kyle McMartin
2008-07-20 9:23 ` Guy Martin
2008-07-29 4:29 ` Kyle McMartin
2008-07-29 17:42 ` Guy Martin
-- strict thread matches above, loose matches on Subject: below --
2008-07-16 17:58 Guy Martin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox