Bug 456570
| Summary: | loader can't find disc after media check | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Will Woods <wwoods> |
| Component: | anaconda | Assignee: | Chris Lumens <clumens> |
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | low | Docs Contact: | |
| Priority: | low | ||
| Version: | rawhide | ||
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2008-07-25 20:32:04 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | |||
| Bug Blocks: | 446445 | ||
Sorry, that's anaconda-11.4.1.16, not .6 I just pushed a fix for this, so it should be fixed in anaconda-11.4.1.19-1. Confirmed fixed. Thanks! |
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) {