On 6/5/14, 8:42 PM, Dave Chinner wrote:
> On Thu, Jun 05, 2014 at 07:00:02PM -0500, Eric Sandeen wrote:
>> On 6/5/14, 6:56 PM, Dave Chinner wrote:
>>> On Thu, Jun 05, 2014 at 06:09:16PM -0500, Eric Sandeen wrote:
>>
>> ...
>>
>>>> But ... should we maybe just do this once and for all in
>>>> xfs_sb_from_disk? I'm not sure leaving it up to every
>>>> caller is a good idea, unless somebody ahs a reason to
>>>> pre-populate some fields - I can't imagine why that would
>>>> be, though...
>>>
>>> We don't ever read in the CRC field into the in-memory structures
>>> because it has no meaning in memory. Simiarly, we don't ever write
>>> the CRC field from the in-core structure because we always
>>> re-calculate it in the IO path if CRCs are configured. That is
>>> consistent behaviour across the entire code-base.
>>
>> <snip stuff>
>>
>>> Perhaps we should move the memset() to within xfs_sb_from_disk()
>>> to make this explicit?
>>
>> Yes, that's what I meant by "this" in "do this once and for all" -
>> sorry, that wasn't clear. memset(0) in xfs_sb_from_disk().
>
> I didn't read it clearly. my fault.
>
>> Yeah, the more I think about it, the more I think that's probably
>> the obviously correct thing to do.
Actually, a memset() seems like overkill - every field except
sb_crc is explicitly filled in in the function.
Maybe better to just set sb_crc to 0, with a comment as to why?
I think I'll whip that one up.
-Eric
> *nod*
>
> Cheers,
>
> Dave.
>
|