Release Engineering

Tasklist

FS#35067 - netboot has incomplete serial console support

Attached to Project: Release Engineering
Opened by PiousMinion (PiousMinion) - Thursday, 02 May 2013, 21:50 GMT
Last edited by Gerardo Exequiel Pozzi (djgera) - Friday, 24 May 2013, 01:16 GMT
Task Type Bug Report
Category Arch Projects
Status Closed
Assigned To No-one
Architecture All
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:
netboot has incomplete serial console support.
The netboot installer has undocumented serial console support on ttyS0 for a baud rate of 38400, but loads the kernel without serial console support. This makes installing arch on a device with no vga impossible.


Additional info:
https://releng.archlinux.org/pxeboot/


Steps to reproduce:
1) Connect to device via serial @ baud 38400
2) Boot ipxe_text.lkrn and navigate the bootloader to your preferred mirror
3) Select mirror and see not much more.

This task depends upon

Closed by  Gerardo Exequiel Pozzi (djgera)
Friday, 24 May 2013, 01:16 GMT
Reason for closing:  Not a bug
Additional comments about closing:  Thanks for understand.
Comment by Gerardo Exequiel Pozzi (djgera) - Thursday, 02 May 2013, 22:08 GMT
should add console= to the command line.
Comment by PiousMinion (PiousMinion) - Friday, 03 May 2013, 20:51 GMT
I just realized through trial and error that the ram in this machine(256mb) is not enough to hold the rootfs from the installer, so install on my device may impossible anyway. Still, I hope this problem is solved for others.
Comment by PiousMinion (PiousMinion) - Thursday, 23 May 2013, 06:24 GMT
  • Field changed: Percent Complete (100% → 0%)
One stage of the installer clearly shows an intent to support a serial console on boot. The other stage lacks such support. Even if it's not a bug, it's sloppy and half-assed which is not something I've come to expect from arch. How is this not a bug?
Comment by Gerardo Exequiel Pozzi (djgera) - Thursday, 23 May 2013, 06:26 GMT
what stage lacks support? what should be expected? what is the bug?
Comment by PiousMinion (PiousMinion) - Thursday, 23 May 2013, 07:24 GMT
IMHO, If the bootloader is configured to appear on ttyS0(com1), then not only should the the appropriate "console=" appear on each kernel entry, but the resulting installer environment should start a getty login prompt on ttyS0 as well. Having only support in the bootloader, but not in the resulting kernel not only appears shoddy, but even if you manually add the kernel option during boot, there is no way to tell the environment to start a login prompt on ttyS0.

As such, it's impossible to result in a functional installer environment that is accessible via serial despite a clear attempt to support it in the bootloader. This is the bug.

As far as I can tell there only two ways to squash this bug.
1)
a) Add the appropriate "console=" option to each kernel line in the server selection menu
b) Enable agetty on ttyS0 in the arch install environment via /etc/initab
OR
2) Remove serial console support altogether until such time it can be supported in a functional state.

If I knew where I could find the files I would gladly supply patches, but it should be trivial to do so without my limited expertise. :P
Comment by Gerardo Exequiel Pozzi (djgera) - Thursday, 23 May 2013, 14:35 GMT
The getty on ttyS0 is started automatically by systemd when you pass console=ttyS0, in fact, ttyS0 is what I use all time when test/develop archiso via qemu -serial

1)
_a) No, there is no need to add a separate bootloader menu entry, just for each special option to be passed to the kernel, when you can just type manually editing command line.
_b) Reaching this point looks like you are using a really older .iso with sysvinit instead of systemd, anyway serial support in older .iso already work via a initscript hook that makes the needed entry on-demand on /etc/inittab
2) Does not sound bad removing this fully functional feature, in fact, always sending data to the serial port may be conflicting, for example, if you have modem connected to "COM1" ;)

https://projects.archlinux.org/archiso.git/
Comment by PiousMinion (PiousMinion) - Friday, 24 May 2013, 00:55 GMT
These are valid points which aren't very apparent at first. Hmm. Given that adding the console options to the kernel causes a login prompt in the environment(of which I was unaware), and that forcing the option would interfere with modems, I suppose the current state of support is in fact best... with one exception. Documentation. All of this confusion could have been cleared up with a bit of documentation of this support. I am now just as satisfied as you that this bug is closed and I will work towards documenting this support in the appropriate install guide(s) on the wiki. Thank you for your time.

Loading...