From: SandeepKsinha <sandeepksinha@gmail.com>
To: Goswin von Brederlow <goswin-v-b@web.de>
Cc: Alberto Bertogli <albertito@blitiri.com.ar>,
linux-kernel@vger.kernel.org, dm-devel@redhat.com,
linux-raid@vger.kernel.org, agk@redhat.com, neilb@suse.de
Subject: Re: [RFC PATCH] dm-csum: A new device mapper target that checks data integrity
Date: Fri, 26 Jun 2009 12:56:42 +0530 [thread overview]
Message-ID: <37d33d830906260026t60ae1c71h981b6f3bc0165053@mail.gmail.com> (raw)
In-Reply-To: <878wkhyqj3.fsf@frosties.localdomain>
Hi Alberto,
+ * TODO: would it be better to have M1 and M2 apart, to improve the chances of
+ * recovery in case of a failure?
+ *
How do you guarantee consistency in case of any lost writes? Your
checksum might hold an updated value while your data block might be
lost or written to a wrong destination?
When implementing such integrity solutions, IMO, it is always
advisable to handle such error conditions else this might lead to
issues. Since, checksums are very tightly coupled with the data and
any misleading can be quite dangerous unlike parity which can be
recovered.
Calculate the data's CRC, and compare it to the one found in M1. If they
+ * match, the reading is successful. If not, compare it to the one found in
+ * M2. If they match, the reading is successful;
Also, I hope by M1 and M2 you refer to the entry for a particular
block in the respective IMD sector. What kind of mechanism do you use
to determine which is younger?
Is it the timestamp or some generation count?
I assume information is per_block_entry in the IMD sectors. Which I
don't see in your implementation?
*
+ * The imd structure consists of:
+ * - 16 bit CRC (CCITT) (big endian)
+ * - 16 bit flags (big endian)
+ * - 32 bit tag
Correct me If I am missing something.
On Fri, May 29, 2009 at 12:59 AM, Goswin von Brederlow<goswin-v-b@web.de> wrote:
> Now I need to get a new harddisk so I can test this without risking
> live data. :)
>
> MfG
> Goswin
> --
> To unsubscribe from this list: send the line "unsubscribe linux-raid" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
--
Regards,
Sandeep.
“To learn is to change. Education is a process that changes the learner.”
next prev parent reply other threads:[~2009-06-26 7:26 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-21 16:13 Alberto Bertogli
2009-05-21 18:17 ` Greg Freemyer
2009-05-21 19:17 ` Alberto Bertogli
2009-05-25 12:22 ` Goswin von Brederlow
2009-05-25 17:46 ` Alberto Bertogli
2009-05-26 10:33 ` Goswin von Brederlow
2009-05-26 12:52 ` Alberto Bertogli
2009-05-28 19:29 ` Goswin von Brederlow
2009-06-26 7:26 ` SandeepKsinha [this message]
2009-06-26 8:50 ` SandeepKsinha
2009-06-26 22:36 ` Alberto Bertogli
2009-06-26 22:53 ` Alan Cox
2009-06-28 0:34 ` Neil Brown
2009-06-28 15:30 ` Alberto Bertogli
2009-06-28 22:59 ` Goswin von Brederlow
2009-05-26 19:48 ` [RFC PATCH v2] " Alberto Bertogli
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=37d33d830906260026t60ae1c71h981b6f3bc0165053@mail.gmail.com \
--to=sandeepksinha@gmail.com \
--cc=agk@redhat.com \
--cc=albertito@blitiri.com.ar \
--cc=dm-devel@redhat.com \
--cc=goswin-v-b@web.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-raid@vger.kernel.org \
--cc=neilb@suse.de \
/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®