Bug 433771 - Unable to have outputs on both VGA and serial consoles by default when booting into dom0
Summary: Unable to have outputs on both VGA and serial consoles by default when bootin...
Keywords:
Status: CLOSED DEFERRED
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel-xen
Version: 5.2
Hardware: ia64
OS: Linux
low
low
Target Milestone: rc
: ---
Assignee: Xen Maintainance List
QA Contact: Martin Jenner
URL:
Whiteboard:
Depends On:
Blocks: RHEL5u2_relnotes
TreeView+ depends on / blocked
 
Reported: 2008-02-21 12:31 UTC by Qian Cai
Modified: 2008-04-02 02:17 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-03-20 06:57:45 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
sosreport (1.43 MB, application/x-bzip)
2008-02-21 12:31 UTC, Qian Cai
no flags Details

Description Qian Cai 2008-02-21 12:31:12 UTC
Description of problem:
When booting Hitachi S6E4433 Cold Fusion 3e machine into dom0, there is no
output from a remote serial console after the following message,

ELILO boot: Uncompressing Linux... done
Loading file initrd-2.6.18-82.el5xen.img...done
Loading file vmlinuz-2.6.18-82.el5xen...done
Uncompressing... done

However, the system is actually booting successfully. The original line in
elilo.conf is,

append="-- rhgb quiet"

If I modified it to,

append="-- console=tty0"

I am able to see output from VGA console (I believed it is a known issue).
However, even if I tried the following modifications with the help from
Virtualization Guide,

append="-- console=tty console=xvc xencons=xvc"
append="-- console=tty0 console=xvc xencons=xvc"
append="-- console=tty console=ttyS019200"
append="-- console=tty0 console=ttyS0,19200n8"

there is still no output from serial console, and look like the serial device is
not there,

[root@shangrila ~]# echo hello > /dev/ttyS0
-bash: /dev/ttyS0: No such device or address

In addition, it is probably related to BZ431087.

Version-Release number of selected component (if applicable):
kernel-xen 2.6.18-82.el5xen
(It is the same for RHEL5.1 stock kernel -53.el5xen.)
(Non-xen kernel is perfectly fine.)

Comment 1 Qian Cai 2008-02-21 12:31:12 UTC
Created attachment 295500 [details]
sosreport

Comment 2 Markus Armbruster 2008-02-21 13:21:49 UTC
Complete elilo.conf, please.

Comment 3 Qian Cai 2008-02-21 13:30:23 UTC
prompt
timeout=20
default=2.6.18-82.el5xen
relocatable

image=vmlinuz-2.6.18-82.el5xen
        vmm=xen.gz-2.6.18-82.el5
        label=2.6.18-82.el5xen
        initrd=initrd-2.6.18-82.el5xen.img
        read-only
        root=/dev/VolGroup00/LogVol00
        append="-- console=tty0 console=ttyS019200"
image=vmlinuz-2.6.9-67.EL
        label=2.6.9-67.EL
        initrd=initrd-2.6.9-67.EL.img
        read-only
        root=/dev/VolGroup00/LogVol01
        append="rhgb quiet console=tty0 console=ttyS0,19200n8"
image=vmlinuz-2.6.9-55.EL
        label=2.6.9-55.EL
        initrd=initrd-2.6.9-55.EL.img
        read-only
        root=/dev/VolGroup00/LogVol02
        append="rhgb quiet console=tty0 console=ttyS0,19200n8"
image=vmlinuz-rhel4.5
        label=reinstall-rhel4.5
        initrd=initrd-rhel4.5.img
        append="ks=nfs:walsinh.nay.redhat.com:/nfs/ks/shangrila-rhel4.5.ks
ksdevice=eth1 console=tty0 console=ttyS0,19200n8"
image=vmlinuz-rhel4.6
        label=reinstall-rhel4.6
        initrd=initrd-rhel4.6.img
        append="ks=nfs:walsinh.nay.redhat.com:/nfs/ks/shangrila-rhel4.6.ks
ksdevice=eth1 console=tty0 console=ttyS0,19200n8"
image=vmlinuz-rhel5.1
        label=reinstall-rhel5.1
        initrd=initrd-rhel5.1.img
        append="ks=nfs:walsinh.nay.redhat.com:/nfs/ks/shangrila-rhel5.1.ks
ksdevice=eth1 console=tty0 console=ttyS0,19200n8"
image=vmlinuz-rhel5.2
        label=reinstall-rhel5.2
        initrd=initrd-rhel5.2.img
        append="ks=nfs:walsinh.nay.redhat.com:/nfs/ks/shangrila-rhel5.2.ks
