CD/DVD installs not rebooting system or promting user to press enter to reboot when doing "Install Ubuntu"

Bug #628630 reported by Jerone Young on 2010-09-02
14
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OEM Priority Project
High
Unassigned
ubiquity (Ubuntu)
High
Colin Watson
Lucid
High
Colin Watson
Maverick
High
Colin Watson

Bug Description

Binary package hint: casper

When a user chooses "Install Ubuntu" from a CD/DVD install (not the live session):
http://people.canonical.com/~jerone/demonstration/casper_cd_issue/IMG_1105.JPG

They install there system and at the end where the system is to reboot or tell the user to "press enter" to reboot. It appears the system is hung. I posted a video of the issue here:
http://people.canonical.com/~jerone/demonstration/casper_cd_issue/IMG_1104.MOV

This only happens when you choose "Install Ubuntu" from the live media screen. If you choose "Try Ubuntu without Installing" on reboot it brings up a nice pruple screen telling you to press enter to reboot.

This happens with both 10.04 & 10.10 builds with machines that have an internal DVD drive or a USB DVD drive.

This is effecting OEMs who have recovery CD/DVD media for Ubuntu 10.04.

Given that the user is already prompted to reboot, it should just eject the CD and reboot the system or print text to tell the user to press enter.

Jerone Young (jerone) wrote :

To add as seen on the video. The system isn't hung but the user is in no way told to press enter to do the reboot.

Changed in oem-priority:
status: New → Confirmed
importance: Undecided → High
Jerone Young (jerone) on 2010-09-02
description: updated
Jerone Young (jerone) wrote :

Reading the casper source I've found the problem in debian/casper.init starting at line 87.

Pedro Villavicencio (pedro) wrote :

Thanks for the report, assigning to the foundation teams for further look. thanks all.

Changed in casper (Ubuntu):
assignee: nobody → Canonical Foundations Team (canonical-foundations)
importance: Undecided → Medium
status: New → Triaged
Robbie Williamson (robbiew) wrote :

Changing to "High" as the user experience of it all is pretty bad.

Changed in casper (Ubuntu Maverick):
importance: Medium → High
Mario Limonciello (superm1) wrote :

Is this perhaps actually a duplicate of bug 600739 (which has a patch)?

Colin Watson (cjwatson) wrote :

FWIW, we do need to prompt the user to eject rather than just relying on ubiquity's reboot prompt (as Jerone suggests in the bug description). Some systems automatically withdraw the CD at boot, so automatic-eject + immediate-reboot + automatic-withdraw will just mean the system boots from the CD again. With automatic-eject, I've even heard of the odd finger injury caused by people trying to grab the CD out of the drive in the short period of time available. By contrast, some systems (e.g. Macs) have software-only eject, so the only feasible sequence here is (1) physically eject CD (2) prompt for removal (3) continue and reboot.

It's not clear to me why plymouth isn't appearing here, and I suspect that this is the root of the problem; that's certainly a likely reason for this to happen only on "Install Ubuntu".

Mario, I don't think this is the same thing as bug 600739. aufsd is a kernel thread and shouldn't be user-killable, while mount.ntfs shouldn't be running here. All the filesystem support for a live CD/DVD should be in kernel-space right now.

Jerone, re comment 2, if you've found the problem, please share. :-) The area of code you point to is certainly what's responsible for ejecting the CD, and it's a difficult piece of code. Bearing in mind the constraints outlined in my first paragraph, after we eject the CD, we no longer have a useful system; everything we need must be in the buffer cache. Here's the code:

    for path in $(which halt) $(which reboot) /etc/rc?.d /etc/default $(which stty) /bin/plymouth /sbin/usplash_write; do
        cache_path "$path"
    done

    eject -p -m /cdrom >/dev/null 2>&1

    [ "$prompt" ] || return 0

    # XXX - i18n
    MSG="Please remove installation media and close the tray (if any) then press ENTER: "

    if [ -x /bin/plymouth ] && plymouth --ping; then
        plymouth message --text="$MSG"
        plymouth watch-keystroke > /dev/null
    else
        stty sane < /dev/console

        echo $MSG > /dev/console
        if [ -x /sbin/usplash_write ]; then
            /sbin/usplash_write "TIMEOUT 86400"
            /sbin/usplash_write "TEXT-URGENT Please remove installation media, close the tray"
            /sbin/usplash_write "TEXT-URGENT (if any) and press ENTER to continue"
        fi
        read x < /dev/console
    fi

