diff options
Diffstat (limited to 'drivers/media/v4l2-core/v4l2-event.c')
| -rw-r--r-- | drivers/media/v4l2-core/v4l2-event.c | 5 | 
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/media/v4l2-core/v4l2-event.c b/drivers/media/v4l2-core/v4l2-event.c index 9d673d113d7a..290c6b213179 100644 --- a/drivers/media/v4l2-core/v4l2-event.c +++ b/drivers/media/v4l2-core/v4l2-event.c @@ -27,6 +27,7 @@ static unsigned sev_pos(const struct v4l2_subscribed_event *sev, unsigned idx)  static int __v4l2_event_dequeue(struct v4l2_fh *fh, struct v4l2_event *event)  {  	struct v4l2_kevent *kev; +	struct timespec64 ts;  	unsigned long flags;  	spin_lock_irqsave(&fh->vdev->fh_lock, flags); @@ -44,7 +45,9 @@ static int __v4l2_event_dequeue(struct v4l2_fh *fh, struct v4l2_event *event)  	kev->event.pending = fh->navailable;  	*event = kev->event; -	event->timestamp = ns_to_timespec(kev->ts); +	ts = ns_to_timespec64(kev->ts); +	event->timestamp.tv_sec = ts.tv_sec; +	event->timestamp.tv_nsec = ts.tv_nsec;  	kev->sev->first = sev_pos(kev->sev, 1);  	kev->sev->in_use--;  |