From 1b78e47021170527e9f173b05e3adac41f8bccf9 Mon Sep 17 00:00:00 2001 From: Guoqing Jiang Date: Thu, 17 Dec 2015 01:54:25 +0800 Subject: [PATCH] mdadm: do not try to hold dlm lock in free_super1 Since free_super1 actually doesn't change the sb, it just free the addr space of sb. Also free_super1 is called in lots of place within mdadm, so remove dlm lock code since the func doesn't need the protection and also reduce latency. Signed-off-by: Guoqing Jiang Signed-off-by: NeilBrown --- super1.c | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/super1.c b/super1.c index 7b2bd869..2f1b6dc6 100644 --- a/super1.c +++ b/super1.c @@ -2422,15 +2422,6 @@ static int write_bitmap1(struct supertype *st, int fd, enum bitmap_update update static void free_super1(struct supertype *st) { - int rv, lockid; - if (is_clustered(st)) { - rv = cluster_get_dlmlock(st, &lockid); - if (rv) { - pr_err("Cannot get dlmlock in %s return %d\n", __func__, rv); - cluster_release_dlmlock(st, lockid); - return; - } - } if (st->sb) free(st->sb); @@ -2442,8 +2433,6 @@ static void free_super1(struct supertype *st) free(di); } st->sb = NULL; - if (is_clustered(st)) - cluster_release_dlmlock(st, lockid); } #ifndef MDASSEMBLE -- 2.47.2