Thread (13 messages) 13 messages, 6 authors, 2019-08-16

Re: [PATCH] md/raid0: Fail BIOs if their underlying block device is gone

From: Roman Mamedov <hidden>
Date: 2019-07-29 20:24:07
Also in: dm-devel, linux-block

On Mon, 29 Jul 2019 16:33:59 -0300
"Guilherme G. Piccoli" [off-list ref] wrote:
Currently md/raid0 is not provided with any mechanism to validate if
an array member got removed or failed. The driver keeps sending BIOs
regardless of the state of array members. This leads to the following
situation: if a raid0 array member is removed and the array is mounted,
some user writing to this array won't realize that errors are happening
unless they check kernel log or perform one fsync per written file.

In other words, no -EIO is returned and writes (except direct ones) appear
normal. Meaning the user might think the wrote data is correctly stored in
the array, but instead garbage was written given that raid0 does stripping
(and so, it requires all its members to be working in order to not corrupt
data).
If that's correct, then this seems to be a critical weak point in cases when
we have a RAID0 as a member device in RAID1/5/6/10 arrays.

-- 
With respect,
Roman
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help