From patchwork Mon Jul 12 06:05:39 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Greg Kroah-Hartman X-Patchwork-Id: 473014 Delivered-To: patch@linaro.org Received: by 2002:a02:c94a:0:0:0:0:0 with SMTP id u10csp2698220jao; Mon, 12 Jul 2021 00:47:13 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwnGWgMeNDeyHcEsGipNIHT1vFUWJZ/9PWt09ALr8iXpcmn0q5+n1hztYjDU7f3R+RY1x5T X-Received: by 2002:a17:906:3658:: with SMTP id r24mr30710303ejb.179.1626075955275; Mon, 12 Jul 2021 00:45:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626075955; cv=none; d=google.com; s=arc-20160816; b=RlMnmNXEwr1bXJCwGXw9jByx6O5xPDbM80Ss+gd8v/Tq9PX8e6qP0Q3LOQTr41Tk9m 47Dt4kn4Injtx47VRWCnpSMQd98U0DyunTrtS6pQNnxPaF8mlCRFKGD1eWE7CWR3Jhj9 TjIxe2q+O2Zt4Avnl7vT1kL7HFcOO7DLfwttSOL47F7XK+tM24RxUNz4wpLpmJ+mmVqU 1+oY2K2oX4koOis7fHmnqoxr9EERrFJXPPSHGtlP6Mn5XnGIwkCwRGaK1mJjOZ05zVMr lAeE36WHSubLYWo37uGkStx3wRAxqiVh7L3tfFMKA3hKITO/yVJQ881Gwz0IjVjowQCK HrRA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=90HUv14TWZlhBBnDAQPPtezMtnUeNSGaQK7tIKBh6cY=; b=C8ITGwB/L0YdnYEKq7ExaKZIF+TrjUyKiRtQ5UDW52k3qk1bKBHNzQtBN33mj1vkl0 9bPhMQ6J5c3UB62MwcPaoq5EZSu2C7Oqpswt8t5UEHahGJclZZkrTHh4zm2zQPbcR64Q R4E3CPNkPjyGE+4ALhmO2wztt4VOn4safVQNiQx+2hl5XN0VXIrUyZs0YjnA9gIVUokf 66pXv3280NaF4+A3Wrga2qyslNPGiuD3LY3+LyGKRsVfmqUz7oSOywuUR1QoPf1SoGRY 6wH7OkL94JD3TpSuOM00jW5w9RtkCkYxhUWyCMyGv+bJO+65x4xgMAeWtnJv9+MRAP+O Akaw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=XkVonN4b; spf=pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n21si13642925eda.13.2021.07.12.00.45.55; Mon, 12 Jul 2021 00:45:55 -0700 (PDT) Received-SPF: pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=XkVonN4b; spf=pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S245255AbhGLHqm (ORCPT + 12 others); Mon, 12 Jul 2021 03:46:42 -0400 Received: from mail.kernel.org ([198.145.29.99]:51248 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1349801AbhGLHoq (ORCPT ); Mon, 12 Jul 2021 03:44:46 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id D3C16611ED; Mon, 12 Jul 2021 07:41:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1626075675; bh=meGSFOMCtdiAnXguur9WjgDTfZSBr3cYmsBkn61VCDE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=XkVonN4bkE43yz3gS5Wuv9UtlpbRZ0Tz45+b01FzlaIwFSOS6YBnGD1ExV9NKi1aG KXs4YVvTz2WENC9W/pV75GplgyR/gAFh3XjGlXl2QQ7oPOBjeMCH/g55cjErw2NVPg 6//nW6t+YdPUZHnKyp0RrCf86Iv/XpuDu0o/CaIs= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Arnd Bergmann , Laurent Pinchart , Hans Verkuil , Mauro Carvalho Chehab , Sasha Levin Subject: [PATCH 5.13 316/800] media: subdev: remove VIDIOC_DQEVENT_TIME32 handling Date: Mon, 12 Jul 2021 08:05:39 +0200 Message-Id: <20210712060959.341792715@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210712060912.995381202@linuxfoundation.org> References: <20210712060912.995381202@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org From: Arnd Bergmann [ Upstream commit 765ba251d2522e2a0daa2f0793fd0f0ce34816ec ] Converting the VIDIOC_DQEVENT_TIME32/VIDIOC_DQEVENT32/ VIDIOC_DQEVENT32_TIME32 arguments to the canonical form is done in common code, but for some reason I ended up adding another conversion helper to subdev_do_ioctl() as well. I must have concluded that this does not go through the common conversion, but it has done that since the ioctl handler was first added. I assume this one is harmless as there should be no way to arrive here from user space if CONFIG_COMPAT_32BIT_TIME is set, but since it is dead code, it should just get removed. On a 64-bit architecture, as well as a 32-bit architecture without CONFIG_COMPAT_32BIT_TIME, handling this command is a mistake, and the kernel should return an error. Fixes: 1a6c0b36dd19 ("media: v4l2-core: fix VIDIOC_DQEVENT for time64 ABI") Signed-off-by: Arnd Bergmann Reviewed-by: Laurent Pinchart Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Sasha Levin --- drivers/media/v4l2-core/v4l2-subdev.c | 24 ------------------------ 1 file changed, 24 deletions(-) -- 2.30.2 diff --git a/drivers/media/v4l2-core/v4l2-subdev.c b/drivers/media/v4l2-core/v4l2-subdev.c index 956dafab43d4..bf3aa9252458 100644 --- a/drivers/media/v4l2-core/v4l2-subdev.c +++ b/drivers/media/v4l2-core/v4l2-subdev.c @@ -428,30 +428,6 @@ static long subdev_do_ioctl(struct file *file, unsigned int cmd, void *arg) return v4l2_event_dequeue(vfh, arg, file->f_flags & O_NONBLOCK); - case VIDIOC_DQEVENT_TIME32: { - struct v4l2_event_time32 *ev32 = arg; - struct v4l2_event ev = { }; - - if (!(sd->flags & V4L2_SUBDEV_FL_HAS_EVENTS)) - return -ENOIOCTLCMD; - - rval = v4l2_event_dequeue(vfh, &ev, file->f_flags & O_NONBLOCK); - - *ev32 = (struct v4l2_event_time32) { - .type = ev.type, - .pending = ev.pending, - .sequence = ev.sequence, - .timestamp.tv_sec = ev.timestamp.tv_sec, - .timestamp.tv_nsec = ev.timestamp.tv_nsec, - .id = ev.id, - }; - - memcpy(&ev32->u, &ev.u, sizeof(ev.u)); - memcpy(&ev32->reserved, &ev.reserved, sizeof(ev.reserved)); - - return rval; - } - case VIDIOC_SUBSCRIBE_EVENT: return v4l2_subdev_call(sd, core, subscribe_event, vfh, arg);