You are not logged in.

#1 2015-12-15 18:24:33

gshearer
Member
From: Cincinnati, OH, USA
Registered: 2014-01-14
Posts: 54

Serial Console Frustrations :(

Hey All,

  So, I had serial console working great on a server that has not physically changed at all.  Though, I stopped using for quite a while, and didn't notice when it broke. I'm certain it worked when we were are Kernel 3.x.

  Anyway, I'm seeing this at kernel boot time:

[    0.457082] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    0.457231] serial 00:06: disabled

  Note that this is a motherboard-integrated serial port (ASUS MB) and not a USB-to-RS232 converter. It's enabled in BIOS (again, nothing has changed) -- and the BIOS is the latest version from ASUS.

  But for some reason the driver appears to disable itself at boot.

  So, I went digging through the kernel source looking for that message. Though I can find the line in (8250_core.c) where the first line is printed, I can't find that second line anywhere, and I've tried just about every form of looking for "disabled" that you can think of. I just wanted to see the code that's doing this and if I can discern any reason for it happening.

  AND... that brings me to another point. I tried serial console with console=ttyUSB0 -- using a well supported RS232 converter.  It appears that the ttyUSB driver isn't compiled in, which I believe will be a requirement.

  The whole reason I do this is because my server has a LUKS encrypted root partition that I prefer to manually type the password for upon boot.

  If anyone has any ideas on any solutions .. I'm all ears. smile Thank you.


--
George Shearer
doc at lame dot org
Linux Nerd since the MCC Interim Days

Offline

#2 2015-12-15 18:47:23

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 20,655

Re: Serial Console Frustrations :(

You say you used a serial console with a well supported converter.   This means you tried to log in from an external serial terminal?   
Rather than trying to log in, what if you just send data from a console command to /dev/ttyUSB0 using a redirect?   Or does the /dev/ttyUSB0 node not exist?

If it does not exist, does your running kernel match the kernel you have installed?   Compare the version numbers reported by uname -a and pacman -Qi linux


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
The shortest way to ruin a country is to give power to demagogues.— Dionysius of Halicarnassus
---
How to Ask Questions the Smart Way

Offline

#3 2015-12-15 18:57:05

gshearer
Member
From: Cincinnati, OH, USA
Registered: 2014-01-14
Posts: 54

Re: Serial Console Frustrations :(

UPDATE: A linux kernel developer friend of mine thinks that the second line (The disabled message) is being printed by: drivers/pnp/manager.c::pnp_stop_dev()

It didn't occur to me to check PNP, but I think he's right. The obvious question is why Plug & Play is disabling my port? sad

ewaller:  /dev/ttyUSB0 works fine *after* booting when a getty is ran by systemd. There's no problems with the converter. The problem is that the USB-to-TTY driver isn't loaded (rather, compiled in) for serial-console to work during the **INITIAL** boot.

A little background: I'm using a UEFI bios, and I'm using EFIBOOTSTUB (not grub, etc) to launch my system. So, UEFI starts the system, then loads the kernel right from the EFI partition, which executes and also loads the initrd. But serial console requires that the driver be compiled in (not modular) which is not the case with the standard Arch kernel, which is why this doesnt work for the USB dongle.

That's why I'm focusing on trying to figure out why the built-in COM port won't work. (Or rather, why it stopped working)


--
George Shearer
doc at lame dot org
Linux Nerd since the MCC Interim Days

Offline

#4 2015-12-15 19:10:54

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 20,655

Re: Serial Console Frustrations :(

Got it.   If it were a module installed in the initrd so the kernel can get it sooner, would it work?  Or does it absolutely need to be baked in?


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
The shortest way to ruin a country is to give power to demagogues.— Dionysius of Halicarnassus
---
How to Ask Questions the Smart Way

Offline

#5 2015-12-15 19:28:17

gshearer
Member
From: Cincinnati, OH, USA
Registered: 2014-01-14
Posts: 54

Re: Serial Console Frustrations :(

Pretty sure it has to be baked in -- last I looked at the 'make config' -- it was required. Makes sense, you would want to see every printk() the kernel spits out and I believe there are plenty before it loads initrd.


--
George Shearer
doc at lame dot org
Linux Nerd since the MCC Interim Days

Offline

#6 2015-12-15 19:31:21

gshearer
Member
From: Cincinnati, OH, USA
Registered: 2014-01-14
Posts: 54

Re: Serial Console Frustrations :(

Another update: It looks like there's an option called "8250_pnp" that can be disabled at compile time if all thats required is legacy serial support. I am betting that this will fix my problem, but I'd prefer to not have to recompile. Question still remains, why is PNP disabling my serial port? sad

-G


--
George Shearer
doc at lame dot org
Linux Nerd since the MCC Interim Days

Offline

#7 2015-12-17 13:56:05

mich41
Member
Registered: 2012-06-22
Posts: 796

Re: Serial Console Frustrations :(

Add dump_stack() where "disabled" is printed smile Or review git log for this file since the last version which worked, play with git-bisect, etc.

Offline

Board footer

Powered by FluxBB