Bug 1496723

Summary: Raspberry Pi 3: run-initial-setup doesn't work via serial
Product: [Fedora] Fedora Reporter: Alessio <alciregi>
Component: initial-setupAssignee: Martin Kolman <mkolman>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: unspecified    
Version: 27CC: fzatlouk, mkolman, vpodzime
Target Milestone: ---   
Target Release: ---   
Hardware: arm   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-10-11 13:27:09 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
output from serial console none

Description Alessio 2017-09-28 08:44:41 UTC
Description of problem:

Using serial connection, initial-setup doesn't appear via serial console.
Usingi HDMI monitor, initial-setup works as expected.

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

Fedora 27 Beta 1.5 and 1.3

How reproducible:

Always

Steps to Reproduce:
1. Connect to the Raspberry Pi 3 using a serial cable

Actual results:
The login screen appears.

Expected results:
The initial setup should appear.

Additional info:

Jul 12 10:02:39 localhost initial-setup[730]: failed to write ================================================================================to console <_io.TextIOWrapper name='/dev/ttyS1' mode='w' encoding='UTF-8'>
 Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/initial_setup/tui/tui.py", line 124, in run   console_fo.write(one_line)
 OSError: [Errno 5] Input/output error
Jul 12 10:02:39 localhost initial-setup[730]: failed to write 1) [x] Language settings                 2) [!] Time settingsto console <_io.TextIOWrapper name='/dev/ttyS1' mode='w' encoding='UTF-8'>
 Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/initial_setup/tui/tui.py", line 124, in run   console_fo.write(one_line)
 OSError: [Errno 5] Input/output error
Jul 12 10:02:39 localhost initial-setup[730]: failed to write        (English (United States))                (Timezone is not set.)to console <_io.TextIOWrapper name='/dev/ttyS1' mode='w' encoding='UTF-8'>
 Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/initial_setup/tui/tui.py", line 124, in run   console_fo.write(one_line)
 OSError: [Errno 5] Input/output error
Jul 12 10:02:39 localhost initial-setup[730]: failed to write 3) [ ] Network configuration             4) [!] Root passwordto console <_io.TextIOWrapper name='/dev/ttyS1' mode='w' encoding='UTF-8'>
 Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/initial_setup/tui/tui.py", line 124, in run   console_fo.write(one_line)
 OSError: [Errno 5] Input/output error
Jul 12 10:02:39 localhost initial-setup[730]: failed to write        (Not connected)                          (Password is not set.)to console <_io.TextIOWrapper name='/dev/ttyS1' mode='w' encoding='UTF-8'>
 Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/initial_setup/tui/tui.py", line 124, in run   console_fo.write(one_line)
 OSError: [Errno 5] Input/output error
Jul 12 10:02:39 localhost initial-setup[730]: failed to write 5) [!] User creationto console <_io.TextIOWrapper name='/dev/ttyS1' mode='w' encoding='UTF-8'>
 Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/initial_setup/tui/tui.py", line 124, in run   console_fo.write(one_line)
 OSError: [Errno 5] Input/output error
Jul 12 10:02:39 localhost initial-setup[730]: failed to write        (No user will be created)to console <_io.TextIOWrapper name='/dev/ttyS1' mode='w' encoding='UTF-8'>
 Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/initial_setup/tui/tui.py", line 124, in run   console_fo.write(one_line)
 OSError: [Errno 5] Input/output error
Jul 12 10:02:39 localhost initial-setup[730]: failed to write to console <_io.TextIOWrapper name='/dev/ttyS1' mode='w' encoding='UTF-8'>
 Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/initial_setup/tui/tui.py", line 124, in run   console_fo.write(one_line)
 OSError: [Errno 5] Input/output error
Jul 12 10:02:39 localhost initial-setup[730]: failed to write Please make a selection from the above ['c' to continue, 'q' to quit, 'r' toto console <_io.TextIOWrapper name='/dev/ttyS1' mode='w' encoding='UTF-8'>
 Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/initial_setup/tui/tui.py", line 124, in run   console_fo.write(one_line)
 OSError: [Errno 5] Input/output error
Jul 12 10:02:39 localhost initial-setup[730]: failed to write to console <_io.TextIOWrapper name='/dev/ttyS1' mode='w' encoding='UTF-8'>
 Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/initial_setup/tui/tui.py", line 124, in run   console_fo.write(one_line)
 OSError: [Errno 5] Input/output error

Comment 1 František Zatloukal 2017-10-04 14:34:49 UTC
I've experienced similar issue with initial-setup over serial. Some weird fighting between login prompt and initial setup is happening there. 

After booting the RPi3 with clean Fedora 27 Beta on SD, I see login prompt (which shouldn't happen before finishing initial-setup) and after waiting a while (~15 seconds), the initial-setup shows up. Unfortunately, after making a selection, my input goes to login prompt instead of initial setup.

Comment 2 František Zatloukal 2017-10-04 14:35:40 UTC
Created attachment 1334323 [details]
output from serial console

Comment 3 Martin Kolman 2017-10-05 15:21:31 UTC
(In reply to František Zatloukal from comment #1)
> I've experienced similar issue with initial-setup over serial. Some weird
> fighting between login prompt and initial setup is happening there. 
> 
> After booting the RPi3 with clean Fedora 27 Beta on SD, I see login prompt
> (which shouldn't happen before finishing initial-setup) and after waiting a
> while (~15 seconds), the initial-setup shows up. Unfortunately, after making
> a selection, my input goes to login prompt instead of initial setup.

Looks like yet another console name showed up and Initial Setup is not yet blocking getty on it. I've just released new Initial Setup that has a bunch of new consoles added (thanks pbrobinson!), which might very well fix this:

https://bodhi.fedoraproject.org/updates/FEDORA-2017-0a13a7e2f3

Also once the getty-pre.target[0] lands in systemd in Fedora, the console blcoking should be handled once and for all.

[0] https://github.com/systemd/systemd/commit/175902541852fb9207f6e532d8da48c9a102340c#diff-7b8b2a67a4172e928d2173ee8cc67559

Comment 4 Alessio 2017-10-09 09:32:13 UTC
(In reply to Martin Kolman from comment #3)
> Looks like yet another console name showed up and Initial Setup is not yet
> blocking getty on it. I've just released new Initial Setup that has a bunch
> of new consoles added (thanks pbrobinson!), which might very well fix this:
> 
> https://bodhi.fedoraproject.org/updates/FEDORA-2017-0a13a7e2f3

I can confirm that now it works.

Comment 5 František Zatloukal 2017-10-11 13:27:09 UTC
Fix confirmed, working initial-setup is already in stable, closing.