From: Harald Hoyer <harald-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: "Amadeusz Żołnowski" <aidecoe-2qtfh70TtYba5EbDDlwbIw@public.gmane.org>
Cc: initramfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH] add option --ignore-kernel-modules
Date: Wed, 04 Aug 2010 18:32:09 +0200 [thread overview]
Message-ID: <4C599609.6060107@redhat.com> (raw)
In-Reply-To: <20100804181519.5eaf9f1c-2qtfh70TtYba5EbDDlwbIw@public.gmane.org>
pushed
On 08/04/2010 06:15 PM, Amadeusz Żołnowski wrote:
> Instead of adding modprobe and rmmod, create symlinks to /bin/true to
> don't produce unnecessary errors. Anyway it's a workaround for
> following desired behaviour: modprobe tries to insert module only if
> it's not built into kernel
> ---
> dracut | 10 +++++++++-
> dracut.8 | 4 ++++
> modules.d/99base/install | 13 ++++++++++---
> 3 files changed, 23 insertions(+), 4 deletions(-)
>
> diff --git a/dracut b/dracut
> index c22051c..e0c2186 100755
> --- a/dracut
> +++ b/dracut
> @@ -46,6 +46,10 @@ Creates initial ramdisk images for preloading modules
> firmwares, separated by :
> --kernel-only Only install kernel drivers and firmware files
> --no-kernel Do not install kernel drivers and firmware files
> + --ignore-kernel-modules
> + Don't try to load modules. It automatically implies
> + '--no-kernel'. It's assumed that everything needed
> + is built into kernel.
> --strip Strip binaries in the initramfs
> --nostrip Do not strip binaries in the initramfs (default)
> --mdadmconf Include local /etc/mdadm.conf
> @@ -86,6 +90,10 @@ while (($#> 0)); do
> --fwdir) fw_dir_l="$2"; shift;;
> --kernel-only) kernel_only="yes"; no_kernel="no";;
> --no-kernel) kernel_only="no"; no_kernel="yes";;
> + --ignore-kernel-modules) kernel_only="no"; no_kernel="yes"
> + ignore_kmodules="yes"
> + omit_dracutmodules_l+=\ kernel-modules
> + ;;
> --strip) do_strip_l="yes";;
> --nostrip) do_strip_l="no";;
> --mdadmconf) mdadmconf_l="yes";;
> @@ -228,7 +236,7 @@ chmod 755 "$initdir"
>
> export initdir hookdirs dracutbasedir dracutmodules drivers \
> fw_dir drivers_dir debug beverbose no_kernel kernel_only \
> - add_drivers mdadmconf lvmconf filesystems
> + add_drivers mdadmconf lvmconf filesystems ignore_kmodules
>
> if [[ $kernel_only != yes ]]; then
> # Create some directory structure first
> diff --git a/dracut.8 b/dracut.8
> index 3a85cb5..4890357 100644
> --- a/dracut.8
> +++ b/dracut.8
> @@ -52,6 +52,10 @@ only install kernel drivers and firmware files
> .BR \-\-no-kernel
> do not install kernel drivers and firmware files
> .TP
> +.BR \-\-ignore-kernel-modules
> +don't try to load modules; it automatically implies \fB--no-kernel\fR; it's
> +assumed that everything needed is built into kernel
> +.TP
> .BR \-\-mdadmconf
> include local /etc/mdadm.conf
> .TP
> diff --git a/modules.d/99base/install b/modules.d/99base/install
> index 6ba9e7e..9cdb086 100755
> --- a/modules.d/99base/install
> +++ b/modules.d/99base/install
> @@ -1,6 +1,13 @@
> #!/bin/bash
> -dracut_install mount mknod mkdir modprobe pidof sleep chroot \
> - sed ls flock cp mv dmesg rm ln rmmod mkfifo less
> +dracut_install mount mknod mkdir pidof sleep chroot sed ls flock cp mv dmesg \
> + rm ln mkfifo less
> +if [[ ${ignore_kmodules} = yes ]]; then
> + inst /bin/true
> + ln -s /bin/true "${initdir}"/sbin/modprobe
> + ln -s /bin/true "${initdir}"/sbin/rmmod
> +else
> + dracut_install modprobe rmmod
> +fi
> if [ ! -e "${initdir}/bin/sh" ]; then
> dracut_install bash
> (ln -s bash "${initdir}/bin/sh" || :)
> @@ -18,7 +25,7 @@ if which switch_root>/dev/null 2>&1; then
> dracut_install switch_root
> else
> inst "$moddir/switch_root" "/sbin/switch_root" \
> - || derror "Failed to install switch_root"
> + || derror "Failed to install switch_root"
> fi
> inst "$moddir/dracut-lib.sh" "/lib/dracut-lib.sh"
> inst_hook cmdline 10 "$moddir/parse-root-opts.sh"
prev parent reply other threads:[~2010-08-04 16:32 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-04 16:15 [PATCH] add option --ignore-kernel-modules Amadeusz Żołnowski
[not found] ` <20100804181519.5eaf9f1c-2qtfh70TtYba5EbDDlwbIw@public.gmane.org>
2010-08-04 16:32 ` Harald Hoyer [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4C599609.6060107@redhat.com \
--to=harald-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=aidecoe-2qtfh70TtYba5EbDDlwbIw@public.gmane.org \
--cc=initramfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.