platform/upstream/dracut.git
15 years agoblock root: split out resume parsing and udev rules
David Dillow [Mon, 1 Jun 2009 03:19:31 +0000 (23:19 -0400)]
block root: split out resume parsing and udev rules

We have a resume module, and these rules should live in it. Modify
the sort order a bit to ensure the resume rules continue to execute
first.

15 years agonfsroot: move to same sort order as block methods
David Dillow [Mon, 1 Jun 2009 02:45:12 +0000 (22:45 -0400)]
nfsroot: move to same sort order as block methods

There is no reason for this to be a 40nfsroot rather than 95nfs
once other network root handlers are added. Go ahead and move it.

15 years agoMake root on local block device test completly automated.
Victor Lowther [Sun, 31 May 2009 02:23:55 +0000 (21:23 -0500)]
Make root on local block device test completly automated.

We no longer require any user intervention when testing dracut on
a local block device in qemu, assuming everything passes.  If things fail,
we still might need to manually kill things.

15 years agoSeveral updates to make dracut a bit more robust.
Victor Lowther [Sat, 30 May 2009 21:16:34 +0000 (16:16 -0500)]
Several updates to make dracut a bit more robust.

First, add a check script to 99base to ensure that it will load its
prerequisites.

Second, disable the udev magic dracut normally uses when generating
test images -- it was causing random failures when creating the test
root filesystem, presumably due to race conditions between the
rootfs creation scripts and udev.

Third, consolidate the rootfs creation scripts into one script.

15 years agoExcise excess logging verbosity when installing kernel modules.
Victor Lowther [Sat, 30 May 2009 17:04:33 +0000 (12:04 -0500)]
Excise excess logging verbosity when installing kernel modules.

15 years agoHave udevd never try to resolve user or group ownership of devices.
Victor Lowther [Sat, 30 May 2009 16:45:47 +0000 (11:45 -0500)]
Have udevd never try to resolve user or group ownership of devices.

This gets rid of the need to have potentially security-sensitive files
like /etc/passwd and /etc/group in the initramfs, and makes the initramfs
a bit smaller.  We trust the final userspace to do The Right Thing when
assigning user/group ownership to devices.

15 years agoFix bug in kernel module loading
Victor Lowther [Sat, 30 May 2009 15:52:12 +0000 (10:52 -0500)]
Fix bug in kernel module loading

We were not loading all the required kernel modules due to a bug in the
dependency checking code.  This was causing us to load only the first
dependent module and ignore the rest.

15 years agoModify the check script so that 40network will only load as a
Victor Lowther [Sat, 30 May 2009 03:58:21 +0000 (22:58 -0500)]
Modify the check script so that 40network will only load as a
dependency on another module.

15 years agoModify kernel module installation routine to respect --hostonly.
Victor Lowther [Sat, 30 May 2009 03:53:11 +0000 (22:53 -0500)]
Modify kernel module installation routine to respect --hostonly.

If dracut was run with --hostonly, instmods will only load a module
into the initramfs if it is already loaded on the host machine.

This really trims the fat out of a --hostonly  generated initramfs, and
eliminates the need for the kernel-modules-loaded hook.

This patch also allows a module to flag that it should only load as
a dependency by exiting 255 instead of 0.  Currently, only the network module
uses this functionality.

15 years agoRemoved 90kernel-modules-loaded.
Victor Lowther [Sat, 30 May 2009 03:19:43 +0000 (22:19 -0500)]
Removed 90kernel-modules-loaded.

Sure, it will load all the modules that are currently installed into the
initramfs.  Why was this a good thing, again?

15 years agoUpdate check scripts in modules to make them work again.
Victor Lowther [Sat, 30 May 2009 03:14:31 +0000 (22:14 -0500)]
Update check scripts in modules to make them work again.

Also got rid of "dracutmodules=hostonly".  We have --hostonly, and it
does the same thing.

15 years agoVictor pointed out --hostonly doesn't go into check.
Warren Togami [Sat, 30 May 2009 03:56:55 +0000 (23:56 -0400)]
Victor pointed out --hostonly doesn't go into check.

15 years agoMerge branch 'master' of ssh://vlowther@dracut.git.sourceforge.net/gitroot/dracut
Victor Lowther [Fri, 29 May 2009 22:58:15 +0000 (17:58 -0500)]
Merge branch 'master' of ssh://vlowther@dracut.git.sourceforge.net/gitroot/dracut

