Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8c6ac868 authored by Andre Noll's avatar Andre Noll Committed by NeilBrown
Browse files

md: Push down reconstruction log message to personality code.



Currently, the md layer checks in analyze_sbs() if the raid level
supports reconstruction (mddev->level >= 1) and if reconstruction is
in progress (mddev->recovery_cp != MaxSector).

Move that printk into the personality code of those raid levels that
care (levels 1, 4, 5, 6, 10).

Signed-off-by: default avatarAndre Noll <maan@systemlinux.org>
Signed-off-by: default avatarNeilBrown <neilb@suse.de>
parent 50ac168a
Loading
Loading
Loading
Loading
+0 −9
Original line number Diff line number Diff line
@@ -2604,15 +2604,6 @@ static void analyze_sbs(mddev_t * mddev)
			clear_bit(In_sync, &rdev->flags);
		}
	}



	if (mddev->recovery_cp != MaxSector &&
	    mddev->level >= 1)
		printk(KERN_ERR "md: %s: raid array is not clean"
		       " -- starting background reconstruction\n",
		       mdname(mddev));

}

static void md_safemode_timeout(unsigned long data);
+4 −0
Original line number Diff line number Diff line
@@ -2052,6 +2052,10 @@ static int run(mddev_t *mddev)
		goto out_free_conf;
	}

	if (mddev->recovery_cp != MaxSector)
		printk(KERN_NOTICE "raid1: %s is not clean"
		       " -- starting background reconstruction\n",
		       mdname(mddev));
	printk(KERN_INFO 
		"raid1: raid set %s active with %d out of %d mirrors\n",
		mdname(mddev), mddev->raid_disks - mddev->degraded, 
+4 −0
Original line number Diff line number Diff line
@@ -2186,6 +2186,10 @@ static int run(mddev_t *mddev)
		goto out_free_conf;
	}

	if (mddev->recovery_cp != MaxSector)
		printk(KERN_NOTICE "raid10: %s is not clean"
		       " -- starting background reconstruction\n",
		       mdname(mddev));
	printk(KERN_INFO
		"raid10: raid set %s active with %d out of %d devices\n",
		mdname(mddev), mddev->raid_disks - mddev->degraded,
+4 −0
Original line number Diff line number Diff line
@@ -4454,6 +4454,10 @@ static int run(mddev_t *mddev)
	int working_disks = 0;
	mdk_rdev_t *rdev;

	if (mddev->recovery_cp != MaxSector)
		printk(KERN_NOTICE "raid5: %s is not clean"
		       " -- starting background reconstruction\n",
		       mdname(mddev));
	if (mddev->reshape_position != MaxSector) {
		/* Check that we can continue the reshape.
		 * Currently only disks can change, it must