Commit d3c6e8e9 authored by Laurent Vivier's avatar Laurent Vivier
Browse files

linux-user: fix flock/flock64 padding



include/uapi/asm-generic/fcntl.h insert a padding macro at
the end of the structures flock and flock64.

This macro is defined to "short __unused;" on sparc,
and "long pad[4]" on mips.

Signed-off-by: default avatarLaurent Vivier <laurent@vivier.eu>
Reviewed-by: default avatarMax Filippov <jcmvbkbc@gmail.com>
Message-Id: <20180509231123.20864-3-laurent@vivier.eu>
parent cbf358a6
Loading
Loading
Loading
Loading
+13 −3
Original line number Diff line number Diff line
@@ -2643,6 +2643,17 @@ struct target_statfs64 {
#define TARGET_O_SYNC    (TARGET___O_SYNC | TARGET_O_DSYNC)
#endif

#if defined(TARGET_SPARC)
#define TARGET_ARCH_FLOCK_PAD abi_short __unused;
#define TARGET_ARCH_FLOCK64_PAD abi_short __unused;
#elif defined(TARGET_MIPS)
#define TARGET_ARCH_FLOCK_PAD abi_long pad[4];
#define TARGET_ARCH_FLOCK64_PAD
#else
#define TARGET_ARCH_FLOCK_PAD
#define TARGET_ARCH_FLOCK64_PAD
#endif

struct target_flock {
    short l_type;
    short l_whence;
@@ -2652,9 +2663,7 @@ struct target_flock {
    abi_long l_sysid;
#endif
    int l_pid;
#if defined(TARGET_MIPS)
    abi_long pad[4];
#endif
    TARGET_ARCH_FLOCK_PAD
};

struct target_flock64 {
@@ -2663,6 +2672,7 @@ struct target_flock64 {
    abi_llong l_start;
    abi_llong l_len;
    abi_int   l_pid;
    TARGET_ARCH_FLOCK64_PAD
};

struct target_f_owner_ex {