Bug 456570 - loader can't find disc after media check
loader can't find disc after media check
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: anaconda (Show other bugs)
rawhide
All Linux
low Severity low
: ---
: ---
Assigned To: Chris Lumens
Fedora Extras Quality Assurance
:
Depends On:
Blocks: F10Alpha/F10AlphaBlocker
  Show dependency treegraph
 
Reported: 2008-07-24 14:31 EDT by Will Woods
Modified: 2008-07-25 16:32 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2008-07-25 16:32:04 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Will Woods 2008-07-24 14:31:38 EDT
After running a mediacheck with anaconda-11.4.1.6, loader is unable to find the
disc under any circumstances.

There's two bugs at work here. First, the kernel doesn't tell us properly when
the drive is checking media. This causes the mount command to fail with 'No
medium found'. There's another bug (somewhere) about this, but the workaround is
to wait a few seconds after inserting the disc before hitting "OK".

*This* bug is that, even if you wait ~20 seconds after inserting the disc,
loader can't find it and ejects it again. 

The logs show no errors returned from the mount command, and the kernel emits
iso9660-specific filesystem probing messages. So I believe it *is* being mounted
properly.

I think the problem is that loader2/cdinstall.c has the logic inverted on this
access() call:

                if (!access(stage2loc, R_OK)) {
                    free(stage2loc);
                    umount(location);
                    ejectCdrom(dev);
                    wrongCDMessage();
                    continue;
                }

access(2) says "On success (all requested permissions granted), zero is
returned." So the test should probably be: 

                if (access(stage2loc, R_OK) != 0) {
Comment 1 Will Woods 2008-07-24 14:32:26 EDT
Sorry, that's anaconda-11.4.1.16, not .6
Comment 2 Chris Lumens 2008-07-24 14:33:15 EDT
I just pushed a fix for this, so it should be fixed in anaconda-11.4.1.19-1.
Comment 3 Will Woods 2008-07-25 16:32:04 EDT
Confirmed fixed. Thanks!

Note You need to log in before you can comment on or make changes to this bug.