On Wed, Aug 30, 2017 at 10:25:01PM +0200, Arnd Bergmann wrote:
> >> diff --git a/include/uapi/linux/dvb/video.h 
> >> b/include/uapi/linux/dvb/video.h
> >> index d3d14a59d2d5..6c7f9298d7c2 100644
> >> --- a/include/uapi/linux/dvb/video.h
> >> +++ b/include/uapi/linux/dvb/video.h
> >> @@ -135,7 +135,8 @@ struct video_event {
> >>  #define VIDEO_EVENT_FRAME_RATE_CHANGED       2
> >>  #define VIDEO_EVENT_DECODER_STOPPED  3
> >>  #define VIDEO_EVENT_VSYNC            4
> >> -     __kernel_time_t timestamp;
> >> +     /* unused, make sure to use atomic time for y2038 if it ever gets 
> >> used */
> >> +     long timestamp;
> >
> > This change breaks x32 ABI (and possibly MIPS n32 ABI), as __kernel_time_t
> > there is 64 bit already:
> > https://sourceforge.net/p/strace/mailman/message/36015326/
> >
> > Note the change in structure size from 0x20 to 0x14 for VIDEO_GET_EVENT
> > command in linux/x32/ioctls_inc0.h.
> 
> Are you sure it worked before the change? I don't see any handler in the 
> kernel
> for the x32 compat ioctl call here, only the compat_video_event handling, so
> my guess is that the change unintentionally fixes x32.

Yes, you're right; unfortunately, I decided to check which ioctl handler
x32 code is using only after sending the e-mail, and now in the process
of preparing some RFC patch for the ioctl commands which have discrepancies
between x32 and compat sizes.

> 
>          Arnd

Reply via email to