[PATCH] xfs: Fix xfs_attr_leafblock definition
Mark Tinguely
tinguely at sgi.com
Thu Aug 13 08:17:17 CDT 2015
On 08/13/15 04:26, Jan Kara wrote:
> struct xfs_attr_leafblock contains 'entries' array which is declared
> with size 1 altough it can in fact contain much more entries. Since this
> array is followed by further struct members, gcc (at least in version
> 4.8.3) thinks that the array has the fixed size of 1 element and thus
> may optimize away all accesses beyond the end of array resulting in
> non-working code. This problem was only observed with userspace code in
> xfsprogs, however it's better to be safe in kernel as well and have
> matching kernel and xfsprogs definitions.
>
> Signed-off-by: Jan Kara<jack at suse.com>
> ---
I hit this bug in SLES12 and RHEL7 XFS kernel code. It is the gcc 4.8's
new loop optimization routine. A person can bypass it with the option:
-fno-aggressive-loop-optimizations
but this fixes the source of the problem.
Acked-by: Mark Tinguely <tinguely at sgi.com>
More information about the xfs
mailing list