15 years agoDon't create fully generic initramfs'es in the test framework
Victor Lowther [Fri, 29 May 2009 22:55:31 +0000 (17:55 -0500)]
Don't create fully generic initramfs'es in the test framework

There is no point loading every driver available when we are not testing
network functionality and qemu does not even support the stuff we were
loading.  It just wastes time and space.

15 years agoProperly detect -H and --hostonly mode
Warren Togami [Fri, 29 May 2009 22:38:49 +0000 (18:38 -0400)]
Properly detect -H and --hostonly mode

15 years agoRemove redundant modprobe.d copy
Warren Togami [Fri, 29 May 2009 17:20:33 +0000 (13:20 -0400)]
Remove redundant modprobe.d copy

15 years agoMerge branch 'master' of ssh://vlowther@dracut.git.sourceforge.net/gitroot/dracut
Victor Lowther [Fri, 29 May 2009 11:50:37 +0000 (06:50 -0500)]
Merge branch 'master' of ssh://vlowther@dracut.git.sourceforge.net/gitroot/dracut

15 years agoInstall KMS drivers. It sucks to have a hard coded list, but there is no clean way...
Warren Togami [Fri, 29 May 2009 05:14:59 +0000 (01:14 -0400)]
Install KMS drivers.  It sucks to have a hard coded list, but there is no clean way of doing this distro-neutral at the moment.

15 years agoLog dracut output.
Victor Lowther [Fri, 29 May 2009 02:41:05 +0000 (21:41 -0500)]
Log dracut output.

If we are installed, log to /var/log/dracut.log.
If we are not installed, log to /tmp/dracut.log

15 years agoFix firmware installation.
Victor Lowther [Fri, 29 May 2009 02:13:16 +0000 (21:13 -0500)]
Fix firmware installation.

Instead of calling firmware checking once per instmods invocation,
call only when we install an actual module on the initramfs.

15 years agoMake nfsroot work with hostonly mode.
Victor Lowther [Fri, 29 May 2009 02:02:14 +0000 (21:02 -0500)]
Make nfsroot work with hostonly mode.

15 years agoFilesystem modules already included in =fs, no runtime detection allowed in default...
Warren Togami [Thu, 28 May 2009 20:29:22 +0000 (16:29 -0400)]
Filesystem modules already included in =fs, no runtime detection allowed in default dracut

15 years ago$drivers specified from .conf or --drivers get copied once, instead of multiple times...
Warren Togami [Thu, 28 May 2009 19:55:44 +0000 (15:55 -0400)]
$drivers specified from .conf or --drivers get copied once, instead of multiple times with other calls to instmods()

15 years agoDisambiguate modules and drivers. modules are dracutmodules. drivers are kernel...
Warren Togami [Thu, 28 May 2009 18:27:02 +0000 (14:27 -0400)]
Disambiguate modules and drivers.  modules are dracutmodules.  drivers are kernel modules.

15 years agoMore runtime files to /tmp
David Dillow [Thu, 28 May 2009 02:54:03 +0000 (22:54 -0400)]
More runtime files to /tmp

15 years agoMove all files generated during initrd runtime to /tmp
Warren Togami [Thu, 28 May 2009 02:41:18 +0000 (22:41 -0400)]
Move all files generated during initrd runtime to /tmp

15 years agoMake /sbin/nfsroot executable
Warren Togami [Wed, 27 May 2009 18:35:15 +0000 (14:35 -0400)]
Make /sbin/nfsroot executable

15 years agoprefixed more internal command line options with "rd"
Harald Hoyer [Wed, 27 May 2009 12:56:20 +0000 (14:56 +0200)]
prefixed more internal command line options with "rd"

break -> rdbreak
netdebug -> rdnetdebug

15 years agobetter handling of mount moving rpc_pipefs
Harald Hoyer [Wed, 27 May 2009 12:21:52 +0000 (14:21 +0200)]
better handling of mount moving rpc_pipefs

15 years agoinstall umount for nfsroot
Harald Hoyer [Tue, 26 May 2009 16:08:56 +0000 (18:08 +0200)]
install umount for nfsroot

