Re: [PATCH] staging: lustre: fix structure size for ARM OABI

From: James Simmons
Date: Sat Aug 19 2017 - 22:52:41 EST



> On Aug 17, 2017, at 10:26, Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> >
> > On Wed, Aug 16, 2017 at 05:44:15PM +0300, Cihangir Akturk wrote:
> >> When building the kernel for the ARM architecture without setting
> >> CONFIG_AEABI, size of struct lov_user_md_v3 and struct lov_mds_md_v3
> >> differs, due to different alignment requirements of OABI and EABI.

I have to ask are you testing the lustre on ARM?

> >> Marking the anonymous union within struct lov_user_md_v3 as
> >> '_packed' solves this issue. Otherwise we get the following
> >> error:
> >>
> >> drivers/staging/lustre/lustre/lov/lov_pack.c:352:2: note: in expansion
> >> of macro âBUILD_BUG_ONâ
> >> BUILD_BUG_ON(sizeof(lum) != sizeof(struct lov_mds_md_v3));
> >>
> >> Signed-off-by: Cihangir Akturk <cakturk@xxxxxxxxx>
> >> ---
> >> drivers/staging/lustre/lustre/include/lustre/lustre_user.h | 2 +-
> >> 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > This file is no longer in the tree :(
>
> With James' recent patch series, this has moved to include/uapi/linux/lustre/lustre_user.h

BTW is __packed valid for UAPI headers?