From bf68e9d9ab185121b6004fc81b531bce8348726d Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Mon, 10 Nov 2008 09:30:07 -0700 Subject: [PATCH] fix add_dev() handling of broken links Resolves issues like: mdadm -Ss mdadm: unable to open /dev/md/r1: No such file or directory ...where /dev/md/r1 points to a removed device. Signed-off-by: Dan Williams --- util.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/util.c b/util.c index 8845a0f..b2fbec7 100644 --- a/util.c +++ b/util.c @@ -467,8 +467,10 @@ int devlist_ready = 0; int add_dev(const char *name, const struct stat *stb, int flag, struct FTW *s) { struct stat st; + if (S_ISLNK(stb->st_mode)) { - stat(name, &st); + if (stat(name, &st) != 0) + return 0; stb = &st; }