15 years agocleanup environment before calling real init
Andreas Thienemann [Tue, 26 May 2009 16:08:19 +0000 (18:08 +0200)]
cleanup environment before calling real init

15 years agoPrevent unnecessary installation of bash if bash. Same goes for dash.
Andreas Thienemann [Tue, 26 May 2009 16:06:56 +0000 (18:06 +0200)]
Prevent unnecessary installation of bash if bash. Same goes for dash.

15 years agoActaully make 95udev-rules.ub810/check work
Victor Lowther [Mon, 25 May 2009 22:08:04 +0000 (17:08 -0500)]
Actaully make 95udev-rules.ub810/check work

15 years agoFix potential bug that might cause us to load the wrong module in case
Victor Lowther [Mon, 25 May 2009 22:01:21 +0000 (17:01 -0500)]
Fix potential bug that might cause us to load the wrong module in case
the module names are too similar.

15 years agoAdd dependency info to the plymouth modules and the nfsroot module.
Victor Lowther [Mon, 25 May 2009 21:59:17 +0000 (16:59 -0500)]
Add dependency info to the plymouth modules and the nfsroot module.

No point in making it easy for them to fail.

15 years agoAdd check files for network and nfsroot
Victor Lowther [Mon, 25 May 2009 21:35:57 +0000 (16:35 -0500)]
Add check files for network and nfsroot

This way dracut will not try to install them if the system does not have
the needed prerequisites.

15 years agoMake check scripts for 90dmraid and 90dmsetup actually work.
Victor Lowther [Mon, 25 May 2009 16:52:17 +0000 (11:52 -0500)]
Make check scripts for 90dmraid and 90dmsetup actually work.

15 years agoGet rid of dependency on e2mkdir
Victor Lowther [Mon, 25 May 2009 16:44:42 +0000 (11:44 -0500)]
Get rid of dependency on e2mkdir

If we install copy-root as a mount hook, it will be run after the root fs
is mounted and it will make hte proc directory, allowing root filesystem
creation to finish without error.

15 years agoRevert "root=dhcp"
Harald Hoyer [Mon, 25 May 2009 16:24:13 +0000 (18:24 +0200)]
Revert "root=dhcp"

This reverts commit 4c715d64b28b9bbe8ef5e7dedcdaac13322140a4.

15 years agoadd "#!/bin/bash" to test.sh
Harald Hoyer [Mon, 25 May 2009 16:14:26 +0000 (18:14 +0200)]
add "#!/bin/bash" to test.sh

15 years agorenamed internal command line options to rd* namespace
Harald Hoyer [Mon, 25 May 2009 15:59:21 +0000 (17:59 +0200)]
renamed internal command line options to rd* namespace

ramfsdebug -> rdinitdebug
udevinfo -> rdudevinfo
udevdebug -> rdudevdebug

15 years agoexit 0 on end of dracut
Harald Hoyer [Mon, 25 May 2009 15:45:15 +0000 (17:45 +0200)]
exit 0 on end of dracut

15 years agoMove content of 00test module into the test subdir
Victor Lowther [Sun, 24 May 2009 05:29:46 +0000 (22:29 -0700)]
Move content of 00test module into the test subdir

The last changes made the 00test module really awkward anyways, so just
hack the test module into the initramfs in a slight more brutal fashion.

15 years agoAdd infrastructure for dracut module dependency checking.
Victor Lowther [Sun, 24 May 2009 05:29:44 +0000 (22:29 -0700)]
Add infrastructure for dracut module dependency checking.

This also eliminates --skip-missing.  Check scripts should now check
to ensure that any files and settings they will copy from the host
system actually exist when called without arguments.

The check scripts are also updated to not try to source dracut-functions
which(1) is a perfectly good way of checking if a command is on the path.

15 years agoadd small test script to create a minimal root in /mnt/root
Harald Hoyer [Mon, 25 May 2009 14:51:10 +0000 (16:51 +0200)]
add small test script to create a minimal root in /mnt/root

15 years agochmod u+x modules.d/40nfsroot/install
Harald Hoyer [Mon, 25 May 2009 14:49:26 +0000 (16:49 +0200)]
chmod u+x modules.d/40nfsroot/install

15 years agouse 40nfsroot
Harald Hoyer [Mon, 25 May 2009 14:49:10 +0000 (16:49 +0200)]
use 40nfsroot

