All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL FOR v5.6] y2038 safety in v4l2
@ 2019-12-16 15:37 Hans Verkuil
  2019-12-16 16:19 ` Jenkins
  2020-01-10 14:32 ` Hans Verkuil
  0 siblings, 2 replies; 3+ messages in thread
From: Hans Verkuil @ 2019-12-16 15:37 UTC (permalink / raw)
  To: Linux Media Mailing List; +Cc: Arnd Bergmann

Hi Mauro,

This series makes the V4L2 API y2038 safe. Many thanks to Arnd for working on
this!

I have tested this using the test-media script and v4l2-ctl/v4l2-compliance
binaries compiled for x86_64, i686, i686 with 64-bit time_t under both a
64 bit kernel (so the compat-ioctl32 code is called) and a native 32 bit
kernel (to make sure both the 32 and 64-bit time_t versions are handled
correctly).

Regards,

	Hans

The following changes since commit 0885acd77eb4644fd88f6d9f41e433f4ee9bc37a:

  media: vivid: support multiplanar touch devices (2019-12-16 13:24:16 +0100)

are available in the Git repository at:

  git://linuxtv.org/hverkuil/media_tree.git tags/br-y2038

for you to fetch changes up to 416f076ff267d2208d4e09767080558cc619dd9c:

  media: v4l2-core: fix compat v4l2_buffer handling for time64 ABI (2019-12-16 15:27:20 +0100)

----------------------------------------------------------------
Tag branch

----------------------------------------------------------------
Arnd Bergmann (8):
      media: documentation: fix video_event description
      media: v4l2: abstract timeval handling in v4l2_buffer
      media: v4l2-core: compat: ignore native command codes
      media: v4l2-core: split out data copy from video_usercopy
      media: v4l2-core: fix VIDIOC_DQEVENT for time64 ABI
      media: v4l2-core: fix v4l2_buffer handling for time64 ABI
      media: v4l2-core: fix compat VIDIOC_DQEVENT for time64 ABI
      media: v4l2-core: fix compat v4l2_buffer handling for time64 ABI

 Documentation/media/uapi/dvb/video-get-event.rst |   2 +-
 Documentation/media/uapi/dvb/video_types.rst     |   2 +-
 drivers/media/common/videobuf2/videobuf2-v4l2.c  |   4 +-
 drivers/media/pci/meye/meye.c                    |   4 +-
 drivers/media/usb/cpia2/cpia2_v4l.c              |   4 +-
 drivers/media/usb/stkwebcam/stk-webcam.c         |   2 +-
 drivers/media/usb/usbvision/usbvision-video.c    |   4 +-
 drivers/media/v4l2-core/v4l2-compat-ioctl32.c    | 476 +++++++++++++++++++++++++++++++++++++++++++++---------
 drivers/media/v4l2-core/v4l2-event.c             |   5 +-
 drivers/media/v4l2-core/v4l2-ioctl.c             | 211 +++++++++++++++++++-----
 drivers/media/v4l2-core/v4l2-subdev.c            |  26 ++-
 drivers/media/v4l2-core/videobuf-core.c          |   5 +-
 include/media/v4l2-common.h                      |  21 +++
 include/media/v4l2-ioctl.h                       |  55 +++++++
 include/trace/events/v4l2.h                      |   2 +-
 include/uapi/linux/videodev2.h                   |  29 ++++
 16 files changed, 717 insertions(+), 135 deletions(-)

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [GIT PULL FOR v5.6] y2038 safety in v4l2
  2019-12-16 15:37 [GIT PULL FOR v5.6] y2038 safety in v4l2 Hans Verkuil
@ 2019-12-16 16:19 ` Jenkins
  2020-01-10 14:32 ` Hans Verkuil
  1 sibling, 0 replies; 3+ messages in thread
From: Jenkins @ 2019-12-16 16:19 UTC (permalink / raw)
  To: mchehab+samsung, linux-media; +Cc: builder

From: builder@linuxtv.org

Pull request: https://patchwork.linuxtv.org/patch/60777/
Build log: https://builder.linuxtv.org/job/patchwork/29469/
Build time: 00:38:59
Link: https://lore.kernel.org/linux-media/362c4787-e114-1b90-66e2-f9a1cbafe567@xs4all.nl

