]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
allow redefinition of VAR_RUN
authorLuca Berra <bluca@comedia.it>
Sun, 28 Feb 2010 14:46:16 +0000 (15:46 +0100)
committerNeilBrown <neilb@suse.de>
Wed, 3 Mar 2010 01:23:30 +0000 (12:23 +1100)
having mdmon socket under var is painful at shutdown time

Signed-off-by: Luca Berra <bluca@comedia.it>
Signed-off-by: NeilBrown <neilb@suse.de>
Makefile
mdadm.h

index a23923c9b6fe0269c8600bbc36a6446565e336a2..cfe6b92cdf57aded4d4794c5f0183d45eb9ab34c 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -63,8 +63,10 @@ CONFFILEFLAGS = -DCONFFILE=\"$(CONFFILE)\" -DCONFFILE2=\"$(CONFFILE2)\"
 # If you don't have /lib/init/rw you might want to use /dev/.something
 #  e.g. make ALT_RUN=/dev/.mdadm
 ALT_RUN = /lib/init/rw
+VAR_RUN = /var/run
 ALTFLAGS = -DALT_RUN=\"$(ALT_RUN)\"
-CFLAGS = $(CWFLAGS) $(CXFLAGS) -DSendmail=\""$(MAILCMD)"\" $(CONFFILEFLAGS) $(ALTFLAGS)
+VARFLAGS = -DVAR_RUN=\"$(VAR_RUN)\"
+CFLAGS = $(CWFLAGS) $(CXFLAGS) -DSendmail=\""$(MAILCMD)"\" $(CONFFILEFLAGS) $(ALTFLAGS) $(VARFLAGS)
 
 # If you want a static binary, you might uncomment these
 # LDFLAGS = -static
diff --git a/mdadm.h b/mdadm.h
index df3a056a5613d63981c48818b8c7446277b0c44e..3628ea0220b0b41822f3745e93a1f8ade4b9348d 100644 (file)
--- a/mdadm.h
+++ b/mdadm.h
@@ -68,7 +68,18 @@ extern __off64_t lseek64 __P ((int __fd, __off64_t __offset, int __whence));
 #define DEFAULT_BITMAP_DELAY 5
 #define DEFAULT_MAX_WRITE_BEHIND 256
 
+/* VAR_RUN is where pid and socket files used for communicating
+ * with mdmon normally live.  It should be /var/run, but if
+ * it is too hard to remount /var/run as read-only rather than
+ * unmounting it at shutdown time, then it should be
+ * redefined to some place that comfortably persists until
+ * final shutdown, possibly in /dev if that is a tmpfs.
+ * Note: VAR_RUN does not need to be writable at shutdown,
+ * only during boot when "mdmon --takeover" is run.
+ */
+#ifndef VAR_RUN
 #define VAR_RUN "/var/run/mdadm"
+#endif /* VAR_RUN */
 /* ALT_RUN should be somewhere that persists across the pivotroot
  * from early boot to late boot.
  * If you don't have /lib/init/rw you might want to use /dev/.something