15 years agomove /var/lib/nfs/rpc_pipefs to NEWROOT only if directory exists
Harald Hoyer [Mon, 25 May 2009 14:48:36 +0000 (16:48 +0200)]
move /var/lib/nfs/rpc_pipefs to NEWROOT only if directory exists

15 years agoroot=dhcp
Harald Hoyer [Mon, 25 May 2009 14:48:19 +0000 (16:48 +0200)]
root=dhcp

15 years agomake root=dhcp work
Harald Hoyer [Mon, 25 May 2009 14:48:01 +0000 (16:48 +0200)]
make root=dhcp work

15 years agodo not ignore old test files
Harald Hoyer [Mon, 25 May 2009 13:33:19 +0000 (15:33 +0200)]
do not ignore old test files

15 years agouse 40nfsroot instead of 95NFS
Harald Hoyer [Mon, 25 May 2009 13:28:56 +0000 (15:28 +0200)]
use 40nfsroot instead of 95NFS

15 years agodo not trap if hostname is empty
Harald Hoyer [Mon, 25 May 2009 13:26:40 +0000 (15:26 +0200)]
do not trap if hostname is empty

15 years agointroduce modular test suite
Harald Hoyer [Mon, 25 May 2009 12:43:03 +0000 (14:43 +0200)]
introduce modular test suite

15 years agosilently run qemu
Harald Hoyer [Mon, 25 May 2009 12:11:24 +0000 (14:11 +0200)]
silently run qemu

15 years agoadd dinfo which module is handled currently
Harald Hoyer [Mon, 25 May 2009 12:10:45 +0000 (14:10 +0200)]
add dinfo which module is handled currently

15 years agofor "-l" search dracut-functions relative to dracut path
Harald Hoyer [Mon, 25 May 2009 12:09:57 +0000 (14:09 +0200)]
for "-l" search dracut-functions relative to dracut path

15 years agolet find_rule find absolute path rules
Harald Hoyer [Mon, 25 May 2009 12:08:39 +0000 (14:08 +0200)]
let find_rule find absolute path rules

15 years agonfsroot: mount NFS root from udev rules
David Dillow [Sat, 23 May 2009 02:53:10 +0000 (22:53 -0400)]
nfsroot: mount NFS root from udev rules

Work-in-progress to mount NFS root from udev, using the DHCP options and
allowing an override from the kernel command line. Supports NFSv4 w/locking
and NFSv2/v3 with nolock.

This is just an RFC patch, you'll note all the XXX markings where I've been
thinking about how to best do things. In addition, we really want to retry
DHCP and NFS mounting in a loop, in case the servers are down or overloaded
like when booting a full diskless cluster.

15 years agonetwork: prepare network configuration engine for udev-based nfsroot
David Dillow [Sat, 23 May 2009 02:43:32 +0000 (22:43 -0400)]
network: prepare network configuration engine for udev-based nfsroot

This changes the network config to run dhclient from within udev, and
allows multiple dhclients to run at once. It also sets the hostname and
adds a kernel command line option 'netdebug' to help debug network issues.

15 years agolib: create a library for useful shell functions
David Dillow [Sat, 23 May 2009 02:29:22 +0000 (22:29 -0400)]
lib: create a library for useful shell functions

There are several snippits of shell code that are useful to multiple
scripts. Start by moving getarg() into the library.

Signed-off-by: David Dillow <dave@thedillows.org>
15 years agocreate test/initramfs.testing from Makefile target
Harald Hoyer [Mon, 25 May 2009 10:11:27 +0000 (12:11 +0200)]
create test/initramfs.testing from Makefile target

15 years agoAdd a README.modules that describes how dracut modules work.
Victor Lowther [Sat, 23 May 2009 02:24:29 +0000 (19:24 -0700)]
Add a README.modules that describes how dracut modules work.

15 years agoPoint README at README.modules for more detail on writing modules
Victor Lowther [Sat, 23 May 2009 02:24:33 +0000 (19:24 -0700)]
Point README at README.modules for more detail on writing modules

15 years agoChanged multiline conditional lists to if statements in dracut-functions
Victor Lowther [Sat, 23 May 2009 02:24:31 +0000 (19:24 -0700)]
Changed multiline conditional lists to if statements in dracut-functions

