headless installations are degraded due to failed setvtrgb.service

Bug #1604737 reported by Dimitri John Ledkov on 2016-07-20
This bug affects 1 person
Affects Status Importance Assigned to Milestone
console-setup (Ubuntu)

Bug Description

s390x installations are degraded due to failed setvtrgb.service

on z/vm, suspecting that it should be limited to just kvm on s390x, somehow.

tags: added: s390x
Ubuntu QA Website (ubuntuqa) wrote :

This bug has been reported on the Ubuntu ISO testing tracker.

A list of all reports related to this bug can be found here:

tags: added: iso-testing
Dimitri John Ledkov (xnox) wrote :

<infinity> xnox: Is stvtrgb using GIO_CMAP/PIO_CMAP?
<xnox> infinity, https://sources.debian.net/src/kbd/2.0.3-2/src/getfd.c/
<xnox> iterates conspaths, and open_a_console must succeed, wtih is_a_consoole
<xnox> return (isatty (fd)
<xnox> && ioctl(fd, KDGKBTYPE, &arg) == 0
<xnox> && ((arg == KB_101) || (arg == KB_84)));
<xnox> no idea what GIO_CMAP and PIO_CMAP are
<infinity> xnox: I meant to do the color setting.
<infinity> xnox: But yes, that confirms my suspicion that they probably are, as they're testing explicitly if a Linux VC IOCTL works.
<infinity> xnox: So, the only error, IMO, is that they exit non-zero if none of the scanned victims are Linux VCs.
<infinity> xnox: Which would fail on any completely headless system.
<infinity> ie: I could reproduce this on PPC just as easily.
<infinity> I would suggest that if all is_a_console() attempts fail, you'd want to exit 0, and then later, if setting colours on something we thought should work fails, exit non-zero.
<xnox> right
<infinity> Ahh, and getfd exits 1 when is_a_console asplodes, so setvtrgb:main() just needs to test for that and either exit 0 or attempt to apply colors.
<infinity> Just missing that one branch there, IMO. It never tests the return of getfd(), it just assumes it got a useful result.

affects: console-setup (Ubuntu) → kbd (Ubuntu)
summary: - s390x installations are degraded due to failed setvtrgb.service
+ headless installations are degraded due to failed setvtrgb.service
Dimitri John Ledkov (xnox) wrote :

console-setup (1.142ubuntu5) yakkety; urgency=medium

  * debian/console-setup-linux.setvtrgb.service: add condition to only
    execute when /dev/tty0 exists. This is the same condition as used by
    getty@.service unit to prevent attempting setting up VT when none are
    present. This is a common case on serial only architectures and
    virtual machines. Resolves degraded boots on s390x/ppc64el.

 -- Dimitri John Ledkov <email address hidden> Mon, 26 Sep 2016 13:31:08 +0100

affects: kbd (Ubuntu) → console-setup (Ubuntu)
Changed in console-setup (Ubuntu):
status: New → Fix Committed
Changed in console-setup (Ubuntu):
status: Fix Committed → Fix Released
Changed in console-setup (Ubuntu Xenial):
status: New → In Progress
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers