From: Logan Gunthorpe <logang@deltatee.com>
To: linux-kernel@vger.kernel.org, linux-raid@vger.kernel.org,
Song Liu <song@kernel.org>
Cc: Christoph Hellwig <hch@infradead.org>,
Donald Buczek <buczek@molgen.mpg.de>,
Guoqing Jiang <guoqing.jiang@linux.dev>, Xiao Ni <xni@redhat.com>,
Stephen Bates <sbates@raithlin.com>,
Martin Oliveira <Martin.Oliveira@eideticom.com>,
David Sloan <David.Sloan@eideticom.com>,
Logan Gunthorpe <logang@deltatee.com>
Subject: [PATCH v4 00/11] Bug fixes for mdadm tests
Date: Wed, 8 Jun 2022 10:27:45 -0600 [thread overview]
Message-ID: <20220608162756.144600-1-logang@deltatee.com> (raw)
Hi,
This is the updated series with the feedback received in v3[1].
This series includes fixes to fix all the kernel panics in the mdadm
tests and some, related, sparse issues, plus some cleanup.
Patches 2 and 3 are cleanup from the original series that aren't
related now but I thought are worth including.
Patches 4 through 7 fix bugs with conf->log and remove the single,
unecessary, RCU access. This cleans up some sparse errors.
Patch 8 cleans up some sparse warnings with pslot usage.
Patch 9 is a cleanup which adds an enum so that patch 10 can
fix an mdadm hang. Patch 11 also fixes an mdadm hang.
I've also included Patch 1 in this series which fixes a recent
mistake in raid5-ppl that was reported by 0day which I don't think
has been fixed yet.
This series will be followed by another series for mdadm which fixes
the segfaults and annotates some failing tests to make mdadm tests
runnable fairly reliably, but I'll wait for a stable hash for this
series to note the kernel version tested against. Following that,
v3 of my lock contention series will be sent with more confidence
of its correctness.
This series is based on the current md/md-next branch as of yesterday
(42b805af10). A git branch is available here:
https://github.com/sbates130272/linux-p2pmem md-bug_v4
Thanks,
Logan
[1] https://lore.kernel.org/all/20220602181818.50729-1-logang@deltatee.com
--
Changes since v3:
* Collected Reviewed-by Tags from Christoph
* Removed lockdep_assert_held() that didn't belong in patch
(per Christoph)
* Moved the last patch to the beginning
Changes since v2:
* Rework the RCU changes to remove the RCU usage instead of using
it every. This makes more sense seeing most accesses do not need
RCU due to them being on the IO path, or with mddev_lock() held
and the remaining ones are on the slow path and may use
mddev_lock(). (Per Christoph)
* Collect a couple more Reviewed-by tags from Christoph
Changes since v1:
* Add a patch to move the struct r5l_log to raid5-log.h in order
to fix a compiler error with rcu_access_pointer() in versions
prior to gcc-10
* Rework r5c_is_writeback() changes to make less churn (per Christoph)
* Change some 1s to trues in rcu_dereference_protected calls (per
Christoph)
* Fix an odd hunk mistake in the RCU protection patch (per Christoph)
* Fix an inverted conditional (noticed by Donald)
* Add a patch to add an enum for the overloaded values used by
mddev->curr_resync to make the status_resync() fixes clearer
(per Christoph)
--
Logan Gunthorpe (11):
md/raid5-ppl: Fix argument order in bio_alloc_bioset()
md/raid5-log: Drop extern decorators for function prototypes
md/raid5-ppl: Drop unused argument from ppl_handle_flush_request()
md/raid5: Ensure array is suspended for calls to log_exit()
md/raid5-cache: Take mddev_lock in r5c_journal_mode_show()
md/raid5-cache: Drop RCU usage of conf->log
md/raid5-cache: Clear conf->log after finishing work
md/raid5-cache: Annotate pslot with __rcu notation
md: Use enum for overloaded magic numbers used by mddev->curr_resync
md: Ensure resync is reported after it starts
md: Notify sysfs sync_completed in md_reap_sync_thread()
drivers/md/md.c | 55 +++++++++++++++-------------
drivers/md/md.h | 15 ++++++++
drivers/md/raid5-cache.c | 40 ++++++++++-----------
drivers/md/raid5-log.h | 77 +++++++++++++++++++---------------------
drivers/md/raid5-ppl.c | 6 ++--
drivers/md/raid5.c | 18 ++++------
6 files changed, 111 insertions(+), 100 deletions(-)
base-commit: 92a045f71a3c6767a7f30c0d80d2e4f6d5d49d77
--
2.30.2
next reply other threads:[~2022-06-08 16:29 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-08 16:27 Logan Gunthorpe [this message]
2022-06-08 16:27 ` [PATCH v4 01/11] md/raid5-ppl: Fix argument order in bio_alloc_bioset() Logan Gunthorpe
2022-06-17 6:27 ` Christoph Hellwig
2022-06-17 21:52 ` Song Liu
2022-06-08 16:27 ` [PATCH v4 02/11] md/raid5-log: Drop extern decorators for function prototypes Logan Gunthorpe
2022-06-08 16:27 ` [PATCH v4 03/11] md/raid5-ppl: Drop unused argument from ppl_handle_flush_request() Logan Gunthorpe
2022-06-08 16:27 ` [PATCH v4 04/11] md/raid5: Ensure array is suspended for calls to log_exit() Logan Gunthorpe
2022-06-08 17:59 ` Song Liu
2022-06-08 18:21 ` Logan Gunthorpe
2022-06-08 22:02 ` Song Liu
2022-06-08 22:07 ` Logan Gunthorpe
2022-06-08 16:27 ` [PATCH v4 05/11] md/raid5-cache: Take mddev_lock in r5c_journal_mode_show() Logan Gunthorpe
2022-06-08 16:27 ` [PATCH v4 06/11] md/raid5-cache: Drop RCU usage of conf->log Logan Gunthorpe
2022-06-08 16:27 ` [PATCH v4 07/11] md/raid5-cache: Clear conf->log after finishing work Logan Gunthorpe
2022-06-08 16:27 ` [PATCH v4 08/11] md/raid5-cache: Annotate pslot with __rcu notation Logan Gunthorpe
2022-06-08 16:27 ` [PATCH v4 09/11] md: Use enum for overloaded magic numbers used by mddev->curr_resync Logan Gunthorpe
2022-06-08 16:27 ` [PATCH v4 10/11] md: Ensure resync is reported after it starts Logan Gunthorpe
2022-06-08 16:27 ` [PATCH v4 11/11] md: Notify sysfs sync_completed in md_reap_sync_thread() Logan Gunthorpe
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=20220608162756.144600-1-logang@deltatee.com \
--to=logang@deltatee.com \
--cc=David.Sloan@eideticom.com \
--cc=Martin.Oliveira@eideticom.com \
--cc=buczek@molgen.mpg.de \
--cc=guoqing.jiang@linux.dev \
--cc=hch@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-raid@vger.kernel.org \
--cc=sbates@raithlin.com \
--cc=song@kernel.org \
--cc=xni@redhat.com \
/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
all inboxes | Powered by JetHome®