It seems that some people object to multiline conditional lists.
Oh, well, no accounting for taste.

15 years agoStyle cleanups in main dracut script.
Victor Lowther [Sat, 23 May 2009 02:24:29 +0000 (19:24 -0700)]
Style cleanups in main dracut script.

This patch series applies on top of my previous patch series, and
is mainly concerned with coding style updates and better documentation.

Apparently [[ ]] && { ; } type flow control is scary, so translate
most instances of them into standard if-then and case constructs.

15 years agodracut: fix fallback to default configuration file
David Dillow [Sat, 23 May 2009 02:16:00 +0000 (22:16 -0400)]
dracut: fix fallback to default configuration file

Need to do the fallback in a list rather than a subshell, or we never
actually set $conffile.

Signed-off-by: David Dillow <dave@thedillows.org>
15 years agodracut-funtions: fix 'instmods =modname'
David Dillow [Sat, 23 May 2009 02:12:08 +0000 (22:12 -0400)]
dracut-funtions: fix 'instmods =modname'

Move srcmods definition into the function, as $kernel isn't defined yet when
dracut-functions is sourced from dracut.

Signed-off-by: David Dillow <dave@thedillows.org>
15 years agoMake generation of testroot images succeed
Andreas Thienemann [Thu, 21 May 2009 14:53:52 +0000 (16:53 +0200)]
Make generation of testroot images succeed

sorry, patch was reversed.

correct patch below:

15 years ago/dev/kvm is a char device
Harald Hoyer [Mon, 25 May 2009 09:44:52 +0000 (11:44 +0200)]
/dev/kvm is a char device

15 years agoset u+x for run-qemu
Harald Hoyer [Mon, 25 May 2009 09:35:19 +0000 (11:35 +0200)]
set u+x for run-qemu

15 years agoSupport different virtualization technologies for run-qemu.
Andreas Thienemann [Thu, 21 May 2009 10:24:58 +0000 (12:24 +0200)]
Support different virtualization technologies for run-qemu.

If the host supports kvm, use is. If this is not the case but the kqemu
module is loaded, run qemu with kqemu optimization. Otherwise fall-back to
pure usermode qemu.

15 years agoCreate test image on an md array and improve cryptroot handling
Victor Lowther [Thu, 21 May 2009 02:55:13 +0000 (19:55 -0700)]
Create test image on an md array and improve cryptroot handling

If we purport to test booting to an md raid, we may as well test it.

We do not need the plymouth module and the normal crypt module to include
duplicate functionality.

15 years agoAdd comments to make-test-root to explain why it is written the way it is.
Victor Lowther [Thu, 21 May 2009 02:55:11 +0000 (19:55 -0700)]
Add comments to make-test-root to explain why it is written the way it is.

15 years agoRemove generated test initramfs'es when cleaning up
Victor Lowther [Thu, 21 May 2009 02:55:08 +0000 (19:55 -0700)]
Remove generated test initramfs'es when cleaning up

15 years agoWe create our test image with root as an LVM menber.
Victor Lowther [Thu, 21 May 2009 02:55:06 +0000 (19:55 -0700)]
We create our test image with root as an LVM menber.

We purport to support booting off an encrypted LVM PV, may as well test it.

15 years agoMake running qemu a little more generic
Victor Lowther [Thu, 21 May 2009 02:55:04 +0000 (19:55 -0700)]
Make running qemu a little more generic

Also create the root filesystem from within the virtual env, this way there
will be no nasty suprises w.r.t interactions with the host machine.  This
is important when we test booting to LVM, LUKS, and mdraid.

15 years ago-I parameter allows you specify an arbitary file to install in the initrd image.
Andreas Thienemann [Sun, 24 May 2009 02:10:52 +0000 (22:10 -0400)]
-I parameter allows you specify an arbitary file to install in the initrd image.
-H becomes --hostonly because -h is already taken by --help.

15 years agoAbort if switch_root does not exist.
Warren Togami [Thu, 21 May 2009 23:14:50 +0000 (19:14 -0400)]
Abort if switch_root does not exist.
Otherwise it would succeed silently when we KNOW it would fail, which is not cool.
Usually this means you didn't build switch_root in your dracut checkout and you used dracut -l.
(This currently cannot be done in a check script, because of the current design of check.
Andreas intends on discussing a redesign on the list.)

