Skip to contentSkip to conversation

How do i see printf output from the purgatory code?

DISCUSSION Jay Lan 3 participants 4 messages Aug 29, 2008

Subsystems (2)
lore
Share & tools
lore
#1 lore raw
Quoted 7 lines · Jay Lan

Specifically, an ia64.

I added printf() to purgatory-ia64.c, compiled, and executed the kexec command from a shell window (ie, not from a script), but i still did not see the printf i put in.

Thanks for help in advance!

IIRC, the printf output in purgatory only shows on the VGA console.

_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec

#2 lore raw

Hi,

Quoted 11 lines · Simon Horman
Quoted 7 lines · Jay Lan

Specifically, an ia64.

I added printf() to purgatory-ia64.c, compiled, and executed the kexec command from a shell window (ie, not from a script), but i still did not see the printf i put in.

Thanks for help in advance!

IIRC, the printf output in purgatory only shows on the VGA console.

No, you just have to call kexec with right parameters:

--console-serial
Enable the serial console.

--serial=port
Specify the serial port for debug output.

--serial-baud=baud_rate
Specify the baud rate of the serial port.

However, I don't know if it works on IA64, especially with SGI consoles I think one would have to patch kexec.

Also, don't use --noio (which is the default on SUSE on IA64 because we had problems on some machines without that parameter).

Bernhard

Signature · 6 lines
Bernhard Walle, SUSE Linux Products GmbH, Architecture Development

_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec
author
#3 lore raw
Quoted 21 lines · Bernhard Walle

Hi,

Quoted 9 lines · Simon Horman
Quoted 7 lines · Jay Lan

Specifically, an ia64.

I added printf() to purgatory-ia64.c, compiled, and executed the kexec command from a shell window (ie, not from a script), but i still did not see the printf i put in.

Thanks for help in advance!

IIRC, the printf output in purgatory only shows on the VGA console.

No, you just have to call kexec with right parameters:

--console-serial
Enable the serial console.

--serial=port
Specify the serial port for debug output.

Quoted 8 lines

--serial-baud=baud_rate
Specify the baud rate of the serial port.

However, I don't know if it works on IA64, especially with SGI consoles I think one would have to patch kexec.

Also, don't use --noio (which is the default on SUSE on IA64 because we had problems on some machines without that parameter).

This is bad news. We need --noio option. :(

I have a 2.6.27 kernel that the kdump kernel would panic on boot, depending on the physical address of 'physical_node_map'. If it is located at the higher half of a 0xffff range, the instruction in build_cnode_tables() in arch/ia64/sn/kernel/setup.c:
memset(physical_node_map, -1, sizeof(physical_node_map));
would overwrite kern_memmap array of the kdump kernel.

It was so because, i think, the purgatory code of kexec creates a boot efi_memmap with memory regions overlaped. The above memset() put 0xff to part of memory of next region.

I am trying to debug the purgatory code :(

- jay

Quoted 3 lines

Bernhard

_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec