Commit Graph

4065 Commits (043)

Author SHA1 Message Date
Harald Hoyer a601870064 5?-dracut*.install: better parsing of /proc/cmdline
"read -r -d '' -a" does, what we want.
2015-05-13 12:02:14 +02:00
Harald Hoyer 8cd8820547 use cp --reflink=auto
saves some space, if the destination is on the same filesystem on some
filesystems
2015-05-13 12:02:10 +02:00
Harald Hoyer 471439f564 add dracut.pc pkg-config file 2015-05-13 11:47:23 +02:00
Harald Hoyer e668f3bc36 .dir-locals.el: correct syntax 2015-05-13 11:44:00 +02:00
Harald Hoyer 351de47882 README.testsuite: add bridge-utils to list of rpms 2015-05-07 18:15:57 +02:00
Harald Hoyer 07d9319d54 network/net-lib.sh:iface_has_link() wait 5s for the carrier to appear
https://bugzilla.redhat.com/show_bug.cgi?id=1088808
2015-05-07 14:49:06 +02:00
Harald Hoyer 7c5ec0f5be network:dhcp:wait_for_ipv6_dad() in PREINIT6 2015-05-07 14:43:26 +02:00
Harald Hoyer 79bc77d2f4 Merge pull request #61 from cmorty/pull/plymouth
Add plymouth-set-default-theme to the plymouth dependencies
2015-04-30 11:28:49 +02:00
Moritz 'Morty' Strübe 874b013573 Add plymouth-set-default-theme to the plymouth dependencies
plymouth-set-default-theme is not shipped with ubuntu and therefore
causes errors.
2015-04-30 11:20:27 +02:00
Harald Hoyer ffa0ee5d16 Merge pull request #59 from lnykryn/master
dracut-functions: use [[ ]] with -n and no quotes
2015-04-30 09:29:06 +02:00
Harald Hoyer a742c80778 Merge pull request #60 from rustybird/master
Fix ask_for_password bug breaking bash without plymouth
2015-04-30 09:28:50 +02:00
Rusty Bird 04ba461045
Fix ask_for_password bug breaking bash without plymouth
If crypt-lib.sh is sourced from any #!/bin/sh script, a POSIX shell
quirk is in effect that causes variable assignments to "special
builtins" (such as "shift") to leak to their context. So the buggy
code works even despite the missing semicolons.

But if it is sourced by "bash acting under its own name", i.e. from
any #!/bin/bash script, the quirk is disabled, tty_cmd/tty_prompt are
undefined, and ask_for_password doesn't do anything if plymouth is not
present.
2015-04-30 03:25:14 +00:00
Harald Hoyer 6d58fa27a4 change "while read x" to cope with EOF without newline
while read x || [ -n "$x" ]

should do the trick
2015-04-28 11:39:15 +02:00
Harald Hoyer 822a7ae504 fips: add some s390 kernel modules 2015-04-28 10:46:33 +02:00
Lukas Nykryn b0b60c8e05 dracut-functions: use [[ ]] with -n and no quotes 2015-04-27 11:40:54 +02:00
Harald Hoyer 4851deca54 dmsquash-live/apply-live-updates.sh: needs 'find'
also add /run/initramfs/live/updates as a directory, where to pull
the updates from

https://bugzilla.redhat.com/show_bug.cgi?id=1213736
2015-04-24 12:18:53 +02:00
Harald Hoyer 437dad70e9 Defer modprobe of HW modules, until udev is running
Also honor blacklisting
2015-04-24 11:59:37 +02:00
Harald Hoyer a3e464ca43 drm/module-setup.sh: radeon needs amdkfd
AMD's HSA Linux kernel driver (amdkfd) has been merged into the mainline
kernel since kernel 3.19.

However, for the driver to work, it needs to be included in the default
initramfs image, together with the amd_iommu_v2 driver.

The radeon driver (AMD's kernel graphic driver) calls amdkfd during its
initialization and probing stages. Because radeon is included in the
initramfs image, it tries to initialize amdkfd during the early boot
stages. However, as amdkfd is not present there, it fails.

That doesn't harm radeon operation. However, it disables the HSA
abilities in the machine.

Because of the current design, if you later try to "modprobe amdkfd",
you won't be able to run HSA applications, even though the driver will
be loaded.

https://bugzilla.redhat.com/show_bug.cgi?id=1205222
2015-04-23 16:11:53 +02:00
Harald Hoyer be82884d35 Makefile: turn off hostonly excplicitely for testimage target 2015-04-23 16:11:26 +02:00
Harald Hoyer 180e9d7851 kernel-modules: install all HID drivers
Instead of hardcoding a list of useful drivers, which has to be curated
all the time, just include all HID drivers.
2015-04-23 13:46:52 +02:00
Harald Hoyer d3d52b20e9 dracut-systemd/rootfs-generator.sh: use strstr rather than grep
grep on /proc/cmdline is overkill and would add a requirement for grep
2015-04-21 16:35:34 +02:00
Harald Hoyer 23446ef1e0 ifcfg/write-ifcfg.sh: unset vlan
clear the vlan flag, if a previous interface in the loop
was a vlan interface
2015-04-21 15:10:49 +02:00
Harald Hoyer ec06c5d3b5 Merge pull request #55 from dracut-mailing-devs/1427202794-18834-1-git-send-email-aidecoe@aidecoe.name
Take into account lib64 dirs when detecting version, modules and params
2015-03-26 18:34:49 +01:00
Amadeusz Żołnowski d3be9275c7 Take into account lib64 dirs when detecting version, modules and params 2015-03-26 16:38:42 +01:00
Alexander Tsoy 13efce5d1b base/dracut-lib.sh: remove bashism 2015-03-26 16:38:38 +01:00
NeilBrown f53ede36fb dracut-systemd/rootfs-generator.sh: always create generated files.
When 'systemctl daemon-reload' is run, systemd will clean out
/run/systemd/generator and re-run all the generators.
So it is important that the generators always create the required
files.

rootfs-generator.sh currently does *not* create the desired files
if $hookdir/initqueue/finished/devexists-${_name}.sh
exists.

This is not removed by "systectl daemon-reload" so the first time this
generator is run it will do the right thing.  Subsequent times it
won't.

This results in incorrect timeouts after "daemon-reload" is run.

So let the existence of each file only guard the creation that file.

Signed-off-by: NeilBrown <neilb@suse.de>
2015-03-26 16:38:36 +01:00
NeilBrown 97cb17c792 systemd/dracut-iniqueue - continue waiting if any timeout script makes progress
A number of timeout scripts can be registered.  If any one of them
makes progress - e.g. assembles a degraded md array - then
the main loop should wait a bit longer rather than pressing forward.

This is particularly important is resume-from-hibernate requires a
degraded md array.  Both the script to forcibly assemble the md array
and the script to abort hibernation if the device doesn't appear
are 'timeout' scripts.  There needs to be a reasonable delay between
these running.

So: if any script has indicated that progress was made, break of out
the loop and go back to normal waiting.

Signed-off-by: NeilBrown <neilb@suse.de>
2015-03-26 16:38:36 +01:00
NeilBrown 3b82ac1696 mdraid/mdraid_start.sh: tell mainloop if we make progress.
mdraid_start is a number of scripts which run after a timeout.
If it makes progress, it should tell the main loop so that it
knows that it is worth waiting a bit longer.

So in that case, create the initqueue/work file which the main loop
checks for.

Signed-off-by: NeilBrown <neilb@suse.de>
2015-03-26 16:38:36 +01:00
Gerd von Egidy 99ccbc30df Add support for ethernet point-to-point connections configured via DHCP
When current dracut receives an ip with netmask of 255.255.255.255 via DHCP,
setting the also supplied default gateway fails (because it is obviously not
within the netmask).

The setup with a netmask of /32 is quite common in colocation datacenters
where you don't want the machines of two different customers to directly talk
to each other. At least two of the biggest colocation providers in Germany
(1&1 and Strato) do it that way. NetworkManager supports this kind of setup
and the dhclient-scripts of several distributions too.

In this patch I have implemented a simple approach very similar to what is
found in Debian. The dhclient-script from Fedora uses a more sophisticated
approach, but that relies on the ipcalc utility which would introduce a
dependency on Fedora-initscripts for dracut.

Signed-off-by: Gerd von Egidy <gerd.von.egidy@intra2net.com>
2015-03-26 16:38:33 +01:00
Harald Hoyer e93d0bea38 test: include kernel-network-modules for network tests 2015-03-26 10:57:58 +01:00
James Lee 833e0f9e83 crypt-loop: Always include 'loop' kernel module
When the 'loop' kernel module isn't loaded in a running system, it gets
excluded from the hostonly initrd.  Given that the crypt-loop dracut
module has to be loaded explicitly anyway, it makes sense to always
include the requisite loop kernel module.
2015-03-26 02:17:34 -04:00
James Lee c902aba0d4 crypt-loop: Fix decrypt when running at info log level
When booting with 'rd.info', the 'info' statements in the crypt-loop
module's 'loop_decrypt' function are output to stdout along with the key
that gets piped into the 'cryptsetup' command, which causes the crypt
device unlocking to fail.

There are two possible simple solutions to this problem:

1. Redirect the info messages to stderr (just add '>&2' at the end of
the info statements).

or

2. Remove the info statements altogether.

I have tested both and they both work, but this commit implements #2.
The existing info messages are long (they overflow 80 characters
easily) and redundant (the password prompt clearly indicates what is
happening), and just generally not useful.  Given that no one has
reported or fixed this bug in the three years that this module has
existed, no one will miss these info messages.

The commit also changes an error message in the same function to be more
descriptive.
2015-03-25 23:31:24 -04:00
Harald Hoyer 2bc5054a64 Merge pull request #35 from enovance/fix_include_variables_name
dracut: Ajusting variables name for --include
2015-03-24 20:46:06 +01:00
Harald Hoyer b67d810785 dracut.spec: add new modules 2015-03-24 16:10:45 +01:00
Harald Hoyer bbbdba2ec3 fcoe/lldpad.sh: add executable flags 2015-03-24 16:03:47 +01:00
Harald Hoyer 863e18b4cd crypt-loop/module-setup.sh: make module-setup.sh executable 2015-03-24 16:03:47 +01:00
Harald Hoyer a18d5494eb dracut-systemd/module-setup.sh: make module-setup.sh executable 2015-03-24 16:03:47 +01:00
Harald Hoyer cbb4b50e02 systemd-networkd: add experimental systemd-networkd support 2015-03-24 16:03:47 +01:00
Harald Hoyer ae43adb70d network: split out kernel-network-modules 2015-03-24 16:03:47 +01:00
Harald Hoyer ddfefd05fc debug: add more tools to the dracut debug module 2015-03-24 16:03:47 +01:00
Harald Hoyer 25e08a0973 systemd-initrd: add /etc/initrd-release 2015-03-24 16:03:22 +01:00
Harald Hoyer 6f92423c89 dracut.sh: create /var/tmp 2015-03-24 16:03:11 +01:00
Harald Hoyer 5641b0974b systemd: add more targets and tools
also set the multi-user.target as the default target
2015-03-24 16:02:09 +01:00
Harald Hoyer 5c44f43e69 dracut.spec: removed compat /sbin symlink to dracut binary 2015-03-23 12:19:41 +01:00
Harald Hoyer 3c20ac5377 TEST-30-ISCSI/test.sh: add all dracut modules
add all dracut modules to catch netroot conflicts and side effects like

afcc697cb8
2015-03-20 16:13:30 +01:00
Harald Hoyer afcc697cb8 nfs/parse-nfsroot.sh: don't unset netroot, if not nfs 2015-03-20 15:48:15 +01:00
Harald Hoyer 636d2d46a5 dracut.sh: add support for creating a UEFI boot executable
With an EFI stub, the kernel, the initramfs and a kernel cmdline can be
glued together to a single UEFI executable, which can be booted by a
UEFI BIOS.
2015-03-20 14:31:23 +01:00
Harald Hoyer 21a209735a dracut.sh: only print cmdline from modules, which would be included 2015-03-20 14:31:22 +01:00
Harald Hoyer bee086532f dracut.sh: simplify module install loop 2015-03-20 14:31:22 +01:00
Harald Hoyer df1e8127da rootfs-block/module-setup.sh: find root btrfs subvolumes
If root is a btrfs subvolume, find it, if fstab is not used
2015-03-20 14:31:22 +01:00