So, in your case, plymouth isn't running (for some reason). We know that the code is waiting on the read from /dev/console, because as your video shows, pressing Enter is sufficient to have it continue. I think the only available deduction, then, is that there is something else running in parallel which is trying to read from disk, and that is what's spewing all the error messages so that you can't see the prompt printed to the console.

The easiest fix is probably to work out why plymouth isn't running, and fix that ...

Colin Watson (cjwatson) wrote :

https://lists.ubuntu.com/archives/ubuntu-installer/2010-September/000697.html seems as though it might be a possible partial fix here, to at least get rid of the immediate symptoms. I haven't been able to reproduce this myself. I don't suppose you could try the proposed change from the end of that mail? The test procedure would be to boot the installer with 'break=casper-bottom' on the kernel command line, then 'chroot /root vi /etc/init/ubiquity.conf' and edit the 'stop on' line to read:

  stop on (stopping gdm
           or stopping kdm
           or stopping xdm
           or stopping uxlaunch)

... then 'exit 0' to continue.

Jerone Young (jerone) wrote :

@Colin
        Just tried 9/19 build 10.10 build the problem no longer shows up. Now plymouth is showing up and giving the screen to press enter. So the problem looks be resolved. I still need to try a usb DVD drive. I'll do that tommorow.

I don't think we changed anything. Bear in mind that, assuming my
analysis is correct, this is a race condition, so you may or may not be
able to reproduce it at any given point, but that doesn't mean it's
fixed.

I think I'll just go ahead with my proposed upstart job changes, as I
haven't noticed a flaw in my analysis yet and I think they ought to be
an improvement.

Colin Watson (cjwatson) on 2010-09-20
Changed in casper (Ubuntu Maverick):
assignee: Canonical Foundations Team (canonical-foundations) → Colin Watson (cjwatson)
affects: casper (Ubuntu Maverick) → ubiquity (Ubuntu Maverick)
Changed in ubiquity (Ubuntu Maverick):
status: Triaged → Fix Committed
Changed in ubiquity (Ubuntu Lucid):
status: New → Fix Committed
importance: Undecided → High
milestone: none → ubuntu-10.04.2
Changed in ubiquity (Ubuntu Maverick):
milestone: none → ubuntu-10.10
Changed in ubiquity (Ubuntu Lucid):
assignee: nobody → Colin Watson (cjwatson)
Jerone Young (jerone) wrote :

@Colin
         Well I was unable to test on usb drive since I'm blocked by (just filed) bug 643643

Jerone Young (jerone) wrote :

@Colin
Tested with usb drive. Usplash does not come up and all you see on the screen are I/O errors. You don't even get a message that says to press enter. Will your work around in comment #7.

Changed in ubiquity (Ubuntu Maverick):
status: Fix Committed → Confirmed
Jerone Young (jerone) wrote :

Will try work around in comment #7.

Jerone Young (jerone) on 2010-09-20
Changed in ubiquity (Ubuntu Lucid):
status: Fix Committed → Confirmed
Colin Watson (cjwatson) wrote :

On Mon, Sep 20, 2010 at 04:45:04PM -0000, Jerone Young wrote:
> Tested with usb drive. Usplash does not come up

We use plymouth nowadays, not usplash.

> Will your work around in comment #7.
>
> ** Changed in: ubiquity (Ubuntu Maverick)
> Status: Fix Committed => Confirmed

If you haven't tried the workaround which I committed yet, would you
mind not changing the status from Fix Committed?

Jerone Young (jerone) wrote :

@Colin
 The work around works for the most part when installing over usb cd/dvd rom. You nolonger have a bunch of i/o error messages and you are now prompted to press ENTER.

The only thing you do not have plymouth splash screen. It's in all text.

The major issue is solved by the upstart fix.

Changed in ubiquity (Ubuntu Lucid):
status: Confirmed → Fix Committed
Changed in ubiquity (Ubuntu Maverick):
status: Confirmed → Fix Committed
Jerone Young (jerone) on 2010-09-20
Changed in oem-priority:
status: Confirmed → Fix Committed
Jerone Young (jerone) wrote :

