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

Bug#554120: aufs2 in Debian



Hello Ben,

Ben Hutchings:
> The code says:
> 
> 	BUILD_BUG_ON(sizeof(ino_t) !=3D sizeof(long));
> 	return ALIGN(sizeof(struct au_vdir_de) + nlen, sizeof(ino_t));
> 
> but on alpha, sizeof(ino_t) =3D=3D 4 but sizeof(long) =3D=3D 8.
> 
> Is it really necessary that these types have the same size?  I can't see
> why it would be necessary for the directory entries to be long-aligned.
	:::

It supposed to align the structure on memory, 8-byte alignment.
On some systems, accesses to incorrectly aligned member has to pay the
penalty which is a short-time delay.

As you wrote, the code is wrong.
I had made CONFIG_AUFS_INO_T_64 to support ino_t on alpha
system. Currently it is used by export.c only.
This problem was born when I switched aufs2 from aufs1.

I will fix it and release on next Monday.
Thank you for reporting.


J. R. Okajima



Reply to: