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

Commit 8bd2f0a0 authored by NeilBrown's avatar NeilBrown
Browse files

md: ensure new badblocks are handled promptly.



When we mark blocks as bad we need them to be acknowledged by the
metadata handler promptly.

For an in-kernel metadata handler that was already being done.  But
for an external metadata handler we need to alert it of the change by
sending a notification through the sysfs file.  This adds that
notification.

Signed-off-by: default avatarNeilBrown <neilb@suse.de>
parent 52c64152
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -7858,6 +7858,7 @@ int rdev_set_badblocks(struct md_rdev *rdev, sector_t s, int sectors,
				  s + rdev->data_offset, sectors, acknowledged);
				  s + rdev->data_offset, sectors, acknowledged);
	if (rv) {
	if (rv) {
		/* Make sure they get written out promptly */
		/* Make sure they get written out promptly */
		sysfs_notify_dirent_safe(rdev->sysfs_state);
		set_bit(MD_CHANGE_CLEAN, &rdev->mddev->flags);
		set_bit(MD_CHANGE_CLEAN, &rdev->mddev->flags);
		md_wakeup_thread(rdev->mddev->thread);
		md_wakeup_thread(rdev->mddev->thread);
	}
	}