Bug 213938 - Xen dom0 serial device returns -EINVAL on TIOCGSERIAL
Summary: Xen dom0 serial device returns -EINVAL on TIOCGSERIAL
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel-xen
Version: 6
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Markus Armbruster
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2006-11-03 20:59 UTC by Bill Nottingham
Modified: 2014-03-17 03:03 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-03-28 09:38:51 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Bill Nottingham 2006-11-03 20:59:33 UTC
Description of problem:

Realistically, if it's taking the place of a serial port, it would be
nice if it behaved a little more like one.

Would prevent configuring it as a serial console automatically, among
other things.

Version-Release number of selected component (if applicable):

kernel-xen-2.6.18-1.2798.fc6

Comment 1 Stephen Tweedie 2006-11-03 22:36:00 UTC
There are different approaches we could take here.  The underlying problem is
that  there's only one console driver, but it's being attached in different
places depending on dom0 vs. domU, kernel options etc.

On dom0, with HV set up as com1=38400,8n1, I can give the kernel "xencons=xvc
console=xvc0" and kudzu *does* set up a console correctly.

In that case, how is kudzu detecting xvc0?  Making the kernel's ttyS0 "behave a
little more like" xvc0 would make a lot more sense than making it more like a
real serial driver, because it *is* a xen virtual console, routed through the HV.

Comment 2 Bill Nottingham 2006-11-06 16:56:27 UTC
It opens xvc0, compares the terminal attributes to /dev/console. That isn't
really reliable to do unilaterally on a serial port.

Comment 4 Markus Armbruster 2007-03-28 09:38:51 UTC
xencons hijacks /dev/ttyS0 in dom0 if parameter xencons is not set, and in both
dom0 and domU if xencons=ttyS0.

Hijacking /dev/ttyS0 saves the user from having to set up getty on the proper
xen console device /dev/xvc0.  But it breaks programs that (reasonably!) assume
that /dev/ttyS0 is a serial device, which the xen console isn't.

One could attempt to turn the xen console into a more credible impostor of a
serial device, but that would have to happen upstream.  I doubt its worthwhile.
 That's why I close with resolution WONTFIX rather than UPSTREAM.

Instead, we should remove hijacking: make sure that xencons=xvc just works, and
make it the default.

If you disagree, please reopen the bug.



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