[Top] [All Lists]

Re: [PATCH 1/2] xfs: add CRC infrastructure

To: Andi Kleen <andi@xxxxxxxxxxxxxx>
Subject: Re: [PATCH 1/2] xfs: add CRC infrastructure
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Thu, 8 Nov 2012 09:28:31 +1100
Cc: xfs@xxxxxxxxxxx
In-reply-to: <20121107213946.GB16230@xxxxxxxxxxxxxxxxxx>
References: <1352295452-4726-1-git-send-email-david@xxxxxxxxxxxxx> <1352295452-4726-2-git-send-email-david@xxxxxxxxxxxxx> <m2ehk5qt88.fsf@xxxxxxxxxxxxxx> <20121107203105.GE6434@dastard> <20121107213946.GB16230@xxxxxxxxxxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Wed, Nov 07, 2012 at 10:39:46PM +0100, Andi Kleen wrote:
> > Why would that be necessary? We never include the checksum field in
> > the calculation when setting it or verifiying it, and the
> > verification uses exactly the same method as the original
> > calculation to check the CRC, so it doesn't matter if the CRC value
> > is zero or not - if it matches (zero or otherwise), the validation
> > passes....
> I thought zero meant the checksum is not there? You stated that
> somewhere else.

That's only to avoid spurious warnings when moving from an existing
kernel to a new kernel that issues advisory warnings on mismatches.
For enforcement, though, when the on-disk format changes so that all
metadata is CRC protected, determination of whether zero is a valid
CRC value is determined by a superblock feature bit, not a magic CRC
mapping value...

Hence mapping the zero value just for advisory warnings really
doesn't buy us that much other than complexity for this single case.


Dave Chinner

<Prev in Thread] Current Thread [Next in Thread>