From: Andy Smith <andy@strugglers.net>
To: linux-raid@vger.kernel.org
Subject: Re: "md/raid10:md5: sdf: redirecting sector 2979126480 to another mirror"
Date: Mon, 11 Jan 2021 17:27:44 +0000 [thread overview]
Message-ID: <20210111172744.GH3712@bitfolk.com> (raw)
In-Reply-To: <20210106232716.GY3712@bitfolk.com>
On Wed, Jan 06, 2021 at 11:27:16PM +0000, Andy Smith wrote:
> "md/raid10:md5: sdf: redirecting sector 2979126480 to another
> mirror"
[…]
> So, this messages comes from here:
>
> https://github.com/torvalds/linux/blob/v5.8/drivers/md/raid10.c#L1188
>
> but under what circumstances does it actually happen?
I managed to obtain a stack trace with "perf":
# Line 77 of this function in the raid10 module is where the
# "redirecting sector" message comes from on my kernel, the stock
# Debian buster kernel.
$ sudo perf probe -s ./linux-source-4.19/ -m raid10 --add 'raid10_read_request:77'
Added new events:
probe:raid10_read_request (on raid10_read_request:77 in raid10)
probe:raid10_read_request_1 (on raid10_read_request:77 in raid10)
probe:raid10_read_request_2 (on raid10_read_request:77 in raid10)
probe:raid10_read_request_3 (on raid10_read_request:77 in raid10)
probe:raid10_read_request_4 (on raid10_read_request:77 in raid10)
You can now use it in all perf tools, such as:
perf record -e probe:raid10_read_request_4 -aR sleep 1
# In another window start up a heavy continuous read load on
# /dev/md3.
$ sudo perf record -e probe:raid10_read_request -gaR sleep 120
# In syslog:
Jan 11 17:10:38 hostname kernel: [1318771.689507] md/raid10:md3: nvme1n1p5: redirecting sector 656970992 to another mirror
# "perf record" finishes:
[ perf record: Woken up 2 times to write data ]
[ perf record: Captured and wrote 0.757 MB perf.data (2 samples) ]
$ sudo perf report --stdio
# To display the perf.data header info, please use --header/--header-only options.
#
#
# Total Lost Samples: 0
#
# Samples: 2 of event 'probe:raid10_read_request'
# Event count (approx.): 2
#
# Children Self Trace output
# ........ ........ ..................
#
100.00% 100.00% (ffffffffc0127e42)
|
---__libc_read
entry_SYSCALL_64_after_hwframe
do_syscall_64
ksys_read
vfs_read
new_sync_read
generic_file_read_iter
ondemand_readahead
__do_page_cache_readahead
read_pages
mpage_readpages
submit_bio
generic_make_request
md_make_request
md_handle_request
raid10_make_request
raid10_read_request
So I still don't know why this is considered an error and worth
logging about, but at least I don't see any obvious error paths
there.
I will continue to dig in to it ("perf" is all new to me), but if
anyone happens to know why it does this please do put me out of my
misery!
BTW this is a different host to the one I previously saw it on. As I
say I have seen this message occasionally for years now, on multiple
machines and multiple versions of Debian.
Cheers,
Andy
next prev parent reply other threads:[~2021-01-11 17:28 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-06 23:27 "md/raid10:md5: sdf: redirecting sector 2979126480 to another mirror" Andy Smith
2021-01-11 17:27 ` Andy Smith [this message]
2021-01-12 0:36 ` Guoqing Jiang
2021-01-12 2:03 ` Andy Smith
2021-01-12 11:30 ` Guoqing Jiang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210111172744.GH3712@bitfolk.com \
--to=andy@strugglers.net \
--cc=linux-raid@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox