Re: [patch 7/8] inode-diet: Use a union for i_blocks and i_size,i_rdev and i_devices

From: H. Peter Anvin
Date: Mon Jul 03 2006 - 11:18:12 EST


Theodore Tso wrote:
On Mon, Jul 03, 2006 at 10:06:42AM +0100, Christoph Hellwig wrote:
On Sun, Jul 02, 2006 at 08:53:40PM -0400, Theodore Ts'o wrote:
The i_blocks and i_size fields are only used for regular files. So we
move them into the union, along with i_rdev and i_devices, which are
only used by block or character devices.
Can we please make this a named instead of unnamed union so everyone still
using the fields will trip up? To reduce the impact a few more imajor/iminor
conversions might be needed were direct references to i_rdev crept back in.

I did that originally but when I sent out my first version of patches
for review, other developers asked me to use an unnamed union ---
since otherwise the patch would be much, much larger (lots of changes
would need to be made) and that makes it much harder to merge into
either Andrew's or Linus's tree.

What do other people think? I can go either way on this one.


I think people need to know they're using a union, and hence it should be named. Otherwise it's really easy to stare blindly at a piece of code, not understanding why touching i_foo affects i_bar.

-hpa
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/