From: NeilBrown Date: Thu, 24 May 2012 01:49:49 +0000 (+1000) Subject: udev-rules: prevent systemd from mount devices before they are ready. X-Git-Tag: mdadm-3.2.6~36 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b7e05d2373313dd8d0cb687479ad58a88f37d29f;p=thirdparty%2Fmdadm.git udev-rules: prevent systemd from mount devices before they are ready. When an array is assembled incrementally, systemd might see it before it is ready, try to mount it, fail, and give up. Result is that array doesn't get mounted. If we ask udev to tell systemd that it isn't ready yet in this case, systemd waits until it is ready, and all are happy. Signed-off-by: NeilBrown --- diff --git a/udev-md-raid.rules b/udev-md-raid.rules index f564f70a..814c8972 100644 --- a/udev-md-raid.rules +++ b/udev-md-raid.rules @@ -28,7 +28,7 @@ ENV{DEVTYPE}=="partition", GOTO="md_ignore_state" # never leave state 'inactive' ATTR{md/metadata_version}=="external:[A-Za-z]*", ATTR{md/array_state}=="inactive", GOTO="md_ignore_state" TEST!="md/array_state", GOTO="md_end" -ATTR{md/array_state}=="|clear|inactive", GOTO="md_end" +ATTR{md/array_state}=="|clear|inactive", ENV{SYSTEMD_READY}="0", GOTO="md_end" LABEL="md_ignore_state" IMPORT{program}="/sbin/mdadm --detail --export $tempnode"