15 years agoOops, make it work
Warren Togami [Thu, 21 May 2009 19:16:44 +0000 (15:16 -0400)]
Oops, make it work

15 years agoDo not attempt to load policy if selinux-policy is not installed.
Warren Togami [Thu, 21 May 2009 18:34:38 +0000 (14:34 -0400)]
Do not attempt to load policy if selinux-policy is not installed.

15 years agoCheck /sbin/plymouthd for arch instead of /proc/$$/exe. /sbin/plymouthd is guaranteed...
Warren Togami [Thu, 21 May 2009 00:35:08 +0000 (20:35 -0400)]
Check /sbin/plymouthd for arch instead of /proc/$$/exe. /sbin/plymouthd is guaranteed to be there and be the correct arch.

15 years agomodule-init-tools only recognizes files ending in *.conf, so only copy files of that...
Warren Togami [Wed, 20 May 2009 19:35:23 +0000 (15:35 -0400)]
module-init-tools only recognizes files ending in *.conf, so only copy files of that pattern.

15 years agoadd xts module to crypto
Andreas Thienemann [Wed, 20 May 2009 16:06:27 +0000 (18:06 +0200)]
add xts module to crypto

15 years agofix -t auto for fstype=""
Andreas Thienemann [Wed, 20 May 2009 14:51:50 +0000 (16:51 +0200)]
fix -t auto for fstype=""

15 years agoquit plymouth in test root
Harald Hoyer [Wed, 20 May 2009 12:58:55 +0000 (14:58 +0200)]
quit plymouth in test root

15 years agoadd missing files for plymouth
Andreas Thienemann [Wed, 20 May 2009 12:38:22 +0000 (14:38 +0200)]
add missing files for plymouth

15 years agoinclude all modules for the test besides of plymouth
Harald Hoyer [Wed, 20 May 2009 12:09:23 +0000 (14:09 +0200)]
include all modules for the test besides of plymouth

15 years agosilence plymouth install
Harald Hoyer [Wed, 20 May 2009 12:08:58 +0000 (14:08 +0200)]
silence plymouth install

15 years agoignore *~
Harald Hoyer [Wed, 20 May 2009 12:08:25 +0000 (14:08 +0200)]
ignore *~

15 years agoplymouth hide-splash on emergency shell
Harald Hoyer [Wed, 20 May 2009 12:07:37 +0000 (14:07 +0200)]
plymouth hide-splash on emergency shell

15 years agoadd emergency hook
Harald Hoyer [Wed, 20 May 2009 12:05:32 +0000 (14:05 +0200)]
add emergency hook

15 years agofixed NFS mounting
Harald Hoyer [Wed, 20 May 2009 12:04:33 +0000 (14:04 +0200)]
fixed NFS mounting

15 years agoadd "-o, --omit" to omit dracut modules
Harald Hoyer [Wed, 20 May 2009 12:02:44 +0000 (14:02 +0200)]
add "-o, --omit" to omit dracut modules

15 years agoset "-t auto" as default if fstype is emtpy
Harald Hoyer [Wed, 20 May 2009 12:01:03 +0000 (14:01 +0200)]
set "-t auto" as default if fstype is emtpy

15 years agosilence the "check"'s
Harald Hoyer [Wed, 20 May 2009 12:00:28 +0000 (14:00 +0200)]
silence the "check"'s

15 years agocheck for plymouth-set-default-theme not plymouth-set-default-plugin
Harald Hoyer [Wed, 20 May 2009 10:33:11 +0000 (12:33 +0200)]
check for plymouth-set-default-theme not plymouth-set-default-plugin

15 years agodinfo print only when verbose defined
Andreas Thienemann [Wed, 20 May 2009 10:30:22 +0000 (12:30 +0200)]
dinfo print only when verbose defined

15 years agorecreate /dev/null after /dev mounting
Harald Hoyer [Wed, 20 May 2009 09:59:34 +0000 (11:59 +0200)]
recreate /dev/null after /dev mounting

15 years agofix node check for plymouth-start.sh
Harald Hoyer [Wed, 20 May 2009 09:42:41 +0000 (11:42 +0200)]
fix node check for plymouth-start.sh