ksdevice=eth1 console=tty0 console=ttyS0,19200n8"
image=vmlinuz-rhel5.1
        label=reinstall-everything
        initrd=initrd-rhel5.1.img
        append="ks=nfs:walsinh.nay.redhat.com:/nfs/ks/shangrila-rhel5.1-first.ks
ksdevice=eth1 console=tty0 console=ttyS0,19200n8"
image=vmlinuz-2.6.18-53.el5xen
        vmm=xen.gz-2.6.18-53.el5
        label=2.6.18-53.el5xen
        initrd=initrd-2.6.18-53.el5xen.img
        read-only
        root=/dev/VolGroup00/LogVol00
        append="com1=192000,8n1 -- console=tty0 console=ttyS0,19200n8"
image=vmlinuz-2.6.18-79.el5xen
        vmm=xen.gz-2.6.18-79.el5
        label=2.6.18-79.el5xen
        initrd=initrd-2.6.18-79.el5xen.img
        read-only
        root=/dev/VolGroup00/LogVol03
        append="com1=19200, 8n1 -- rhgb quiet console=tty0 console=ttyS0,19200n8"


Comment 4 Jarod Wilson 2008-02-21 15:34:14 UTC
Looks like you're missing part of the serial output configuration on your append
line for label=2.6.18-82.el5xen. The hypervisor also has to be told about the
serial console, similar to what you have on the append line for
label=2.6.18-79.el5xen. Try this append line:

append="com1=19200,8n1 -- rhgb quiet console=ttyS0"

Nb: we do have the same box here in the Westford lab I can go poke at if
necessary, but serial output does work on it, last I remember trying...

Comment 5 Qian Cai 2008-02-22 12:08:17 UTC
After further investigation, I found the actual problem is that there is no way
to have VGA and serial consoles by default. Therefore, changed the title
(original title was "No serial output when booting into dom0") to reflect the
problem as below,

In EFI Boot Maintenance Manager -> Select Active Console Output Devices

 * Acpi(PNP0A03,0)/Pci(1E|0)/Pci(1|0)                              <--- VGA    
                
 * Acpi(PNP0A03,0)/Pci(1F|0)/Acpi(PNP0501,0)/Uart(19200 N81)/VenMsg(Vt100+)

The remote serial console only work (it works even without "com1=19200,8n1",
i.e. without telling hypervisor about serial console) when selecting only the
second one, or disable onboard VGA entirely from EFI Boot Maintenance Manager ->
System Setup -> Devices -> VGA.

The problem here is that if I choose to select only the second one, and save the
setting in NVRAM, I'll still have a do it again after next reboot (the default
will select the both), and also it might not be a good idea to deselect VGA
device from Active Console Output Devices.


Comment 6 Jarod Wilson 2008-02-22 16:15:30 UTC
That sounds more like an EFI firmware bug than a xen bug. Output to both VGA and
serial works just fine on my HP boxes.

Comment 7 Qian Cai 2008-02-28 00:51:41 UTC
I updated to the latest firmware FW_04-21_03-34, but it did not solve the problem.

Comment 8 Jarod Wilson 2008-02-28 03:40:14 UTC
Adding Taka to the cc list. Taka is an onsite engineer from Hitachi, here in
Westford.

Taka, are you aware of any issues with attempting to use both vga and serial
console output simultaneously with a xen kernel on Hitachi Cold Fusion systems?

Comment 9 Takahiro Yasui 2008-03-04 16:26:08 UTC
I tried this on our Cold Fusion 3e, but the result was the same as Cai reported.

- 2.6.18-79.el5
  Both VGA and serial worked at the same time.

- 2.6.18-79.el5xen
  The use of VGA and Serial was exclusive. Serial could not be not detected by
  Xen and DomU kernel when VGA is enabled by EFI Maintenance Manager.

I suspect that it is Xen's or Dom0 kernel's problem because the basic kernel can 
output both on VGA and serial.

A base kernel detects the serial port as follows, however, domU kernel does not
show this message.

<elilo.conf>
append="rhgb console=tty0 console=ttyS0,19200"

<dmesg>
Serial: 8250/16550 driver $Revision: 1.90 $ 16 ports, IRQ sharing enabled
00:01: ttyS0 at I/O 0x3f8 (irq = 44) is a 16550A


Comment 10 Jarod Wilson 2008-03-04 19:30:36 UTC
Taka, does the situation improve any if you use the following append line:

append="com1=19200,8n1 xencons=com1,vga -- rhgb console=tty0 console=ttyS0,19200"

?