@Colin
       Forget what I said. I actually had splash cut off (for debugging). Everything works with usb cd/dvd with ubquity upstart file fix.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubiquity - 2.4.0

---------------
ubiquity (2.4.0) maverick; urgency=low

  [ Sebastian Heinlein ]
  * Rework oem-config-gtk to use a mainloop (LP: #637517)

  [ Evan Dandrea ]
  * Call gconftool-2 --set with --config-source.
  * Better lock down the installer environment when past partitioning.
  * Lock down the installer environment when at partitioning commit,
    rather than just after automatic partitioning (and not manual
    partitioning) (LP: #640604, LP: #641897).
  * Do not show the quit button in OEM mode.
  * Depend on aptdaemon (LP: #641051).
  * Fix the skip download button (LP: #628311).
  * Make the '[type here to change]' string translatable (LP: #642989).
  * Disable the non-free software option if multiverse and restricted
    are disabled via preseed (LP: #641676).
  * Install kubuntu-restricted-addons, not kubuntu-restricted-extras
    (LP: #643614).
  * Clear hostname error when fixed (LP: #640661).
  * Deal with broken /cdrom symlinks (LP: #642274).
  * Disable locking the screen and switching users in the installer
    session (LP: #644016).
  * Update translations from Launchpad.

  [ Colin Watson ]
  * Stop ubiquity and oem-config when stopping display managers. This
    should guarantee that X has exited by the time we try to start plymouth
    on shutdown (LP: #628630).
 -- Evan Dandrea <email address hidden> Tue, 21 Sep 2010 10:09:28 +0100

Changed in ubiquity (Ubuntu Maverick):
status: Fix Committed → Fix Released
Nick Fox (nickj-fox) wrote :

I just ran into this issue using the Mythbuntu 10.10 RC disk. Still having the error upon reboot from clean install

Chris Van Hoof (vanhoof) on 2010-11-29
Changed in oem-priority:
assignee: nobody → Chris Van Hoof (vanhoof)
Chris Van Hoof (vanhoof) on 2011-05-06
Changed in oem-priority:
assignee: Chris Van Hoof (vanhoof) → nobody
Steve Magoun (smagoun) on 2011-06-02
Changed in oem-priority:
status: Fix Committed → Fix Released
Benjamin Zanin (blkkbl3) on 2011-06-19
Changed in ubiquity (Ubuntu):
assignee: Colin Watson (cjwatson) → Benjamin Zanin (blkkbl3)
Colin Watson (cjwatson) on 2011-06-20
Changed in ubiquity (Ubuntu):
assignee: Benjamin Zanin (blkkbl3) → Colin Watson (cjwatson)
Colin Watson (cjwatson) on 2011-07-07
Changed in ubiquity (Ubuntu Lucid):
milestone: ubuntu-10.04.2 → ubuntu-10.04.3

Hello Jerone, or anyone else affected,

Accepted ubiquity into lucid-proposed, the package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

tags: added: verification-needed

SRU verification for Lucid:
I have verified that the version of ubiquity 2.2.26 in -proposed fixes the issue.

Marking as verification-done

tags: added: verification-done
removed: verification-needed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubiquity - 2.2.26

---------------
ubiquity (2.2.26) lucid-proposed; urgency=low

  * Stop ubiquity and oem-config when stopping display managers. This
    should guarantee that X has exited by the time we try to start plymouth
    on shutdown (LP: #628630).
  * Add --config=Mode:0644 to debconf-copydb call, as otherwise we leave
    /var/cache/debconf/config.dat mode 0600 in the installed system,
    breaking the first run of some package management frontends
    (LP: #442941).
  * Automatic update of included source packages: grub-installer
    1.49ubuntu11.1, netcfg 1.51ubuntu3, partman-base 139ubuntu7.
 -- Colin Watson <email address hidden> Thu, 07 Jul 2011 23:32:03 +0100

Changed in ubiquity (Ubuntu Lucid):
status: Fix Committed → Fix Released

This may be related to bug #872472 ("Xubuntu Oneiric does not display "remove cd and hit Enter to continue" when installing from desktop cd"). The code area where the shutdown hangs in that bug appears to be the same as that identified by Colin Watson in comment #6 of this bug. The problem is also intermittent suggesting a race condition.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers