* console=ttyS1 breaks ttyS1 termios and prevents me from logging in
@ 2015-04-08 21:17 Andy Lutomirski
2015-04-08 21:29 ` Peter Hurley
0 siblings, 1 reply; 7+ messages in thread
From: Andy Lutomirski @ 2015-04-08 21:17 UTC (permalink / raw)
To: linux-kernel@vger.kernel.org, Greg Kroah-Hartman, linux-serial,
Jiri Slaby, Theodore Ts'o
Something strange seems to have happened to my serial console setup.
I boot with console=ttyS1,115200n8 and I have a getty running on
/dev/ttyS1.
On older kernels, or if I remove the console= boot parameter, then my
getty works fine. On 3.19.3 with the console= parameter, something's
wrong with termios and I can't log in. Running:
# stty icanon </dev/ttyS1
breaks line this (partial strace results included):
ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or
TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or
TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0
ioctl(0, SNDCTL_TMR_STOP or SNDRV_TIMER_IOCTL_GINFO or TCSETSW,
{B115200 opost -isig icanon -echo ...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or
TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or
TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0
write(2, "stty: ", 6stty: ) = 6
write(2, "standard input: unable to perfor"..., 58standard input:
unable to perform all requested operations) = 58
IOW, the setting didn't stick. On the bad kernel, stty works just
fine on ttyS0. If I switch to using console=ttyS0,115200, then stty
works on ttyS1 and fails on ttyS0.
I have no idea what's going on here. I have two apparently identical
boxes. One of them has this problem and the other doesn't.
Thanks,
Andy
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: console=ttyS1 breaks ttyS1 termios and prevents me from logging in 2015-04-08 21:17 console=ttyS1 breaks ttyS1 termios and prevents me from logging in Andy Lutomirski @ 2015-04-08 21:29 ` Peter Hurley 2015-04-08 21:40 ` Andy Lutomirski 0 siblings, 1 reply; 7+ messages in thread From: Peter Hurley @ 2015-04-08 21:29 UTC (permalink / raw) To: Andy Lutomirski, linux-kernel@vger.kernel.org, Greg Kroah-Hartman, linux-serial, Jiri Slaby, Theodore Ts'o Hi Andy, On 04/08/2015 05:17 PM, Andy Lutomirski wrote: > Something strange seems to have happened to my serial console setup. > I boot with console=ttyS1,115200n8 and I have a getty running on > /dev/ttyS1. > > On older kernels, or if I remove the console= boot parameter, then my > getty works fine. On 3.19.3 with the console= parameter, something's > wrong with termios and I can't log in. Running: Thanks for the report. 1. Please attach your dmesg. 2. Is this behavior new to 3.19.3? (iow, what was the last version that you noticed didn't do this) Regards, Peter Hurley > # stty icanon </dev/ttyS1 > > breaks line this (partial strace results included): > > ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or > TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 > ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or > TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 > ioctl(0, SNDCTL_TMR_STOP or SNDRV_TIMER_IOCTL_GINFO or TCSETSW, > {B115200 opost -isig icanon -echo ...}) = 0 > ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or > TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 > ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or > TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 > write(2, "stty: ", 6stty: ) = 6 > write(2, "standard input: unable to perfor"..., 58standard input: > unable to perform all requested operations) = 58 > > IOW, the setting didn't stick. On the bad kernel, stty works just > fine on ttyS0. If I switch to using console=ttyS0,115200, then stty > works on ttyS1 and fails on ttyS0. > > I have no idea what's going on here. I have two apparently identical > boxes. One of them has this problem and the other doesn't. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: console=ttyS1 breaks ttyS1 termios and prevents me from logging in 2015-04-08 21:29 ` Peter Hurley @ 2015-04-08 21:40 ` Andy Lutomirski 2015-04-08 23:32 ` Peter Hurley 0 siblings, 1 reply; 7+ messages in thread From: Andy Lutomirski @ 2015-04-08 21:40 UTC (permalink / raw) To: Peter Hurley Cc: linux-kernel@vger.kernel.org, Greg Kroah-Hartman, linux-serial, Jiri Slaby, Theodore Ts'o [-- Attachment #1: Type: text/plain, Size: 2364 bytes --] On Wed, Apr 8, 2015 at 2:29 PM, Peter Hurley <peter@hurleysoftware.com> wrote: > Hi Andy, > > On 04/08/2015 05:17 PM, Andy Lutomirski wrote: >> Something strange seems to have happened to my serial console setup. >> I boot with console=ttyS1,115200n8 and I have a getty running on >> /dev/ttyS1. >> >> On older kernels, or if I remove the console= boot parameter, then my >> getty works fine. On 3.19.3 with the console= parameter, something's >> wrong with termios and I can't log in. Running: > > Thanks for the report. > 1. Please attach your dmesg. > 2. Is this behavior new to 3.19.3? (iow, what was the last version > that you noticed didn't do this) I didn't have the problem before I reinstalled this box, upgraded from 3.15 to 3.19.3, and updated by Dell iDRAC7 firmware. Booting into 3.13-something does *not* fix the problem, so I'm not at all convinced that the kernel version matters much. I'll try reverting the iDRAC7 thing, but I don't see why that would make any difference at all to Linux. dmesg attached. I don't even know what to look for there, though. > > Regards, > Peter Hurley > >> # stty icanon </dev/ttyS1 >> >> breaks line this (partial strace results included): >> >> ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or >> TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 >> ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or >> TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 >> ioctl(0, SNDCTL_TMR_STOP or SNDRV_TIMER_IOCTL_GINFO or TCSETSW, >> {B115200 opost -isig icanon -echo ...}) = 0 >> ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or >> TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 >> ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or >> TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 >> write(2, "stty: ", 6stty: ) = 6 >> write(2, "standard input: unable to perfor"..., 58standard input: >> unable to perform all requested operations) = 58 >> >> IOW, the setting didn't stick. On the bad kernel, stty works just >> fine on ttyS0. If I switch to using console=ttyS0,115200, then stty >> works on ttyS1 and fails on ttyS0. >> >> I have no idea what's going on here. I have two apparently identical >> boxes. One of them has this problem and the other doesn't. > -- Andy Lutomirski AMA Capital Management, LLC [-- Attachment #2: dmesg.txt.xz --] [-- Type: application/x-xz, Size: 15080 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: console=ttyS1 breaks ttyS1 termios and prevents me from logging in 2015-04-08 21:40 ` Andy Lutomirski @ 2015-04-08 23:32 ` Peter Hurley 2015-04-09 0:45 ` Andy Lutomirski 0 siblings, 1 reply; 7+ messages in thread From: Peter Hurley @ 2015-04-08 23:32 UTC (permalink / raw) To: Andy Lutomirski Cc: linux-kernel@vger.kernel.org, Greg Kroah-Hartman, linux-serial, Jiri Slaby, Theodore Ts'o On 04/08/2015 05:40 PM, Andy Lutomirski wrote: > On Wed, Apr 8, 2015 at 2:29 PM, Peter Hurley <peter@hurleysoftware.com> wrote: >> Hi Andy, >> >> On 04/08/2015 05:17 PM, Andy Lutomirski wrote: >>> Something strange seems to have happened to my serial console setup. >>> I boot with console=ttyS1,115200n8 and I have a getty running on >>> /dev/ttyS1. >>> >>> On older kernels, or if I remove the console= boot parameter, then my >>> getty works fine. On 3.19.3 with the console= parameter, something's >>> wrong with termios and I can't log in. Running: >> >> Thanks for the report. >> 1. Please attach your dmesg. >> 2. Is this behavior new to 3.19.3? (iow, what was the last version >> that you noticed didn't do this) > > I didn't have the problem before I reinstalled this box, upgraded from > 3.15 to 3.19.3, and updated by Dell iDRAC7 firmware. Booting into > 3.13-something does *not* fix the problem, so I'm not at all convinced > that the kernel version matters much. I'll try reverting the iDRAC7 > thing, but I don't see why that would make any difference at all to > Linux. I think this is related to DRAC; maybe upgrading the firmware reset the Serial communication settings in the system bios? 1. What's your getty command line? 2. Contents of /proc/tty/driver/serial when you think getty is running and waiting for login (shows line signals). Something to test is if you set getty to local line, does it work then. I use agetty so my command line is: /sbin/getty --noreset -8L 115200 ttyS0 vt102 Regards, Peter Hurley > dmesg attached. I don't even know what to look for there, though. > >> >> Regards, >> Peter Hurley >> >>> # stty icanon </dev/ttyS1 >>> >>> breaks line this (partial strace results included): >>> >>> ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or >>> TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 >>> ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or >>> TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 >>> ioctl(0, SNDCTL_TMR_STOP or SNDRV_TIMER_IOCTL_GINFO or TCSETSW, >>> {B115200 opost -isig icanon -echo ...}) = 0 >>> ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or >>> TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 >>> ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or >>> TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 >>> write(2, "stty: ", 6stty: ) = 6 >>> write(2, "standard input: unable to perfor"..., 58standard input: >>> unable to perform all requested operations) = 58 >>> >>> IOW, the setting didn't stick. On the bad kernel, stty works just >>> fine on ttyS0. If I switch to using console=ttyS0,115200, then stty >>> works on ttyS1 and fails on ttyS0. >>> >>> I have no idea what's going on here. I have two apparently identical >>> boxes. One of them has this problem and the other doesn't. >> > > > ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: console=ttyS1 breaks ttyS1 termios and prevents me from logging in 2015-04-08 23:32 ` Peter Hurley @ 2015-04-09 0:45 ` Andy Lutomirski 2015-04-09 1:49 ` Andy Lutomirski 0 siblings, 1 reply; 7+ messages in thread From: Andy Lutomirski @ 2015-04-09 0:45 UTC (permalink / raw) To: Peter Hurley Cc: linux-kernel@vger.kernel.org, Greg Kroah-Hartman, linux-serial, Jiri Slaby, Theodore Ts'o On Wed, Apr 8, 2015 at 4:32 PM, Peter Hurley <peter@hurleysoftware.com> wrote: > On 04/08/2015 05:40 PM, Andy Lutomirski wrote: >> On Wed, Apr 8, 2015 at 2:29 PM, Peter Hurley <peter@hurleysoftware.com> wrote: >>> Hi Andy, >>> >>> On 04/08/2015 05:17 PM, Andy Lutomirski wrote: >>>> Something strange seems to have happened to my serial console setup. >>>> I boot with console=ttyS1,115200n8 and I have a getty running on >>>> /dev/ttyS1. >>>> >>>> On older kernels, or if I remove the console= boot parameter, then my >>>> getty works fine. On 3.19.3 with the console= parameter, something's >>>> wrong with termios and I can't log in. Running: >>> >>> Thanks for the report. >>> 1. Please attach your dmesg. >>> 2. Is this behavior new to 3.19.3? (iow, what was the last version >>> that you noticed didn't do this) >> >> I didn't have the problem before I reinstalled this box, upgraded from >> 3.15 to 3.19.3, and updated by Dell iDRAC7 firmware. Booting into >> 3.13-something does *not* fix the problem, so I'm not at all convinced >> that the kernel version matters much. I'll try reverting the iDRAC7 >> thing, but I don't see why that would make any difference at all to >> Linux. > > I think this is related to DRAC; maybe upgrading the firmware reset > the Serial communication settings in the system bios? > The DRAC pretends to be a 16550, so I don't understand how it could prevent Linux from reprogramming the line discipline. Also, if I remove console=ttyS1,115200 from the kernel command line, it starts working again. > 1. What's your getty command line? /sbin/getty -8 115200 ttyS1 > 2. Contents of /proc/tty/driver/serial when you think getty is running > and waiting for login (shows line signals). With getty running: serinfo:1.0 driver revision: 0: uart:16550A port:000003F8 irq:4 tx:0 rx:0 1: uart:16550A port:000002F8 irq:3 tx:19828 rx:2 RTS|CTS|DTR 2: uart:unknown port:000003E8 irq:4 3: uart:unknown port:000002E8 irq:3 4: uart:unknown port:00000000 irq:0 (getty itself works fine) When I type a username, I get: serinfo:1.0 driver revision: 0: uart:16550A port:000003F8 irq:4 tx:0 rx:0 1: uart:16550A port:000002F8 irq:3 tx:19848 rx:10 RTS|CTS|DTR 2: uart:unknown port:000003E8 irq:4 3: uart:unknown port:000002E8 irq:3 4: uart:unknown port:00000000 irq:0 at that point, login is running, and it's login that doesn't work. > > Something to test is if you set getty to local line, does it work then. > I use agetty so my command line is: > /sbin/getty --noreset -8L 115200 ttyS0 vt102 I tried: # /sbin/getty --noreset -8L 115200 ttyS1 vt102 it has exactly the same problem. By adding a whole bunch of printks, I see that both ttyS0 and ttyS1 make it into uart_set_termios. But now it's time to home... --Andy > > Regards, > Peter Hurley > > >> dmesg attached. I don't even know what to look for there, though. >> >>> >>> Regards, >>> Peter Hurley >>> >>>> # stty icanon </dev/ttyS1 >>>> >>>> breaks line this (partial strace results included): >>>> >>>> ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or >>>> TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 >>>> ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or >>>> TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 >>>> ioctl(0, SNDCTL_TMR_STOP or SNDRV_TIMER_IOCTL_GINFO or TCSETSW, >>>> {B115200 opost -isig icanon -echo ...}) = 0 >>>> ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or >>>> TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 >>>> ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or >>>> TCGETS, {B115200 opost -isig -icanon -echo ...}) = 0 >>>> write(2, "stty: ", 6stty: ) = 6 >>>> write(2, "standard input: unable to perfor"..., 58standard input: >>>> unable to perform all requested operations) = 58 >>>> >>>> IOW, the setting didn't stick. On the bad kernel, stty works just >>>> fine on ttyS0. If I switch to using console=ttyS0,115200, then stty >>>> works on ttyS1 and fails on ttyS0. >>>> >>>> I have no idea what's going on here. I have two apparently identical >>>> boxes. One of them has this problem and the other doesn't. >>> >> >> >> > -- Andy Lutomirski AMA Capital Management, LLC ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: console=ttyS1 breaks ttyS1 termios and prevents me from logging in 2015-04-09 0:45 ` Andy Lutomirski @ 2015-04-09 1:49 ` Andy Lutomirski 2015-04-09 2:09 ` Peter Hurley 0 siblings, 1 reply; 7+ messages in thread From: Andy Lutomirski @ 2015-04-09 1:49 UTC (permalink / raw) To: Peter Hurley Cc: linux-kernel@vger.kernel.org, Greg Kroah-Hartman, linux-serial, Jiri Slaby, Theodore Ts'o On Wed, Apr 8, 2015 at 5:45 PM, Andy Lutomirski <luto@amacapital.net> wrote: > On Wed, Apr 8, 2015 at 4:32 PM, Peter Hurley <peter@hurleysoftware.com> wrote: >> On 04/08/2015 05:40 PM, Andy Lutomirski wrote: >>> On Wed, Apr 8, 2015 at 2:29 PM, Peter Hurley <peter@hurleysoftware.com> wrote: >>>> Hi Andy, >>>> >>>> On 04/08/2015 05:17 PM, Andy Lutomirski wrote: >>>>> Something strange seems to have happened to my serial console setup. >>>>> I boot with console=ttyS1,115200n8 and I have a getty running on >>>>> /dev/ttyS1. >>>>> >>>>> On older kernels, or if I remove the console= boot parameter, then my >>>>> getty works fine. On 3.19.3 with the console= parameter, something's >>>>> wrong with termios and I can't log in. Running: >>>> >>>> Thanks for the report. >>>> 1. Please attach your dmesg. >>>> 2. Is this behavior new to 3.19.3? (iow, what was the last version >>>> that you noticed didn't do this) >>> >>> I didn't have the problem before I reinstalled this box, upgraded from >>> 3.15 to 3.19.3, and updated by Dell iDRAC7 firmware. Booting into >>> 3.13-something does *not* fix the problem, so I'm not at all convinced >>> that the kernel version matters much. I'll try reverting the iDRAC7 >>> thing, but I don't see why that would make any difference at all to >>> Linux. >> >> I think this is related to DRAC; maybe upgrading the firmware reset >> the Serial communication settings in the system bios? >> > > The DRAC pretends to be a 16550, so I don't understand how it could > prevent Linux from reprogramming the line discipline. Also, if I > remove console=ttyS1,115200 from the kernel command line, it starts > working again. > >> 1. What's your getty command line? > > /sbin/getty -8 115200 ttyS1 > > >> 2. Contents of /proc/tty/driver/serial when you think getty is running >> and waiting for login (shows line signals). > > With getty running: > > serinfo:1.0 driver revision: > 0: uart:16550A port:000003F8 irq:4 tx:0 rx:0 > 1: uart:16550A port:000002F8 irq:3 tx:19828 rx:2 RTS|CTS|DTR > 2: uart:unknown port:000003E8 irq:4 > 3: uart:unknown port:000002E8 irq:3 > 4: uart:unknown port:00000000 irq:0 > > (getty itself works fine) > > When I type a username, I get: > > serinfo:1.0 driver revision: > 0: uart:16550A port:000003F8 irq:4 tx:0 rx:0 > 1: uart:16550A port:000002F8 irq:3 tx:19848 rx:10 RTS|CTS|DTR > 2: uart:unknown port:000003E8 irq:4 > 3: uart:unknown port:000002E8 irq:3 > 4: uart:unknown port:00000000 irq:0 > > at that point, login is running, and it's login that doesn't work. > >> >> Something to test is if you set getty to local line, does it work then. >> I use agetty so my command line is: >> /sbin/getty --noreset -8L 115200 ttyS0 vt102 > > I tried: > > # /sbin/getty --noreset -8L 115200 ttyS1 vt102 > > it has exactly the same problem. > > By adding a whole bunch of printks, I see that both ttyS0 and ttyS1 > make it into uart_set_termios. But now it's time to home... OMFG I hate [insert long string of expletives] userspace bugs. Some piece of crap user code regressed in some recent Ubuntu update and left all the termios lock flags set on the console device, presumably read from /proc/console. So... false alarm, except that the kernel should maybe considering disallowing such daft behavior or at least warning. Now I get to figure out *which* userspace program regressed. I'm reasonably sure it's either Plymouth or some horrendously buggy Debian/Ubuntu script that controls it. --Andy ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: console=ttyS1 breaks ttyS1 termios and prevents me from logging in 2015-04-09 1:49 ` Andy Lutomirski @ 2015-04-09 2:09 ` Peter Hurley 0 siblings, 0 replies; 7+ messages in thread From: Peter Hurley @ 2015-04-09 2:09 UTC (permalink / raw) To: Andy Lutomirski Cc: linux-kernel@vger.kernel.org, Greg Kroah-Hartman, linux-serial, Jiri Slaby, Theodore Ts'o On 04/08/2015 09:49 PM, Andy Lutomirski wrote: > On Wed, Apr 8, 2015 at 5:45 PM, Andy Lutomirski <luto@amacapital.net> wrote: >> On Wed, Apr 8, 2015 at 4:32 PM, Peter Hurley <peter@hurleysoftware.com> wrote: >>> On 04/08/2015 05:40 PM, Andy Lutomirski wrote: >>>> On Wed, Apr 8, 2015 at 2:29 PM, Peter Hurley <peter@hurleysoftware.com> wrote: >>>>> Hi Andy, >>>>> >>>>> On 04/08/2015 05:17 PM, Andy Lutomirski wrote: >>>>>> Something strange seems to have happened to my serial console setup. >>>>>> I boot with console=ttyS1,115200n8 and I have a getty running on >>>>>> /dev/ttyS1. >>>>>> >>>>>> On older kernels, or if I remove the console= boot parameter, then my >>>>>> getty works fine. On 3.19.3 with the console= parameter, something's >>>>>> wrong with termios and I can't log in. Running: >>>>> >>>>> Thanks for the report. >>>>> 1. Please attach your dmesg. >>>>> 2. Is this behavior new to 3.19.3? (iow, what was the last version >>>>> that you noticed didn't do this) >>>> >>>> I didn't have the problem before I reinstalled this box, upgraded from >>>> 3.15 to 3.19.3, and updated by Dell iDRAC7 firmware. Booting into >>>> 3.13-something does *not* fix the problem, so I'm not at all convinced >>>> that the kernel version matters much. I'll try reverting the iDRAC7 >>>> thing, but I don't see why that would make any difference at all to >>>> Linux. >>> >>> I think this is related to DRAC; maybe upgrading the firmware reset >>> the Serial communication settings in the system bios? >>> >> >> The DRAC pretends to be a 16550, so I don't understand how it could >> prevent Linux from reprogramming the line discipline. Also, if I >> remove console=ttyS1,115200 from the kernel command line, it starts >> working again. I didn't realize from your initial report that input with getty was working, otherwise I wouldn't have asked for the line settings. >>> 1. What's your getty command line? >> >> /sbin/getty -8 115200 ttyS1 >> >> >>> 2. Contents of /proc/tty/driver/serial when you think getty is running >>> and waiting for login (shows line signals). >> >> With getty running: >> >> serinfo:1.0 driver revision: >> 0: uart:16550A port:000003F8 irq:4 tx:0 rx:0 >> 1: uart:16550A port:000002F8 irq:3 tx:19828 rx:2 RTS|CTS|DTR >> 2: uart:unknown port:000003E8 irq:4 >> 3: uart:unknown port:000002E8 irq:3 >> 4: uart:unknown port:00000000 irq:0 >> >> (getty itself works fine) >> >> When I type a username, I get: >> >> serinfo:1.0 driver revision: >> 0: uart:16550A port:000003F8 irq:4 tx:0 rx:0 >> 1: uart:16550A port:000002F8 irq:3 tx:19848 rx:10 RTS|CTS|DTR >> 2: uart:unknown port:000003E8 irq:4 >> 3: uart:unknown port:000002E8 irq:3 >> 4: uart:unknown port:00000000 irq:0 >> >> at that point, login is running, and it's login that doesn't work. >> >>> >>> Something to test is if you set getty to local line, does it work then. >>> I use agetty so my command line is: >>> /sbin/getty --noreset -8L 115200 ttyS0 vt102 >> >> I tried: >> >> # /sbin/getty --noreset -8L 115200 ttyS1 vt102 >> >> it has exactly the same problem. >> >> By adding a whole bunch of printks, I see that both ttyS0 and ttyS1 >> make it into uart_set_termios. But now it's time to home... > > OMFG I hate [insert long string of expletives] userspace bugs. > > Some piece of crap user code regressed in some recent Ubuntu update > and left all the termios lock flags set on the console device, > presumably read from /proc/console. Either /dev/console or it found the console from /sys/devices/virtual/tty/console/active. I suspected the termios locking because that's really the only way termios settings don't get set, but I couldn't imagine why login would be flagging those. I hadn't considered that something would leave them on for later processes. > So... false alarm, except that the kernel should maybe considering > disallowing such daft behavior or at least warning. Now I get to > figure out *which* userspace program regressed. I'm reasonably sure > it's either Plymouth or some horrendously buggy Debian/Ubuntu script > that controls it. Some weekend I'm going to package a NoPlymouth. Regards, Peter Hurley ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-04-09 2:09 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2015-04-08 21:17 console=ttyS1 breaks ttyS1 termios and prevents me from logging in Andy Lutomirski 2015-04-08 21:29 ` Peter Hurley 2015-04-08 21:40 ` Andy Lutomirski 2015-04-08 23:32 ` Peter Hurley 2015-04-09 0:45 ` Andy Lutomirski 2015-04-09 1:49 ` Andy Lutomirski 2015-04-09 2:09 ` Peter Hurley
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).