Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1227720

Re: [PATCH v2 7/9] [media] v4l2: introduce v4l2_timeval

From Arnd Bergmann <arnd@arndb.de>
Newsgroups linux.kernel
Subject Re: [PATCH v2 7/9] [media] v4l2: introduce v4l2_timeval
Date 2015-09-18 11:50 +0200
Message-ID <qa0sO-7jM-25@gated-at.bofh.it> (permalink)
References <q9OUG-7wd-7@gated-at.bofh.it> <q9ZZL-6Jw-9@gated-at.bofh.it> <qa09s-6UG-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Friday 18 September 2015 11:27:40 Hans Verkuil wrote:
> Ah, OK. Got it.
> 
> I think this is dependent on the upcoming media workshop next month. If we
> decide to redesign v4l2_buffer anyway, then we can avoid timeval completely.
> And the only place where we would need to convert it in the compat code
> hidden in the v4l2 core (likely v4l2-ioctl.c).

Ah, I think I understood the idea now, I missed that earlier when you mention
the idea.

So what you are saying here is that you could come up with a new unambiguous
(using only __u32 and __u64 types and no pointers) format that gets exposed
to a new set of ioctls, and then change the handling of the existing three
formats (native 64-bit, traditional 32-bit, and 32-bit with 64-bit time_t)
so they get converted into the new format by the common ioctl handling code?

> I am not really keen on having v4l2_timeval in all these drivers. I would
> have to check them anyway since I suspect that in several drivers the local
> timeval variable can be avoided by rewriting that part of the driver.

I've tried to do that for all the drivers where I could find an easy solution
in patch 6/9, but I'm sure you can do it for a couple more.

We could also do a lightweight redesign and use 'timespec64' internally
in all the drivers and then convert that to 'timeval' or the 64-bit
format of that in the ioctl handler. This is also something I tried at
some point but then found it a bit more intuitive to leave the normal ioctl
path alone and have an explicit type.

> Personally I am in favor of a redesigned v4l2_buffer: it's awkward to use
> with multiplanar formats, there is cruft in there that can be removed (timecode),
> and there is little space for additions (HW-specific timecodes, more buffer
> meta data, etc).
> 
> We'll see.

Ok.

	Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v2 0/9] [media] y2038 conversion for subsystem Arnd Bergmann <arnd@arndb.de> - 2015-09-17 23:30 +0200
  [PATCH v2 2/9] [media] dvb: remove unused systime() function Arnd Bergmann <arnd@arndb.de> - 2015-09-17 23:30 +0200
  [PATCH v2 7/9] [media] v4l2: introduce v4l2_timeval Arnd Bergmann <arnd@arndb.de> - 2015-09-17 23:30 +0200
    Re: [PATCH v2 7/9] [media] v4l2: introduce v4l2_timeval Hans Verkuil <hverkuil@xs4all.nl> - 2015-09-18 10:10 +0200
      Re: [PATCH v2 7/9] [media] v4l2: introduce v4l2_timeval Arnd Bergmann <arnd@arndb.de> - 2015-09-18 11:20 +0200
        Re: [PATCH v2 7/9] [media] v4l2: introduce v4l2_timeval Hans Verkuil <hverkuil@xs4all.nl> - 2015-09-18 11:30 +0200
          Re: [PATCH v2 7/9] [media] v4l2: introduce v4l2_timeval Arnd Bergmann <arnd@arndb.de> - 2015-09-18 11:50 +0200
            Re: [PATCH v2 7/9] [media] v4l2: introduce v4l2_timeval Hans Verkuil <hverkuil@xs4all.nl> - 2015-09-18 12:00 +0200
              Re: [PATCH v2 7/9] [media] v4l2: introduce v4l2_timeval Arnd Bergmann <arnd@arndb.de> - 2015-09-18 12:10 +0200
                Re: [PATCH v2 7/9] [media] v4l2: introduce v4l2_timeval Hans Verkuil <hverkuil@xs4all.nl> - 2015-09-18 12:30 +0200
  [PATCH v2 9/9] [media] omap3isp: support 64-bit version of omap3isp_stat_data Arnd Bergmann <arnd@arndb.de> - 2015-09-17 23:30 +0200
  [PATCH v2 5/9] [media] make VIDIOC_DQEVENT work with 64-bit time_t Arnd Bergmann <arnd@arndb.de> - 2015-09-17 23:30 +0200
  [PATCH v2 8/9] [media] handle 64-bit time_t in v4l2_buffer Arnd Bergmann <arnd@arndb.de> - 2015-09-17 23:30 +0200
    Re: [PATCH v2 8/9] [media] handle 64-bit time_t in v4l2_buffer Hans Verkuil <hverkuil@xs4all.nl> - 2015-09-18 09:30 +0200
      Re: [PATCH v2 8/9] [media] handle 64-bit time_t in v4l2_buffer Arnd Bergmann <arnd@arndb.de> - 2015-09-18 11:30 +0200
        Re: [PATCH v2 8/9] [media] handle 64-bit time_t in v4l2_buffer Hans Verkuil <hverkuil@xs4all.nl> - 2015-09-18 12:00 +0200
          Re: [PATCH v2 8/9] [media] handle 64-bit time_t in v4l2_buffer Arnd Bergmann <arnd@arndb.de> - 2015-09-18 12:20 +0200
  [PATCH v2 3/9] [media] dvb: don't use 'time_t' in event ioctl Arnd Bergmann <arnd@arndb.de> - 2015-09-17 23:30 +0200
  [PATCH v2 6/9] [media] use v4l2_get_timestamp where possible Arnd Bergmann <arnd@arndb.de> - 2015-09-17 23:30 +0200
  [PATCH v2 1/9] [media] dvb: use ktime_t for internal timeout Arnd Bergmann <arnd@arndb.de> - 2015-09-17 23:30 +0200
  [PATCH v2 4/9] [media] exynos4-is: use monotonic timestamps as advertized Arnd Bergmann <arnd@arndb.de> - 2015-09-17 23:30 +0200

csiph-web