The hypervisor may also need to be instructed where the serial console is, since
its not terribly bright. :)

Comment 11 Jarod Wilson 2008-03-04 19:43:11 UTC
Might actually be:

append="com1=19200,8n1 console=com1,vga -- rhgb console=tty0 console=ttyS0,19200"

or

append="com1=19200,8n1 xencons=ttyS,tty -- rhgb console=tty0 console=ttyS0,19200"

Isn't entirely clear to me anymore. Ugh, I dislike xen sometimes... :)

Comment 12 Takahiro Yasui 2008-03-04 19:49:42 UTC
Thanks, Jarod. Xen is a strange creature to me... :)
I will try both options.


Comment 13 Takahiro Yasui 2008-03-04 20:40:31 UTC
I found the following options from the source code of xen.

append="com1=19200,8n1,0x3f8,44 console=ttyS,tty -- rhgb console=tty0
console=ttyS0,19200"

Then, boot messages of xen, "(XEN)", showed up on serial console, but now
domU does not work well. I had a little progress, but I will continue
investigations.


Comment 14 Takahiro Yasui 2008-03-04 20:43:04 UTC
Oops...

> domU does not work well. I had a little progress, but I will continue

domU -> dom0


Comment 15 Takahiro Yasui 2008-03-04 20:56:55 UTC
Finally, I saw messages both on VGA and serial console by this options:

 append="com1=19200,8n1,0x3f8 -- rhgb console=tty0 console=ttyS0,19200"

I don't know why serial is not detected automatically, but we can use serial
console by indicating its io_base address, which I can see in the boot message
on a base kernel.


Comment 16 Qian Cai 2008-03-15 14:21:57 UTC
What could we do here? Should we have a KBase for it? or to go further to fix
either EFI or kernel-xen?

Comment 17 Jarod Wilson 2008-03-15 18:13:11 UTC
I'd say kbase/relnote it for now and see if we can get it fixed properly for 5.3.

Comment 18 Don Domingo 2008-03-17 04:27:41 UTC
the current RHEL5.2 release notes contain the following note (as per BZ#249087):

<quote>
(ia64) On some Itanium systems configured for console output to VGA, the dom0
virtualized kernel may fail to boot. This is because the virtualized kernel
failed to properly detect the default console device from the Extensible
Firmware Interface (EFI) settings.

When this occurs, add the boot parameter console=tty to the kernel boot options
in /boot/efi/elilo.conf
</quote>

please advise if any revisions need to be made to this note, and what. thanks!



Comment 19 Qian Cai 2008-03-17 09:11:22 UTC
Yes, I suggest to add the something like,

On some Itanium systems like Hitachi Cold Fusion 3e, serial port could not be
detected in Dom0 when VGA is enabled by EFI Maintenance Manager. However, the
problem can be solved by indicating serial port's io_base address to Dom0 Kernel
like the following,

append="com1=19200,8n1,0x3f8 -- quiet rhgb console=tty0 console=ttyS0,19200n8"

Comment 20 Don Domingo 2008-03-18 22:44:24 UTC
thanks Cai, revising note as:

<quote>
(ia64) On some Itanium systems (such as the Hitachi Cold Fusion 3e), the serial
port cannot be detected in dom0 when VGA is enabled by the EFI Maintenance
Manager. As such, you need to supply the following serial port information to
the dom0 kernel:

    *

      Speed in bits/second
    *

      Number of data bits
    *

      Parity
    *

      io_base address

These details must be specified in the append= line of the dom0 kernel in
/boot/efi/elilo.conf. For example:

append="com1=19200,8n1,0x3f8 -- quiet rhgb console=tty0 console=ttyS0,19200n8"

In this example, com1 is the serial port, 19200 is the speed (in bits/second),
8n1 specifies the number of data bits/parity settings, and 0x3f8 is the io_base
address.
</quote>

please advise if any further revisions are required. thanks!

Comment 21 Qian Cai 2008-03-20 06:57:45 UTC
Thanks Don. I am going to close this bug then.

Comment 22 Don Domingo 2008-04-02 02:17:08 UTC
Hi,
the RHEL5.2 release notes will be dropped to translation on April 15, 2008, at
which point no further additions or revisions will be entertained.

a mockup of the RHEL5.2 release notes can be viewed at the following link:
http://intranet.corp.redhat.com/ic/intranet/RHEL5u2relnotesmockup.html

please use the aforementioned link to verify if your bugzilla is already in the
release notes (if it needs to be). each item in the release notes contains a
link to its original bug; as such, you can search through the release notes by
bug number.

Cheers,
Don


Note You need to log in before you can comment on or make changes to this bug.