Received: by 2002:a25:7ec1:0:0:0:0:0 with SMTP id z184csp134817ybc; Mon, 18 Nov 2019 21:56:11 -0800 (PST) X-Google-Smtp-Source: APXvYqw+yv3cgEJJLiXL3cdgagjX1DLQXj7Fc4ihEy8IVfVxDWttB5ZEU57pvboXPQ0CAMjRGJAA X-Received: by 2002:a17:906:4d91:: with SMTP id s17mr32093026eju.156.1574142970990; Mon, 18 Nov 2019 21:56:10 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1574142970; cv=none; d=google.com; s=arc-20160816; b=rg0xX7WorJTgCtik6/BUeRlny23groTXt3RKbwGPQt9sgDsxMcVTvmGBxPpPlBlCUE 36SYJD4KRO5bOff+2CZk4St8V5c0n2hyhIjnOOCDTVt2SVWsqT4C49z9VB7fdG6UT9cQ FF+2liSDuSEdmhaj3T8yO1bMXD1mnMkd0hdljtF5WPNtaU8ruBjS+MUx3Q1lO2afdy1Q MAGn0qZTAFIa1f+4YEVAJ5lY4w+0HATr4AkneXD8auowd4pxJkwHbWiiEyEh6DehVyQF p4iwLf6AHbaHKOpsnECGuKLVsCSMc/kuXv83oXIRQu38FJVMXfekuhfu1F4QtR/RfhY+ MP4w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=mwBVKjteyMrsMFmVavn2g1Z9nMfWk/3amtn+7uEcvnc=; b=06xS6i1s6pS28baP61wAQOUl1jvBf4NiSYf6CwymhDuky+rogIxaNQPtSMszfQ5gap j6yK6l/+YcSz71ru0CpWXucYL6dhhWyY0+z2dH/GNRN9v1cO6TLSwsLLhViKsKYr3eKb QSKOPLe4rj/c10tKvRejrJrr0nZh8/ZLuamWYu8r6eD5IO9ARk8ukmQikbZf2iwxwSTB M9W5kXUckeZS65mtl2dcklEa365H9QZnF7H8RBcq9geE48SPUR9Rr79RNbwbeS0IUuOs V3Q7C5A7IW/O8/gckM624vwNilTyWzeHHCyc7g8rkJLPcYv7EbMGI29HVMbNS3J0C5FV EGHw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=WW+0H9ZD; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y32si15438723ede.209.2019.11.18.21.55.46; Mon, 18 Nov 2019 21:56:10 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=WW+0H9ZD; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731312AbfKSFwX (ORCPT + 99 others); Tue, 19 Nov 2019 00:52:23 -0500 Received: from mail.kernel.org ([198.145.29.99]:49998 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731297AbfKSFwT (ORCPT ); Tue, 19 Nov 2019 00:52:19 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id DA71320721; Tue, 19 Nov 2019 05:52:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1574142738; bh=1i+vQmOAwXrZq0x2DsTWc7B130SaqeQXm6f1QAqJXH0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=WW+0H9ZD/4ecQyXXkQO/76dN09CzjnhXGqSw5rJu2DCSo9sS8EfRyK/TtF2cbu1W8 4mAMa+P0gdlbaDCqpWE+jGMNKiD6hFB+gVKDxcQKK41eLF4KF2PSYKu0b2BuJT1Ul8 8xcJUaN07s44nwhlAYSX5JTMOVSkF7qlGOfhcsmc= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Joel Pepper , Kieran Bingham , Laurent Pinchart , Sasha Levin Subject: [PATCH 4.14 184/239] usb: gadget: uvc: configfs: Prevent format changes after linking header Date: Tue, 19 Nov 2019 06:19:44 +0100 Message-Id: <20191119051334.983203021@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191119051255.850204959@linuxfoundation.org> References: <20191119051255.850204959@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Joel Pepper [ Upstream commit cb2200f7af8341aaf0c6abd7ba37e4c667c41639 ] While checks are in place to avoid attributes and children of a format being manipulated after the format is linked into the streaming header, the linked flag was never actually set, invalidating the protections. Update the flag as appropriate in the header link calls. Signed-off-by: Joel Pepper Reviewed-by: Kieran Bingham Signed-off-by: Laurent Pinchart Signed-off-by: Sasha Levin --- drivers/usb/gadget/function/uvc_configfs.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/usb/gadget/function/uvc_configfs.c b/drivers/usb/gadget/function/uvc_configfs.c index fc604439b25a1..57f6e8a668cf5 100644 --- a/drivers/usb/gadget/function/uvc_configfs.c +++ b/drivers/usb/gadget/function/uvc_configfs.c @@ -765,6 +765,7 @@ static int uvcg_streaming_header_allow_link(struct config_item *src, format_ptr->fmt = target_fmt; list_add_tail(&format_ptr->entry, &src_hdr->formats); ++src_hdr->num_fmt; + ++target_fmt->linked; out: mutex_unlock(&opts->lock); @@ -802,6 +803,8 @@ static void uvcg_streaming_header_drop_link(struct config_item *src, break; } + --target_fmt->linked; + out: mutex_unlock(&opts->lock); mutex_unlock(su_mutex); -- 2.20.1