From: Georgi Nikolov <gnikolov@icdsoft.com>
To: Guoqing Jiang <guoqing.jiang@cloud.ionos.com>, song@kernel.org
Cc: linux-raid <linux-raid@vger.kernel.org>
Subject: Re: Pausing md check hangs
Date: Tue, 10 Mar 2020 17:30:36 +0200 [thread overview]
Message-ID: <58a16d12-4df3-c97c-33cb-b7eed3534a8b@icdsoft.com> (raw)
In-Reply-To: <15519216-347d-c355-fa1e-e1ec29f7e996@cloud.ionos.com>
I have tried new 4.19 kernel with proposed patches with no success. Same
story with md1_raid6 (last time it was with 5.4 and md10_raid6).
57.45% [kernel] [k] analyse_stripe
17.34% [kernel] [k] ops_run_io
6.60% [kernel] [k] handle_stripe
6.20% [kernel] [k] handle_active_stripes.isra.73
4.86% [kernel] [k] __list_del_entry_valid
1.82% [kernel] [k] queue_work_on
1.68% [kernel] [k] raid5_wakeup_stripe_thread
1.65% [kernel] [k] do_release_stripe
1.09% [kernel] [k] __release_stripe
Thank you
> diff --git a/drivers/md/raid5-cache.c b/drivers/md/raid5-cache.c
> index 9b6da759dca2..a961d8eed73e 100644
> --- a/drivers/md/raid5-cache.c
> +++ b/drivers/md/raid5-cache.c
> @@ -2532,13 +2532,10 @@ static ssize_t r5c_journal_mode_show(struct
> mddev *mddev, char *page)
> struct r5conf *conf;
> int ret;
>
> - ret = mddev_lock(mddev);
> - if (ret)
> - return ret;
> -
> + spin_lock(&mddev->lock);
> conf = mddev->private;
> if (!conf || !conf->log) {
> - mddev_unlock(mddev);
> + spin_unlock(&mddev->lock);
> return 0;
> }
>
> @@ -2558,7 +2555,7 @@ static ssize_t r5c_journal_mode_show(struct
> mddev *mddev, char *page)
> default:
> ret = 0;
> }
> - mddev_unlock(mddev);
> + spin_unlock(&mddev->lock);
> return ret;
> }
>
>
> --- a/drivers/md/md.c
> +++ b/drivers/md/md.c
> @@ -4779,7 +4779,8 @@ action_store(struct mddev *mddev, const char
> *page, size_t len)
> if (test_bit(MD_RECOVERY_RUNNING, &mddev->recovery) &&
> mddev_lock(mddev) == 0) {
> flush_workqueue(md_misc_wq);
> - if (mddev->sync_thread) {
> + if (mddev->sync_thread ||
> + test_bit(MD_RECOVERY_RUNNING,&mddev->recovery)) {
>
next prev parent reply other threads:[~2020-03-10 15:30 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-27 13:42 Pausing md check hangs Georgi Nikolov
2020-01-27 17:11 ` Song Liu
2020-01-28 8:11 ` Georgi Nikolov
2020-01-28 18:04 ` Song Liu
2020-02-01 14:26 ` Georgi Nikolov
2020-02-03 23:31 ` Song Liu
2020-02-17 12:14 ` Georgi Nikolov
2020-02-17 13:15 ` Georgi Nikolov
2020-02-25 2:10 ` Guoqing Jiang
2020-03-10 15:30 ` Georgi Nikolov [this message]
2020-03-10 20:27 ` Guoqing Jiang
-- strict thread matches above, loose matches on Subject: below --
2020-01-27 9:52 Georgi Nikolov
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=58a16d12-4df3-c97c-33cb-b7eed3534a8b@icdsoft.com \
--to=gnikolov@icdsoft.com \
--cc=guoqing.jiang@cloud.ionos.com \
--cc=linux-raid@vger.kernel.org \
--cc=song@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;
as well as URLs for NNTP newsgroup(s).