Bug 181593

Summary: anaconda, udev, and upgrades
Product: [Fedora] Fedora Reporter: Bill Nottingham <notting>
Component: anacondaAssignee: Anaconda Maintenance Team <anaconda-maint-list>
Status: CLOSED RAWHIDE QA Contact: Mike McLean <mikem>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: harald, rvokal
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: 2006-02-20 20:28:06 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: 150222    

Description Bill Nottingham 2006-02-15 00:54:42 UTC
1. Install FC2
2. Start anaconda to upgrade

anaconda bind mounts its own /dev for the upgraded system

3. Have anaconda upgrade
4. anaconda installs new packages. Including udev.
5. anaconda starts removing old packages. It gets to dev.
6. dev starts removing its files... including device nodes in the /dev shared
between anaconda and the upgraded system?
7. udev has the following trigger:

triggerpostun scriptlet (using /bin/sh) -- dev <= 0:3.12-1
if [ $2 = 0 ]; then
        if [ -x /sbin/MAKEDEV ]; then
                /sbin/MAKEDEV null
        else
                /bin/mknod /dev/null c 1 3
        fi
        /sbin/start_udev >/dev/null 2>&1
        if [ -e /dev/mapper/control -a -x /sbin/lvm ]; then
                /sbin/lvm vgmknodes >/dev/null 2>&1
        fi
fi
exit 0

start_udev runs... which not only starts udev in the chroot, it also starts
loading modules - sound modules, hardware monitors, random drivers. It also
starts firing off all the helper programs for these - unmuting sound, etc.

All this during the end of the upgrade.

Not sure what we want to do here, but this probably isn't it. :)

I *think* this can be solved by adding dev to the upgrade_remove_blacklist;
this should run before the dev is bind mounted, even...

Comment 1 Jeremy Katz 2006-02-15 19:51:17 UTC
Yeah, sounds like a sane enough resolution I guess.  That or the call to
start_udev in the trigger should call something which doesn't do all the module
loading stuff that udev has grown.

Comment 2 Harald Hoyer 2006-02-16 07:10:04 UTC
Hmm, we cannot disable module loading without loosing device creation, without
altering the rules...

Comment 3 Jeremy Katz 2006-02-20 20:28:06 UTC
Added dev to the upgrade_remove_blacklist