diff options
author | Yu Kuai <yukuai3@huawei.com> | 2024-02-29 10:57:09 +0100 |
---|---|---|
committer | Song Liu <song@kernel.org> | 2024-03-01 07:49:46 +0100 |
commit | f109207629552cb04c2a48e90abe7c481e363984 (patch) | |
tree | e3978d7544ef8aa1c42428465d118988131af3ba /.editorconfig | |
parent | md/raid1-10: add a helper raid1_check_read_range() (diff) | |
download | linux-f109207629552cb04c2a48e90abe7c481e363984.tar.xz linux-f109207629552cb04c2a48e90abe7c481e363984.zip |
md/raid1-10: factor out a new helper raid1_should_read_first()
If resync is in progress, read_balance() should find the first usable
disk, otherwise, data could be inconsistent after resync is done. raid1
and raid10 implement the same checking, hence factor out the checking
to make code cleaner.
Noted that raid1 is using 'mddev->recovery_cp', which is updated after
all resync IO is done, while raid10 is using 'conf->next_resync', which
is inaccurate because raid10 update it before submitting resync IO.
Fortunately, raid10 read IO can't concurrent with resync IO, hence there
is no problem. And this patch also switch raid10 to use
'mddev->recovery_cp'.
Co-developed-by: Paul Luse <paul.e.luse@linux.intel.com>
Signed-off-by: Paul Luse <paul.e.luse@linux.intel.com>
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Reviewed-by: Xiao Ni <xni@redhat.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20240229095714.926789-7-yukuai1@huaweicloud.com
Diffstat (limited to '.editorconfig')
0 files changed, 0 insertions, 0 deletions