[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-users] Xen serial console has only 7 bit?

On Mon, 2015-07-27 at 18:24 +0200, Manfred Haertel, DB3HM wrote:
> I tried to use the Xen serial console, as described in 
> http://wiki.xen.org/wiki/Xen_Serial_Console . I also used the resulting 
> xvc0 device as a console of the DOM0 Linux.
> Everything was working fine, and I could explore the features of the Xen 
> console. Almost everything... Finally I discovered, that when logging in 
> to Linux on the serial console, I could not use german umlauts. It 
> seemed as if the most significant bit was masked off during input.
> After a long search, what I was doing wrong I saw this line of code 
> inside the Xen serial driver:
> http://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/drivers/char/serial
> .c;h=c583a48c0823e7bf2619a1a63f05da3bfbd20e3d;hb=HEAD#l300
> OK, this explains the behaviour. But what is the intention of this line? 

Way before my time, but I think it used to be possible to multiplex both
the console and something else (remote gdb server?) over the serial line by
differentiating on the top bit. Or possibly "Xen" vs "dom0" were
multiplexed in this way.

TBH I've not heard of anyone actually doing this and I have no idea what
software is needed to support it on the other end.

And I just found docs/misc/crashdb.txt, which seems to explain some of it.

> Shouldn't this actually be something like
> if (handle & SERHND_HI)
> {
>      c &= 0x7f;
> }

That sounds/looks rather plausible to me. This code has been as it was for
more than a decade, which surely makes it a candidate for the oldest bug
found so far!

I think it would be appropriate for you to raise this on xen-devel. If you
feel up to it then submitting it as a patch would best I think. 
http://wiki.xen.org/wiki/Submitting_Xen_Patches has some helpful guidance
on that.


Xen-users mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.