Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:42.1
dracut
0085-95zfcp_rules-print-out-rd.zfcp-commandline...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0085-95zfcp_rules-print-out-rd.zfcp-commandline-parameter.patch of Package dracut
From 3d918eb5be673f243dc75b358a35e1ed307f0ea5 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke <hare@suse.de> Date: Thu, 26 Jun 2014 13:44:05 +0200 Subject: 95zfcp_rules: print out rd.zfcp commandline parameter When called with '--hostonly-cmdline' the module should print out the configuration. Signed-off-by: Hannes Reinecke <hare@suse.de> --- modules.d/95zfcp_rules/module-setup.sh | 39 +++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/modules.d/95zfcp_rules/module-setup.sh b/modules.d/95zfcp_rules/module-setup.sh index 849645c..3f80754 100755 --- a/modules.d/95zfcp_rules/module-setup.sh +++ b/modules.d/95zfcp_rules/module-setup.sh @@ -3,10 +3,40 @@ # ex: ts=8 sw=4 sts=4 et filetype=sh # called by dracut +cmdline() { + is_zfcp() { + local _dev=$1 + local _devpath=$(cd -P /sys/dev/block/$_dev ; echo $PWD) + local _sdev _lun _wwpn _ccw + + [ "${_devpath#*/sd}" == "$_devpath" ] && return 1 + _sdev="${_devpath%%/block/*}" + [ -e ${_sdev}/fcp_lun ] || return 1 + _lun=$(cat ${_sdev}/fcp_lun) + _wwpn=$(cat ${_sdev}/wwpn) + _ccw=$(cat ${_sdev}/hba_id) + echo "rd.zfcp=${_ccw},${_wwpn},${_lun}" + return 1 + } + [[ $hostonly ]] || [[ $mount_needs ]] && { + for_each_host_dev_and_slaves is_zfcp + } +} + +# called by dracut check() { local _arch=$(uname -m) + local _ccw [ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1 - require_binaries zfcp_disk_configure /usr/lib/udev/collect || return 1 + require_binaries /usr/lib/udev/collect || return 1 + + [[ $hostonly ]] || [[ $mount_needs ]] && { + for _ccw in /sys/bus/ccw/devices/*/host* ; do + [ -d "$_ccw" ] || continue + found=$(($found+1)); + done + [ $found -eq 0 ] && return 255 + } return 0 } @@ -19,6 +49,13 @@ depends() { install() { inst_multiple /usr/lib/udev/collect inst_hook cmdline 30 "$moddir/parse-zfcp.sh" + if [[ $hostonly_cmdline == "yes" ]] ; then + local _zfcp + + for _zfcp in $(cmdline) ; do + printf "%s\n" "$zfcp" >> "${initdir}/etc/cmdline.d/94zfcp.conf" + done + fi if [[ $hostonly ]] ; then inst_rules_wildcard 51-zfcp-*.rules inst_rules_wildcard 41-s390x-zfcp-*.rules -- 1.8.4.5
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor