Re: [Qemu-devel] [PATCH v12 5/5] linux-user: Fix flock structure for MIPS O64 ABI

2019-06-26 Thread Laurent Vivier
Le 26/06/2019 à 09:54, Aleksandar Markovic a écrit :
> 
> On Jun 19, 2019 6:34 PM, "Laurent Vivier"  > wrote:
>>
>> Le 19/06/2019 à 16:17, Aleksandar Markovic a écrit :
>> > From: Aleksandar Markovic  >
>> >
>> > Only MIPS O32 and N32 have special (different than other
>> > architectures) definition of structure flock in kernel.
>> >
>> > Bring flock definition for MIPS O64 ABI to the correct state.
>> >
>> > Reported-by: Dragan Mladjenovic  >
>> > Signed-off-by: Aleksandar Markovic  >
>> > ---
>> >  linux-user/generic/fcntl.h     | 2 +-
>> >  linux-user/mips/target_fcntl.h | 4 
>> >  2 files changed, 5 insertions(+), 1 deletion(-)
>> >
>> > diff --git a/linux-user/generic/fcntl.h b/linux-user/generic/fcntl.h
>> > index a775a49..1b48dde 100644
>> > --- a/linux-user/generic/fcntl.h
>> > +++ b/linux-user/generic/fcntl.h
>> > @@ -129,7 +129,7 @@ struct target_flock {
>> >      short l_whence;
>> >      abi_long l_start;
>> >      abi_long l_len;
>> > -#if defined(TARGET_MIPS)
>> > +#if defined(TARGET_MIPS) && (TARGET_ABI_BITS == 32)
>> >      abi_long l_sysid;
>> >  #endif
>> >      int l_pid;
>> > diff --git a/linux-user/mips/target_fcntl.h
> b/linux-user/mips/target_fcntl.h
>> > index 000527c..795bba7 100644
>> > --- a/linux-user/mips/target_fcntl.h
>> > +++ b/linux-user/mips/target_fcntl.h
>> > @@ -27,7 +27,11 @@
>> >  #define TARGET_F_SETOWN        24       /*  for sockets. */
>> >  #define TARGET_F_GETOWN        23       /*  for sockets. */
>> > 
>> > +#if (TARGET_ABI_BITS == 32)
>> >  #define TARGET_ARCH_FLOCK_PAD abi_long pad[4];
>> > +#else
>> > +#define TARGET_ARCH_FLOCK_PAD
>> > +#endif
>> >  #define TARGET_ARCH_FLOCK64_PAD
>> > 
>> >  #define TARGET_F_GETLK64       33      /*  using 'struct flock64' */
>> >
>>
>> The patch is correct, but I think it would be cleaner to introduce an
>> "TARGET_HAVE_ARCH_STRUCT_FLOCK" as we have in the kernel for the mips
> case.
>>
>> Thanks,
>> Laurent
>>
> 
> Do you mean we should do everything in a single patch, or do you ask me
> to devise a separate restructuring/cleanup patch here?

As you want, I'm fine with all in a single patch.

Thanks,
Laurent




Re: [Qemu-devel] [PATCH v12 5/5] linux-user: Fix flock structure for MIPS O64 ABI

2019-06-26 Thread Aleksandar Markovic
On Jun 19, 2019 6:34 PM, "Laurent Vivier"  wrote:
>
> Le 19/06/2019 à 16:17, Aleksandar Markovic a écrit :
> > From: Aleksandar Markovic 
> >
> > Only MIPS O32 and N32 have special (different than other
> > architectures) definition of structure flock in kernel.
> >
> > Bring flock definition for MIPS O64 ABI to the correct state.
> >
> > Reported-by: Dragan Mladjenovic 
> > Signed-off-by: Aleksandar Markovic 
> > ---
> >  linux-user/generic/fcntl.h | 2 +-
> >  linux-user/mips/target_fcntl.h | 4 
> >  2 files changed, 5 insertions(+), 1 deletion(-)
> >
> > diff --git a/linux-user/generic/fcntl.h b/linux-user/generic/fcntl.h
> > index a775a49..1b48dde 100644
> > --- a/linux-user/generic/fcntl.h
> > +++ b/linux-user/generic/fcntl.h
> > @@ -129,7 +129,7 @@ struct target_flock {
> >  short l_whence;
> >  abi_long l_start;
> >  abi_long l_len;
> > -#if defined(TARGET_MIPS)
> > +#if defined(TARGET_MIPS) && (TARGET_ABI_BITS == 32)
> >  abi_long l_sysid;
> >  #endif
> >  int l_pid;
> > diff --git a/linux-user/mips/target_fcntl.h
b/linux-user/mips/target_fcntl.h
> > index 000527c..795bba7 100644
> > --- a/linux-user/mips/target_fcntl.h
> > +++ b/linux-user/mips/target_fcntl.h
> > @@ -27,7 +27,11 @@
> >  #define TARGET_F_SETOWN24   /*  for sockets. */
> >  #define TARGET_F_GETOWN23   /*  for sockets. */
> >
> > +#if (TARGET_ABI_BITS == 32)
> >  #define TARGET_ARCH_FLOCK_PAD abi_long pad[4];
> > +#else
> > +#define TARGET_ARCH_FLOCK_PAD
> > +#endif
> >  #define TARGET_ARCH_FLOCK64_PAD
> >
> >  #define TARGET_F_GETLK64   33  /*  using 'struct flock64' */
> >
>
> The patch is correct, but I think it would be cleaner to introduce an
> "TARGET_HAVE_ARCH_STRUCT_FLOCK" as we have in the kernel for the mips
case.
>
> Thanks,
> Laurent
>

Do you mean we should do everything in a single patch, or do you ask me to
devise a separate restructuring/cleanup patch here?

Aleksandar


Re: [Qemu-devel] [PATCH v12 5/5] linux-user: Fix flock structure for MIPS O64 ABI

2019-06-19 Thread Laurent Vivier
Le 19/06/2019 à 16:17, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic 
> 
> Only MIPS O32 and N32 have special (different than other
> architectures) definition of structure flock in kernel.
> 
> Bring flock definition for MIPS O64 ABI to the correct state.
> 
> Reported-by: Dragan Mladjenovic 
> Signed-off-by: Aleksandar Markovic 
> ---
>  linux-user/generic/fcntl.h | 2 +-
>  linux-user/mips/target_fcntl.h | 4 
>  2 files changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/linux-user/generic/fcntl.h b/linux-user/generic/fcntl.h
> index a775a49..1b48dde 100644
> --- a/linux-user/generic/fcntl.h
> +++ b/linux-user/generic/fcntl.h
> @@ -129,7 +129,7 @@ struct target_flock {
>  short l_whence;
>  abi_long l_start;
>  abi_long l_len;
> -#if defined(TARGET_MIPS)
> +#if defined(TARGET_MIPS) && (TARGET_ABI_BITS == 32)
>  abi_long l_sysid;
>  #endif
>  int l_pid;
> diff --git a/linux-user/mips/target_fcntl.h b/linux-user/mips/target_fcntl.h
> index 000527c..795bba7 100644
> --- a/linux-user/mips/target_fcntl.h
> +++ b/linux-user/mips/target_fcntl.h
> @@ -27,7 +27,11 @@
>  #define TARGET_F_SETOWN24   /*  for sockets. */
>  #define TARGET_F_GETOWN23   /*  for sockets. */
>  
> +#if (TARGET_ABI_BITS == 32)
>  #define TARGET_ARCH_FLOCK_PAD abi_long pad[4];
> +#else
> +#define TARGET_ARCH_FLOCK_PAD
> +#endif
>  #define TARGET_ARCH_FLOCK64_PAD
>  
>  #define TARGET_F_GETLK64   33  /*  using 'struct flock64' */
> 

The patch is correct, but I think it would be cleaner to introduce an
"TARGET_HAVE_ARCH_STRUCT_FLOCK" as we have in the kernel for the mips case.

Thanks,
Laurent