Re: [PATCH] [RESEND] [media] omap3isp: support 64-bit version of omap3isp_stat_data

From: Sakari Ailus
Date: Mon May 07 2018 - 06:18:56 EST


On Thu, May 03, 2018 at 06:06:58PM -0400, Arnd Bergmann wrote:
> On Thu, May 3, 2018 at 8:56 AM, Sakari Ailus <sakari.ailus@xxxxxx> wrote:
> > On Wed, Apr 25, 2018 at 11:30:10PM +0200, Arnd Bergmann wrote:
> >> @@ -165,7 +167,14 @@ struct omap3isp_h3a_aewb_config {
> >> * @config_counter: Number of the configuration associated with the data.
> >> */
> >> struct omap3isp_stat_data {
> >> +#ifdef __KERNEL__
> >> + struct {
> >> + __s64 tv_sec;
> >> + __s64 tv_usec;
> >
> > Any particular reason for __s64 here instead of e.g. long or __s32? Kernel
> > appears to use long in the timespec64 definition.
>
> The user space 'timeval' definition is 16 bytes wide, with the layout
> designed to be compatible between 32-bit and 64-bit, so it has to be like
> this to match what user spaces sees with the old header files and a new
> libc.
>
> We don't yet know what the exact definition of timeval will be in all
> libc implementations, but if they have a 32-bit tv_user field, it needs

tv_usec?

> padding next to it so the lower 32 bits are in the same place as they
> would be using that 64-bit field I used.

I presume the definition would be endianness dependent then. I have no
objections though, if you think this is the way to go.

I'll apply the patch.

Thanks.

--
Sakari Ailus
e-mail: sakari.ailus@xxxxxx