[systemd-devel] PATCH: fix logind on xen

Frederic Crozat fcrozat at suse.com
Mon Jan 9 06:46:35 PST 2012


Le samedi 07 janvier 2012 à 00:21 +0100, Lennart Poettering a écrit :
> On Fri, 06.01.12 23:17, Jan Engelhardt (jengelh at medozas.de) wrote:
> 
> > >>>Where
> > >>>does /dev/console point to? i.e. what is the contents of
> > >>>/sys/class/tty/console/active if you do that?
> > >> 
> > >> Sorry, I was unclear. On Xen, you can login on a "text" terminal. When
> > >> doing that, /sys/class/tty/console/active outputs : tty-1 tty0
> > >
> > >Hmm? So it claims "tty0" in that file, bug actually no /dev/tty0 device
> > >exists? That souinds like a kernel bug to me.
> > 
> > 1. xencons=hvc (the modern variant)
> >    creates: /dev/hvc0
> >    implied defaults: console=hvc0
> >    <sysfs>/active: "tty0 hvc0"
> 
> Judging by this the implied default is actually "console=tty0 console=hvc0".
> 
> >    /dev/tty0..63 exist.
> > 
> > 2. xencons=xvc
> >    creates: /dev/xvc0
> >    implied defaults: console=tty0 (!)
> >    <sysfs>/active: "xvc-1 tty0" (bug?)
> >    /dev/tty0..63 exist.
> 
> Judging by this the implied default is actually "console=xvc-1 console=tty0".
> 
> I do wonder where the "-1" comes from, is there an actual device called /dev/xvc-1?
> 
> > 3. xencons=tty
> >    creates: nothing new
> >    implied defaults: console=tty1
> >    <sysfs>/active: "tty-1 tty0" (bug)
> >    /dev/tty1..63 exist (!), no tty0.
> 
> Judging by this the implied default is actually "console=tty-1 console=tty0".
> 
> What's this supposed to mean anyway? That Xen emulates a traditional VC
> of some kind? It's doing a very bad job in that if /dev/tty0 isn't
> there... And what is tty-1 supposed to be? Is there an actual device
> called /dev/tty-1?
> 
> > 4. xencons=ttyS
> >    creates: /dev/ttyS0
> >    implied defaults: console=tty0
> >    <sysfs>/active: "ttyS-1 tty0" (bug...)
> >    /dev/tty0..63 exist.
> 
> Judging by this the implied default is actually "console=ttyS-1 console=tty0".
> 
> Thinking a bit about this my guess is Xen stores -1 as a number for
> the device somewhere and the code that formats the "active" string is a
> bit confused about that. While it probably means that no such console is
> configured the kernel just formats it as-is. Kay, you wrote that code,
> say something!
> 
> And the 3rd setup apparently shows an additional bug.
> 
> Both these issues are clearly kernel bugs, and should be fixed in the
> kernel. Somebody who cares about this should file bugs against the kernel.

I'll ask our Xen folks if they can have a look at it.

-- 
Frederic Crozat <fcrozat at suse.com>
SUSE



More information about the systemd-devel mailing list