Unverified Commit 7d8bd75f authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!15303 md/raid1: fix memory leak in raid1_run() if no active rdev

parents daf55dc8 14eaaf8f
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -77,6 +77,7 @@ static int max_queued_requests = 1024;

static void allow_barrier(struct r1conf *conf, sector_t sector_nr);
static void lower_barrier(struct r1conf *conf, sector_t sector_nr);
static void raid1_free(struct mddev *mddev, void *priv);

#define raid1_log(md, fmt, args...)				\
	do { if ((md)->queue) blk_add_trace_msg((md)->queue, "raid1 " fmt, ##args); } while (0)
@@ -3155,6 +3156,8 @@ static int raid1_run(struct mddev *mddev)
	 */
	if (conf->raid_disks - mddev->degraded < 1) {
		md_unregister_thread(&conf->thread);
		if (!mddev->private)
			raid1_free(mddev, conf);
		return -EINVAL;
	}