dracut/0059-99suse-Add-SUSE-specific-initrd-parsing.patch
Marcus Meissner 73faa804ea Accepting request 237520 from home:hreinecke:branches:Base:System
- 40network: always start netroot in ifup.sh (bnc#881235)
  * Add: 0066-40network-always-start-netroot-in-ifup.sh.patch
- 95fcoe: check() always returns 255
  * Add: 0067-95fcoe-check-always-returns-255.patch
- 95fcoe-uefi: Test for EFI firmware (bnc#882412)
  * Add: 0068-95fcoe-uefi-Test-for-EFI-firmware.patch

- Rename patches to match git repository:
  * Old: more-fips-adjustments.patch
  * New: 0057-01fips-Include-some-more-hmacs.patch
  * Old: dracut-check-supported.patch
  * New: 0058-dracut-add-warning-when-including-unsupported-module.patch
- Add 99suse module to git repository:
  * Remove: parse-suse-initrd.sh
  * Remove: module-setup-initrd.sh
  * Add: 0059-99suse-Add-SUSE-specific-initrd-parsing.patch
- Add write-ifcfg-suse.sh to git repository:
  * Remove: write-ifcfg-suse.sh
  * Add: 0060-45ifcfg-Add-SUSE-specific-write-ifcfg-file.patch
- Fixup error messages in write-ifcfg-suse.sh (bnc#881286)
  * Add: 0061-45ifcfg-Fixup-error-message-in-write-ifcfg-suse.patch
- Add missing 'libgcc_s.so' library (bnc#881692):
  * Add: 0062-95iscsi-Install-libgcc_s-library.patch
  * Add: 0063-90multipath-Install-libgcc_s-library.patch
- Install missing scsi_dh_alua module (bnc#871617)
  * Add: 0064-90kernel-modules-install-scsi_dh_alua.patch
- 95iscsi: fixup bnx2i offload booting (bnc#855747)
  * Add: 0065-95iscsi-Fixup-bnx2i-offload-booting.patch

  Add: more-fips-adjustments.patch

OBS-URL: https://build.opensuse.org/request/show/237520
OBS-URL: https://build.opensuse.org/package/show/Base:System/dracut?expand=0&rev=160
2014-06-17 07:43:08 +00:00

90 lines
2.5 KiB
Diff

From 1202041ec3f7b2d8dd58999e72a309c9fba9069f Mon Sep 17 00:00:00 2001
From: Thomas Renninger <trenn@suse.de>
Date: Wed, 4 Jun 2014 12:56:50 +0200
Subject: 99suse: Add SUSE-specific initrd parsing
Add a module to implement mkinitrd-compatible kernel parameter parsing
Signed-off-by: Thomas Renninger <trenn@suse.de>
---
modules.d/99suse/module-setup.sh | 8 ++++++
modules.d/99suse/parse-suse-initrd.sh | 51 +++++++++++++++++++++++++++++++++++
2 files changed, 59 insertions(+)
create mode 100755 modules.d/99suse/module-setup.sh
create mode 100755 modules.d/99suse/parse-suse-initrd.sh
diff --git a/modules.d/99suse/module-setup.sh b/modules.d/99suse/module-setup.sh
new file mode 100755
index 0000000..06afba8
--- /dev/null
+++ b/modules.d/99suse/module-setup.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
+# ex: ts=8 sw=4 sts=4 et filetype=sh
+# module-setup.sh for openSUSE / SLE initrd parameters conversion
+
+install() {
+ inst_hook cmdline 99 "$moddir/parse-suse-initrd.sh"
+}
diff --git a/modules.d/99suse/parse-suse-initrd.sh b/modules.d/99suse/parse-suse-initrd.sh
new file mode 100755
index 0000000..542171b
--- /dev/null
+++ b/modules.d/99suse/parse-suse-initrd.sh
@@ -0,0 +1,51 @@
+#!/bin/sh
+# convert openSUSE / SLE initrd command lines into dracut ones
+# linuxrc=trace shell=1 sysrq=yes sysrq=1-9 journaldev mduuid
+# TargetAddress TargetPort TargetName
+
+# sysrq
+sysrq=$(getarg sysrq)
+if [ "$sysrq" ] && [ "$sysrq" != "no" ]; then
+ echo 1 > /proc/sys/kernel/sysrq
+ case "$sysrq" in
+ 0|1|2|3|4|5|6|7|8|9)
+ echo $sysrq > /proc/sysrq-trigger
+ ;;
+ esac
+fi
+
+# debug
+if getarg linuxrc=trace; then
+ echo "rd.debug rd.udev.debug" >> /etc/cmdline.d/99-suse.conf
+ unset CMDLINE
+fi
+
+# debug shell
+if getargbool 0 shell; then
+ echo "rd.break" >> /etc/cmdline.d/99-suse.conf
+ unset CMDLINE
+fi
+
+# journaldev
+journaldev=$(getarg journaldev)
+if [ -n "$journaldev" ]; then
+ echo "root.journaldev=$journaldev" >> /etc/cmdline.d/99-suse.conf
+ unset CMDLINE
+fi
+
+# mduuid
+mduuid=$(getarg mduuid)
+if [ -n "$mduuid"]; then
+ echo "rd.md.uuid=$mduuid" >> /etc/cmdline.d/99-suse.conf
+ unset CMDLINE
+fi
+
+# TargetAddress / TargetPort / TargetName
+TargetAddress=$(getarg TargetAddress)
+TargetPort=$(getarg TargetPort)
+TargetName=$(getarg TargetName)
+
+if [ -n "$TargetAddress" -a -n "$TargetName" ]; then
+ echo "netroot=iscsi:$TargetAddress::$TargetPort::$TargetName" >> /etc/cmdline.d/99-suse.conf
+ unset CMDLINE
+fi
--
1.8.4.5