Re: [RFC][PATCH] Set JBD2_FEATURE_INCOMPAT_64BIT on filesystems larger than 32-bit blocks (take 2).

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 05 Jun 2007 15:26:53 +0200
Laurent Vivier <Laurent.Vivier@xxxxxxxx> wrote:

> Dave Kleikamp wrote:
> > Jose is right.  The endian conversion is unnecessary.
> > 
> > Shaggy
> 
> But by using le32_to_cpu(es->s_blocks_count_hi) you explicitly mark the variable
> as a little-endian.
> So if someone reads the code, he knows this is a little-endian value and this
> allows to avoid errors if later variable must be tested for other value than 0.
> 
> For instance, you have :
> 
> if(es->s_blocks_count_hi)
> 
> and later the value should be compared to 10, how do you know easily you should use:
> 
> if (le32_to_cpu(es->s_blocks_count_hi) == 10)
> 
> instead of
> 
> if(es->s_blocks_count_hi == 10)
> 
> I think writing like Mingming asks should allow to avoid errors later.
> 
> (and code becomes really self-explicit...)
> 
> Regards,
> Laurent

Hi Laurent,

In this particular case though, the value of s_blocks_count_hi should not be uses on its own.  The correct way would be to use ext4_blocks_count() which already does the endian conversion.  If you think the code could confuse people as to how to access the data in s_blocks_count_hi, wouldn't hiding it through the use of a macro make more sense than doing an unnecessary endian conversion?

-JRS
-
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux