no output to serial console from /init process on ml405

Anton Kowalski antonkowalski at gmail.com
Thu Aug 9 05:31:28 EST 2007


On 8/8/07, Wolfgang Reissnegger <wolfgang.reissnegger at xilinx.com> wrote:
> The thing that points to a problem with init is:
>   Kernel panic - not syncing: Attempted to kill init!
>
> What is the string that is supposed to be printed? Maybe the printf
> tries to print a string at an invalid address, causing init to crash?
>

To test that hypothesis, I created a program that loops indefinitely:

  for (;;) {
          printf("hello\n");
          sleep(1);
  }
  return 0;

This produces the following output:

[    2.715404] Freeing unused kernel memory: 116k init
[    2.776225] sys_write 1
[    3.808186] sys_write 1
[    4.840192] sys_write 1
[    5.872181] sys_write 1
[    6.904193] sys_write 1
[    7.936181] sys_write 1
....

The string "sys_write 1" is from a printk I inserted into sys_write.

So init doesn't crash, which suggests that I haven't set up the /dev
files correctly.

Thanks again.

Anton

> Also, you can check if you set the option for console on serial output:
>   Location:
>     -> Device Drivers
>       -> Character devices
>         -> Serial drivers
>           -> 8250/16550 and compatible serial support (SERIAL_8250 [=y])
>
> Cheers,
>    Wolfgang
>
> Anton Kowalski wrote:
> > Wolfgang,
> >
> > Thanks, I'll try your suggestion.
> >
> > It's worth noting that the init executable is calling into the
> > kernel.
> >
> > I put a printk in sys_write, which is on the call path of printf()
> > and the output is sent to the console. However, the output of printf
> > is not to be seen. This suggests the problem is perhaps in the serial
> >  device setup?
> >
> > Anton
> >
> > On 8/8/07, Wolfgang Reissnegger <wolfgang.reissnegger at xilinx.com>
> > wrote:
> >> Hi Anton,
> >>
> >> it looks as if your init executable is not doing the right thing
> >> and for some reason terminates. Maybe your inittab configuration is
> >> wrong? Maybe the init executable has been compiled with the wrong
> >> options?
> >>
> >> You can try to copy another executable (e.g. sh, getty) into /init
> >> and see if you get any output. If you see anything doing that then
> >> most likely there's something wrong with your init executable.
> >>
> >> Wolfgang
> >>
> >> Anton Kowalski wrote:
> >>> Hi All:
> >>>
> >>> I'm trying to bring up linux 2.6.21.1 on an ml405 board. The
> >>> kernel boots fine but the init process does not produce any
> >>> output. The /init program resides in an initramfs file system and
> >>> I believe the /dev device files have been set up correctly.
> >>> Here's an excerpt from my initramfs specification:
> >>>
> >>> dir /dev 755 0 0 nod /dev/console 644 0 0 c 5 1 nod /dev/ttyS0
> >>> 644 0 0 c 4 64
> >>>
> >>> (I am able to open these files from the init program. I tested
> >>> this by sleeping for a specified time on success.)
> >>>
> >>> Also, printk continues to function after /init terminates and
> >>> before the kernel panics.
> >>>
> >>> Here are the last few lines of the console output:
> >>>
> >>> [    0.507478] Serial: 8250/16550 driver $Revision: 1.90 $ 4
> >>> ports, IRQ sharing disabled [    0.513862] serial8250.0: ttyS0 at
> >>> MMIO 0x80201003 (irq = 3) is a 16550A [    2.927509] RAMDISK
> >>> driver initialized: 1 RAM disks of 8192K size 1024 blocksize [
> >>> 3.018391] tun: Universal TUN/TAP device driver, 1.6 [
> >>> 3.079115] tun: (C) 1999-2004 Max Krasnyansky <maxk at qualcomm.com>
> >>> [    3.154919] mice: PS/2 mouse device common for all mice [
> >>> 3.218021] TCP cubic registered [    3.257034] NET: Registered
> >>> protocol family 1 [    3.309405] NET: Registered protocol family
> >>> 17 [    3.363462] Freeing unused kernel memory: 300k init [
> >>> 23.488277] Kernel panic - not syncing: Attempted to kill init! [
> >>> 23.559517] Rebooting in 180 seconds..<NULL>
> >>>
> >>> I'm using the plb uart and the 8250.c driver. (The obp uartlite
> >>> driver didn't work so I switched.) The kernel and the init
> >>> program were compiled with eldk.
> >>>
> >>> Any insights into resolving this problem are greatly appreciated.
> >>>
> >>>
> >>>
> >>> Anton _______________________________________________
> >>> Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org
> >>> https://ozlabs.org/mailman/listinfo/linuxppc-embedded
> >>>
> >>
> >
>
>


More information about the Linuxppc-embedded mailing list