All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mikael Abrahamsson <swmike@swm.pp.se>
To: Gionatan Danti <g.danti@assyoma.it>
Cc: Roger Heflin <rogerheflin@gmail.com>,
	Wols Lists <antlists@youngman.org.uk>,
	Reindl Harald <h.reindl@thelounge.net>,
	Roman Mamedov <rm@romanrm.net>,
	Linux RAID <linux-raid@vger.kernel.org>
Subject: Re: Filesystem corruption on RAID1
Date: Sun, 20 Aug 2017 09:14:27 +0200 (CEST)	[thread overview]
Message-ID: <alpine.DEB.2.20.1708200907440.3655@uplift.swm.pp.se> (raw)
In-Reply-To: <a93cf0cc1d39c30f585eb53ed36aa4c0@assyoma.it>

On Fri, 18 Aug 2017, Gionatan Danti wrote:

> So while many (old) mismatch_cnt reports on RAID1/10 arrays where 
> dismissed as "don't bother, it's a harmless RAID1 thing", I really think 
> than some were genuine corruptions due to micro powerlosses and similar 
> causes.

After a non-clean poweroff and possible mismatch now between the RAID1 
drives, and now fsck runs. It reads from the drives and fixes problem. 
However because the RAID1 drives contain different information, some of 
the errors are not fixed. Next time anything comes along, it might read 
from a different drive than what fsck read from, and now we have 
corruption.

Wouldn't it make sense for an option where fsck can do its reads and the 
md layer would run "repair" on all stripes that fsck touches? Whatever 
information is handed off to fsck, then parity is always checked (and 
repaired) if there is a mismatch.

The problem here with issuing a "repair" action is that it might actually 
copy data from the drive that fsck didn't read from, so now even though 
fsck thought it had made everything clean in the fs, it's no longer clean 
because md "repair" copied non-clean inforamation to the drive that fsck 
looked at and deemed to be ok?

-- 
Mikael Abrahamsson    email: swmike@swm.pp.se

  reply	other threads:[~2017-08-20  7:14 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-13 15:35 Filesystem corruption on RAID1 Gionatan Danti
2017-07-13 16:48 ` Roman Mamedov
2017-07-13 21:28   ` Gionatan Danti
2017-07-13 21:34     ` Reindl Harald
2017-07-13 22:34       ` Gionatan Danti
2017-07-14  0:32         ` Reindl Harald
2017-07-14  0:52           ` Anthony Youngman
2017-07-14  1:10             ` Reindl Harald
2017-07-14 10:46           ` Gionatan Danti
2017-07-14 10:58             ` Reindl Harald
2017-08-17  8:23             ` Gionatan Danti
2017-08-17 12:41               ` Roger Heflin
2017-08-17 14:31                 ` Gionatan Danti
2017-08-17 17:33                   ` Wols Lists
2017-08-17 20:50                     ` Gionatan Danti
2017-08-17 21:01                       ` Roger Heflin
2017-08-17 21:21                         ` Gionatan Danti
2017-08-17 21:23                           ` Gionatan Danti
2017-08-17 22:51                       ` Wols Lists
2017-08-18 12:26                         ` Gionatan Danti
2017-08-18 12:54                           ` Roger Heflin
2017-08-18 19:42                             ` Gionatan Danti
2017-08-20  7:14                               ` Mikael Abrahamsson [this message]
2017-08-20  7:24                                 ` Gionatan Danti
2017-08-20 10:43                                   ` Mikael Abrahamsson
2017-08-20 13:07                                     ` Wols Lists
2017-08-20 15:38                                       ` Adam Goryachev
2017-08-20 15:48                                         ` Mikael Abrahamsson
2017-08-20 16:10                                           ` Wols Lists
2017-08-20 23:11                                             ` Adam Goryachev
2017-08-21 14:03                                               ` Anthony Youngman
2017-08-20 19:11                                           ` Gionatan Danti
2017-08-20 19:03                                         ` Gionatan Danti
2017-08-20 19:01                                       ` Gionatan Danti
2017-08-31 22:55                                     ` Robert L Mathews
2017-09-01  5:39                                       ` Reindl Harald
2017-09-01 23:14                                         ` Robert L Mathews
2017-08-20 23:22                                 ` Chris Murphy
2017-08-21  5:57                                   ` Gionatan Danti
2017-08-21  8:37                                   ` Mikael Abrahamsson
2017-08-21 12:28                                     ` Gionatan Danti
2017-08-21 14:09                                       ` Anthony Youngman
2017-08-21 17:33                                     ` Chris Murphy
2017-08-21 17:52                                       ` Reindl Harald
2017-07-14  1:48         ` Chris Murphy
2017-07-14  7:22           ` Roman Mamedov

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=alpine.DEB.2.20.1708200907440.3655@uplift.swm.pp.se \
    --to=swmike@swm.pp.se \
    --cc=antlists@youngman.org.uk \
    --cc=g.danti@assyoma.it \
    --cc=h.reindl@thelounge.net \
    --cc=linux-raid@vger.kernel.org \
    --cc=rm@romanrm.net \
    --cc=rogerheflin@gmail.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.