From c3f26510c6b2a9b634fd417e7fa3d4bf9674dd28 Mon Sep 17 00:00:00 2001 From: NeilBrown Date: Mon, 31 Jan 2011 14:49:39 +1100 Subject: [PATCH] open_mddev: open RDONLY if RDWR doesn't work. If an array is read-only then "mdadm -S" cannot open it to stop it without this fix. Signed-off-by: NeilBrown --- mdopen.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mdopen.c b/mdopen.c index 21baf5d..0a17421 100644 --- a/mdopen.c +++ b/mdopen.c @@ -390,6 +390,8 @@ int create_mddev(char *dev, char *name, int autof, int trustworthy, int open_mddev(char *dev, int report_errors) { int mdfd = open(dev, O_RDWR); + if (mdfd < 0 && errno == EACCES) + mdfd = open(dev, O_RDONLY); if (mdfd < 0) { if (report_errors) fprintf(stderr, Name ": error opening %s: %s\n",