diff options
author | Artur Paszkiewicz <[email protected]> | 2016-08-16 14:26:08 +0200 |
---|---|---|
committer | Shaohua Li <[email protected]> | 2016-08-17 10:22:08 -0700 |
commit | c622ca543bff8e73efacf4dafa0cc9851ecea511 (patch) | |
tree | 4c38732de1a14ada5cb7bcc954826c744143859b /net/unix/sysctl_net_unix.c | |
parent | 207efcd2b55e0460dfee35663fbb3d05efad990a (diff) |
md: don't print the same repeated messages about delayed sync operation
This fixes a long-standing bug that caused a flood of messages like:
"md: delaying data-check of md1 until md2 has finished (they share one
or more physical units)"
It can be reproduced like this:
1. Create at least 3 raid1 arrays on a pair of disks, each on different
partitions.
2. Request a sync operation like 'check' or 'repair' on 2 arrays by
writing to their md/sync_action attribute files. One operation should
start and one should be delayed and a message like the above will be
printed.
3. Issue a write to the third array. Each write will cause 2 copies of
the message to be printed.
This happens when wake_up(&resync_wait) is called, usually by
md_check_recovery(). Then the delayed sync thread again prints the
message and is put to sleep. This patch adds a check in md_do_sync() to
prevent printing this message more than once for the same pair of
devices.
Reported-by: Sven Koehler <[email protected]>
Link: https://bugzilla.kernel.org/show_bug.cgi?id=151801
Signed-off-by: Artur Paszkiewicz <[email protected]>
Signed-off-by: Shaohua Li <[email protected]>
Diffstat (limited to 'net/unix/sysctl_net_unix.c')
0 files changed, 0 insertions, 0 deletions