gpg: Signature made Mon 16 Dec 2019 03:12:40 PM UTC
gpg:                using RSA key AAA7FFBA4D2D77EF4CAEA1421326E0CD23ABDCE5
gpg: Good signature from "Hans Verkuil <hverkuil-cisco@xs4all.nl>" [unknown]
gpg:                 aka "Hans Verkuil <hverkuil@xs4all.nl>" [full]

Summary: 5 patches and/or PDF generation with issues, being 0 at build time

Error/warnings:


Error #256 when running ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:
$ ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:71: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:72: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:73: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:74: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:75: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:76: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:77: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:78: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:79: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:80: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:81: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:82: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:83: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:84: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:85: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:86: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:87: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:88: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:89: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:90: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:91: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:92: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:93: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:94: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:95: ERROR: trailing statements should be on next line
patches/0003-media-v4l2-core-compat-ignore-native-command-codes.patch:96: ERROR: trailing statements should be on next line

Error #256 when running ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0005-media-v4l2-core-fix-VIDIOC_DQEVENT-for-time64-ABI.patch:
$ ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0005-media-v4l2-core-fix-VIDIOC_DQEVENT-for-time64-ABI.patch
patches/0005-media-v4l2-core-fix-VIDIOC_DQEVENT-for-time64-ABI.patch:62: WARNING: Avoid logging continuation uses where feasible
patches/0005-media-v4l2-core-fix-VIDIOC_DQEVENT-for-time64-ABI.patch:63: CHECK: Alignment should match open parenthesis

Error #256 when running ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0006-media-v4l2-core-fix-v4l2_buffer-handling-for-time64-.patch:
$ ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0006-media-v4l2-core-fix-v4l2_buffer-handling-for-time64-.patch
patches/0006-media-v4l2-core-fix-v4l2_buffer-handling-for-time64-.patch:47: WARNING: Avoid logging continuation uses where feasible
patches/0006-media-v4l2-core-fix-v4l2_buffer-handling-for-time64-.patch:48: CHECK: Alignment should match open parenthesis
patches/0006-media-v4l2-core-fix-v4l2_buffer-handling-for-time64-.patch:174: CHECK: Please use a blank line after function/struct/union/enum declarations

Error #256 when running ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0007-media-v4l2-core-fix-compat-VIDIOC_DQEVENT-for-time64.patch:
$ ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0007-media-v4l2-core-fix-compat-VIDIOC_DQEVENT-for-time64.patch
patches/0007-media-v4l2-core-fix-compat-VIDIOC_DQEVENT-for-time64.patch:98: WARNING: space prohibited between function name and open parenthesis '('
patches/0007-media-v4l2-core-fix-compat-VIDIOC_DQEVENT-for-time64.patch:98: ERROR: Macros with complex values should be enclosed in parentheses
patches/0007-media-v4l2-core-fix-compat-VIDIOC_DQEVENT-for-time64.patch:108: ERROR: trailing statements should be on next line
patches/0007-media-v4l2-core-fix-compat-VIDIOC_DQEVENT-for-time64.patch:123: WARNING: line over 80 characters

Error #256 when running ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0008-media-v4l2-core-fix-compat-v4l2_buffer-handling-for-.patch:
$ ./scripts/checkpatch.pl --terse --mailback --no-summary --strict patches/0008-media-v4l2-core-fix-compat-v4l2_buffer-handling-for-.patch
patches/0008-media-v4l2-core-fix-compat-v4l2_buffer-handling-for-.patch:84: WARNING: line over 80 characters
patches/0008-media-v4l2-core-fix-compat-v4l2_buffer-handling-for-.patch:247: WARNING: line over 80 characters
patches/0008-media-v4l2-core-fix-compat-v4l2_buffer-handling-for-.patch:332: ERROR: trailing statements should be on next line
patches/0008-media-v4l2-core-fix-compat-v4l2_buffer-handling-for-.patch:336: ERROR: trailing statements should be on next line
patches/0008-media-v4l2-core-fix-compat-v4l2_buffer-handling-for-.patch:338: ERROR: trailing statements should be on next line
patches/0008-media-v4l2-core-fix-compat-v4l2_buffer-handling-for-.patch:346: WARNING: line over 80 characters
patches/0008-media-v4l2-core-fix-compat-v4l2_buffer-handling-for-.patch:346: ERROR: trailing statements should be on next line


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [GIT PULL FOR v5.6] y2038 safety in v4l2
  2019-12-16 15:37 [GIT PULL FOR v5.6] y2038 safety in v4l2 Hans Verkuil
  2019-12-16 16:19 ` Jenkins
@ 2020-01-10 14:32 ` Hans Verkuil
  1 sibling, 0 replies; 3+ messages in thread
