On Monday, April 06 2009, Chris Lumens said: > For filesystems that we officially support, there is no change here. For > those that require a cmdline option for support, module loading has now > moved from within the loader to inside the __init__ methods for the formats > themselves. The intention here is to avoid kernel errors in modules that > the user never even wants to have involved. Why not just always have it so that we load them in the __init__ if needed? Then we could drop even more duplication between the loader and liveinst.sh (which needs this change too) Mounts from the loader should still be fine as we'll get the module auto-loaded by udev these days if it's needed. > --- a/loader/loader.c > +++ b/loader/loader.c > @@ -2071,7 +2071,7 @@ int main(int argc, char ** argv) { > stop_fw_loader(&loaderData); > start_fw_loader(&loaderData); > > - mlLoadModuleSet("raid0:raid1:raid5:raid6:raid456:raid10:linear:fat:msdos:gfs2:reiserfs:jfs:xfs:btrfs:dm-mod:dm-zero:dm-mirror:dm-snapshot:dm-multipath:dm-round-robin:dm-crypt:cbc:sha256:lrw:xts"); > + mlLoadModuleSet("raid0:raid1:raid5:raid6:raid456:raid10:linear:fat:msdos:xfs:dm-mod:dm-zero:dm-mirror:dm-snapshot:dm-multipath:dm-round-robin:dm-crypt:cbc:sha256:lrw:xts"); So that would let us lose msdos, fat and xfs from this list > diff --git a/storage/formats/fs.py b/storage/formats/fs.py > @@ -427,6 +428,21 @@ class FS(DeviceFormat): > if rc >= 4: > raise FSError("filesystem check failed: %s" % rc) > > + def loadModule(self): > + """Load whatever kernel module is required to support this filesystem.""" > + if not self._module: > + return > + > + try: > + rc = iutil.execWithRedirect("modprobe", [self._module], > + stdout="/dev/tty5", stderr="/dev/tty5", > + searchPath=1) > + except Exception as e: > + raise FSError("Could not load %s kernel module: %s" % (self._module, e)) > + > + if rc: > + raise FSError("Could not load %s kernel module." % self._module) Should we raise an error here or just make it so the fs is unsupported, much like we do if the filesystem utils aren't available? To also handle my thought, we'd need to check if the fs was listed in /proc/filesystems before doing the modprobe as well Also, does modprobe have any special return code for "module already loaded" that we could check instead? Jeremy _______________________________________________ Anaconda-devel-list mailing list Anaconda-devel-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/anaconda-devel-list