[CentOS] CentOS 7 kernel console under KVM?

Wed Oct 8 21:03:43 UTC 2014
Chris Adams <linux at cmadams.net>

Once upon a time, m.roth at 5-cent.us <m.roth at 5-cent.us> said:
> Any idea if pts's are set up? Also, is this of any help
> <http://wiki.libvirt.org/page/Unable_to_connect_to_console_of_a_running_domain>?

That's the "old" way (the way virt-install defaults for RHEL6 and
before).  The "new and improved" way is a direct virtualized device.

Here's what virt-install would set for the old way:

    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>

And here's what you get when you say RHEL7:

    <console type='pty'>
      <target type='virtio' port='0'/>
    </console>

That works for setting up a hvc0 device in the guest.  It appears that
it is implemented through a kernel module, virtio_console.  Now, from
past experience, the kernel is supposed to be able to handle consoles
that only show up when modules are loaded (e.g. USB serial), so that
_should_ work.  The kernel crash is a bug I guess; the virtio_console
module appears to have some "issues" as well (not refcounted properly
for example; I can unload the module while I'm logged in through a getty
on hvc0, which then goes away).

I need to try a Fedora guest and see what happens (have to wait on that,
don't have a Fedora tree at work to install from).  Could be a general
kernel bug, or could just be RHEL7's kernel.

Still, no matter what, virtio console leaves out the boot loader.  Maybe
I'll file a bug against Fedora (or upstream) virt-manager that virtio
console shouldn't be used by default.
-- 
Chris Adams <linux at cmadams.net>