reorganized struct inode results in unaligned accesses

From: Meelis Roos
Date: Sun Jun 19 2011 - 12:33:21 EST


A week ago I noticed that in 3.0.0-rc3, sparc64 machines log a lot of
unaligned accesses in different vfs functions in dmesg. I reported but
obviously not well enough. Today I had a look at it and found the
reason.

Commit 13e12d14e2dccc7995b8f15a5678a338ab4e6a8c (vfs: reorganize 'struct
inode' layout a bit) changes i_state to be unsigned int instead of
unsigned long. This is the cause of unaligned accesses on sparc64 and
maybe others. Changing it back to unsigned long fixes the warnings but I
did not look at the layout of the resulting struct - might leave a hole
there.

--
Meelis Roos (mroos@xxxxxxxx)
--
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/