Re: [PATCH][next] hfsplus: Fix out-of-bounds warnings in __hfsplus_setxattr
From: Andrew Morton
Date: Wed Mar 31 2021 - 00:43:56 EST
On Tue, 30 Mar 2021 09:52:26 -0500 "Gustavo A. R. Silva" <gustavoars@xxxxxxxxxx> wrote:
> Fix the following out-of-bounds warnings by enclosing
> structure members file and finder into new struct info:
>
> fs/hfsplus/xattr.c:300:5: warning: 'memcpy' offset [65, 80] from the object at 'entry' is out of the bounds of referenced subobject 'user_info' with type 'struct DInfo' at offset 48 [-Warray-bounds]
> fs/hfsplus/xattr.c:313:5: warning: 'memcpy' offset [65, 80] from the object at 'entry' is out of the bounds of referenced subobject 'user_info' with type 'struct FInfo' at offset 48 [-Warray-bounds]
>
> Refactor the code by making it more "structured."
>
> Also, this helps with the ongoing efforts to enable -Warray-bounds and
> makes the code clearer and avoid confusing the compiler.
Confused. What was wrong with the old code? Was this warning
legitimate and if so, why? Or is this patch a workaround for a
compiler shortcoming?