diff options
author | Kamil Kaminski <kylek389@gmail.com> | 2016-04-06 15:58:07 -0500 |
---|---|---|
committer | Kamil Kaminski <kylek389@gmail.com> | 2016-04-06 15:58:21 -0500 |
commit | 008167ae46f2f707dfd803dd941c1d3531484aa0 (patch) | |
tree | 3391ed67973c71f59af2a9b43a1cbe9f9f2b4821 /giga | |
parent | 4e2ad5091cdd7ff4fef531229c383f30dadea13e (diff) | |
download | configs-008167ae46f2f707dfd803dd941c1d3531484aa0.tar.gz configs-008167ae46f2f707dfd803dd941c1d3531484aa0.tar.bz2 configs-008167ae46f2f707dfd803dd941c1d3531484aa0.zip |
giga workaround for intel fakeraid
Diffstat (limited to 'giga')
-rw-r--r-- | giga/64-md-raid-assembly.rules | 35 | ||||
-rw-r--r-- | giga/md-raid.txt | 4 |
2 files changed, 39 insertions, 0 deletions
diff --git a/giga/64-md-raid-assembly.rules b/giga/64-md-raid-assembly.rules new file mode 100644 index 0000000..41097d6 --- /dev/null +++ b/giga/64-md-raid-assembly.rules @@ -0,0 +1,35 @@ +# do not edit this file, it will be overwritten on update + +# Don't process any events if anaconda is running as anaconda brings up +# raid devices manually +ENV{ANACONDA}=="?*", GOTO="md_inc_end" +# assemble md arrays + +SUBSYSTEM!="block", GOTO="md_inc_end" + +# handle potential components of arrays (the ones supported by md) +ENV{ID_FS_TYPE}=="linux_raid_member", GOTO="md_inc" + +# "noiswmd" on kernel command line stops mdadm from handling +# "isw" (aka IMSM - Intel RAID). +# "nodmraid" on kernel command line stops mdadm from handling +# "isw" or "ddf". +IMPORT{cmdline}="noiswmd" +IMPORT{cmdline}="nodmraid" + +ENV{nodmraid}=="?*", GOTO="md_inc_end" +ENV{ID_FS_TYPE}=="ddf_raid_member", GOTO="md_inc" +ENV{noiswmd}=="?*", GOTO="md_inc_end" +ENV{ID_FS_TYPE}=="isw_raid_member", GOTO="md_inc" +GOTO="md_inc_end" + +LABEL="md_inc" + +# remember you can limit what gets auto/incrementally assembled by +# mdadm.conf(5)'s 'AUTO' and selectively whitelist using 'ARRAY' +ACTION=="add|change", IMPORT{program}="/usr/bin/env IMSM_NO_PLATFORM=1 /usr/bin/mdadm --incremental --export $devnode --offroot ${DEVLINKS}" +ACTION=="add|change", ENV{MD_STARTED}=="*unsafe*", ENV{MD_FOREIGN}=="no", ENV{SYSTEMD_WANTS}+="mdadm-last-resort@$env{MD_DEVICE}.timer" +ACTION=="remove", ENV{ID_PATH}=="?*", RUN+="/usr/bin/env IMSM_NO_PLATFORM=1 /usr/bin/mdadm -If $name --path $env{ID_PATH}" +ACTION=="remove", ENV{ID_PATH}!="?*", RUN+="/usr/bin/env IMSM_NO_PLATFORM=1 /usr/bin/mdadm -If $name" + +LABEL="md_inc_end" diff --git a/giga/md-raid.txt b/giga/md-raid.txt new file mode 100644 index 0000000..779538f --- /dev/null +++ b/giga/md-raid.txt @@ -0,0 +1,4 @@ +- had to prepend the following before /usr/bin/madm + /usr/bin/env IMSM_NO_PLATFORM=1 + +stupid fucking mdadm devs breaking intel fakeraid |