Bug 438316 - Various bugs in check_console.c
Summary: Various bugs in check_console.c
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: initscripts
Version: rawhide
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Bill Nottingham
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-03-20 11:20 UTC by David Woodhouse
Modified: 2014-03-17 03:13 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-03-20 14:47:35 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
patch (1.41 KB, patch)
2008-03-20 11:20 UTC, David Woodhouse
no flags Details | Diff

Description David Woodhouse 2008-03-20 11:20:29 UTC
We don't use O_NONBLOCK when opening the serial port to check termios.

We don't zero the serial_structs in check_serial_console(), which we should
because the structs have padding in them, which the kernel won't touch during
the TIOCGSERIAL ioctl -- and which might then cause a compare failure.

We assume <"ttyS%d",si.line> and ignore the si.type field.

The attached patch addresses all three. It's not massively pretty having to have
a hardcoded list of si.type -> "ttyXXX" strings, but it's not really any worse
than just hard-coding ttyS%d. We should fix the kernel to expose this properly.
(cf. http://lkml.org/lkml/2008/2/27/213)

Comment 1 David Woodhouse 2008-03-20 11:20:29 UTC
Created attachment 298683 [details]
patch

Comment 2 David Woodhouse 2008-03-20 11:24:51 UTC
We have a list of 'other' console types in 10-console.rules. Each of these
should probably be filed as a kernel bug, for the kernel to support TIOCGSERIAL
on those ports with an appropriate si.type and si.line. That includes ttySG*,
which currently (ab)uses PORT_16550A afaict. 

Comment 3 Bill Nottingham 2008-03-20 14:47:35 UTC
The 'other' types aren't necessarily /dev/console, though; they are 'other
console-like devices'.

http://git.fedorahosted.org/git/?p=initscripts.git;a=commit;h=f892674d525dde82da15ff1beb38e8e1e448e1d1
and
http://git.fedorahosted.org/git/?p=initscripts.git;a=commit;h=1b13b011cf799297fbd42e0378ec6f8cd99d5644

Will show up in rawhide post-beta.

Comment 4 David Woodhouse 2008-03-26 23:20:38 UTC
Doesn't seem to be there yet...


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