From: Hans Verkuil @ 2020-01-10 14:32 UTC (permalink / raw)
  To: Linux Media Mailing List; +Cc: Arnd Bergmann

Hi Arnd,

On 12/16/19 4:37 PM, Hans Verkuil wrote:
> Hi Mauro,
> 
> This series makes the V4L2 API y2038 safe. Many thanks to Arnd for working on
> this!
> 
> I have tested this using the test-media script and v4l2-ctl/v4l2-compliance
> binaries compiled for x86_64, i686, i686 with 64-bit time_t under both a
> 64 bit kernel (so the compat-ioctl32 code is called) and a native 32 bit
> kernel (to make sure both the 32 and 64-bit time_t versions are handled
> correctly).

For completeness: I have now also tested this on arm and arm64 architectures.
Everything looks fine!

Regards,

	Hans

> 
> Regards,
> 
> 	Hans
> 
> The following changes since commit 0885acd77eb4644fd88f6d9f41e433f4ee9bc37a:
> 
>   media: vivid: support multiplanar touch devices (2019-12-16 13:24:16 +0100)
> 
> are available in the Git repository at:
> 
>   git://linuxtv.org/hverkuil/media_tree.git tags/br-y2038
> 
> for you to fetch changes up to 416f076ff267d2208d4e09767080558cc619dd9c:
> 
>   media: v4l2-core: fix compat v4l2_buffer handling for time64 ABI (2019-12-16 15:27:20 +0100)
> 
> ----------------------------------------------------------------
> Tag branch
> 
> ----------------------------------------------------------------
> Arnd Bergmann (8):
>       media: documentation: fix video_event description
>       media: v4l2: abstract timeval handling in v4l2_buffer
>       media: v4l2-core: compat: ignore native command codes
>       media: v4l2-core: split out data copy from video_usercopy
>       media: v4l2-core: fix VIDIOC_DQEVENT for time64 ABI
>       media: v4l2-core: fix v4l2_buffer handling for time64 ABI
>       media: v4l2-core: fix compat VIDIOC_DQEVENT for time64 ABI
>       media: v4l2-core: fix compat v4l2_buffer handling for time64 ABI
> 
>  Documentation/media/uapi/dvb/video-get-event.rst |   2 +-
>  Documentation/media/uapi/dvb/video_types.rst     |   2 +-
>  drivers/media/common/videobuf2/videobuf2-v4l2.c  |   4 +-
>  drivers/media/pci/meye/meye.c                    |   4 +-
>  drivers/media/usb/cpia2/cpia2_v4l.c              |   4 +-
>  drivers/media/usb/stkwebcam/stk-webcam.c         |   2 +-
>  drivers/media/usb/usbvision/usbvision-video.c    |   4 +-
>  drivers/media/v4l2-core/v4l2-compat-ioctl32.c    | 476 +++++++++++++++++++++++++++++++++++++++++++++---------
>  drivers/media/v4l2-core/v4l2-event.c             |   5 +-
>  drivers/media/v4l2-core/v4l2-ioctl.c             | 211 +++++++++++++++++++-----
>  drivers/media/v4l2-core/v4l2-subdev.c            |  26 ++-
>  drivers/media/v4l2-core/videobuf-core.c          |   5 +-
>  include/media/v4l2-common.h                      |  21 +++
>  include/media/v4l2-ioctl.h                       |  55 +++++++
>  include/trace/events/v4l2.h                      |   2 +-
>  include/uapi/linux/videodev2.h                   |  29 ++++
>  16 files changed, 717 insertions(+), 135 deletions(-)
> 


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-01-10 14:33 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-16 15:37 [GIT PULL FOR v5.6] y2038 safety in v4l2 Hans Verkuil
2019-12-16 16:19 ` Jenkins
2020-01-10 14:32 ` Hans Verkuil

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.