Received: by 2002:a05:7412:e794:b0:fa:551:50a7 with SMTP id o20csp1460400rdd; Wed, 10 Jan 2024 22:49:22 -0800 (PST) X-Google-Smtp-Source: AGHT+IEZ0teSN/tsueUuQU/YZkAoYx35Z1orN8EpXpb19FzycQi06skC/RepLSb+LQZoT+jRDwoy X-Received: by 2002:a05:6214:d0c:b0:680:f8a4:db4b with SMTP id 12-20020a0562140d0c00b00680f8a4db4bmr686652qvh.6.1704955761947; Wed, 10 Jan 2024 22:49:21 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1704955761; cv=none; d=google.com; s=arc-20160816; b=Mo/NVGp0BRyLO054BMFFK49q6F2g/5gNag4TEO9Qr+6i/iESZTDjHX8Uv1YaNeCvXF ZfgLr0VbdgZbe+JMsI6cXIxwxp59lOLFn1IjtE1AKTOCsGSFHn0/gGIX4rG3rSbpJQnJ QfLSKSlaCMq/DHe+XSS4jSvTJoWgZHHfGtMNfGNzpxPlEh5w5FcesvBDKU6kpJTyzH3b pa8xFWHfzviGcWAJPwgdSQAChZSsrFMM5G7VcL9MuZbcx58byOpy2sHSkBBDaYRFbuYR 8U1uRBemjXSXPPTPWDmlWrIfn164tCTNxkszJt9a00f1TGoiKL20agVqAj/buZUyN0UH uTDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :subject:cc:to:from:date:dkim-signature; bh=5KVsGX+mtrTnfgJnQjM9ysiDymQHv9feUP1ufSQS7oY=; fh=mUj05T8BpSfnUDsoaiUOAXy8WvxWGSPtXX2CZkbD0V8=; b=Xf1Jp5B92VRDhmqNF9o8oMIueujHj9R0TAP4M/YKfoi6QO1JdtXrM/bu7lxRXZmb47 jAPXPY9OVt27n959PRtvmEXuOe991eV6BaWraeyV5PSX0fUiamC5WcWAIanAjV3RYbHb qTygm5w0NxpHTXjaoiyKdOyMUFlCAXvi1e0CdERObIZDQbqwPTjZpd/Rpg1ZG0ZU64fC T9cxg0IsCfMnaKxy94HpUkfaLaUZfkwf8qWQN2tr6WC8Vx08Chf0FVoTOmwyN1QRpx2m WSWql5htzbsHeQ7GpCWqPNX+FpamVPLWm5A8F/R8ZeNo0sUNYoRn80mAO6TPXJAZBhyx ei4A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=U5unuc2p; spf=pass (google.com: domain of linux-kernel+bounces-23115-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-23115-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id i8-20020a0cf388000000b0067f82185c5csi228670qvk.606.2024.01.10.22.49.21 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 10 Jan 2024 22:49:21 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-23115-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=U5unuc2p; spf=pass (google.com: domain of linux-kernel+bounces-23115-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-23115-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id B26731C21CA9 for ; Thu, 11 Jan 2024 06:49:21 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id B5E125672; Thu, 11 Jan 2024 06:49:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="U5unuc2p" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E38CE46B1; Thu, 11 Jan 2024 06:49:09 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9A7C7C43390; Thu, 11 Jan 2024 06:49:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1704955749; bh=r1x+We+0nH/taygFxjUmf5m8A7mmAiVByiI7VPe83PA=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=U5unuc2p/3gwIMkXAMpmy5JjoSpUscszCoBNgIdTdVhTazeXw/WldvE3kTtNo5Nku TZ289TAgbABfTp7yE84kSh3ZGGYW2CNLLbzFeVI+pXaaSaDxCydcZCVydGs2aTd1+R oBBZRz0wuWTxEzScYTTg4bqVC9OvrRWzyb13EsZHYB8fRI5BofGnYHj4IuSiUnlEsU a2VwpIPLF0a7CFlB4g3W1jDxalW5uXkgb7i7wTJt76D3zy8bcP6VFDR6htZJSRRVeB x6zR20wfo4lqcI7pl3egI+HARXxi6s29lqYA3GPj2N6NjGaLXMZqCyB/n+j/EsRA9k FnR3LppzWzk4Q== Date: Thu, 11 Jan 2024 07:49:05 +0100 From: Mauro Carvalho Chehab To: Nikita Zhandarovich Cc: , Subject: Re: [PATCH] media: em28xx: return error on media_device_register() failure Message-ID: <20240111074905.67d61b00@coco.lan> In-Reply-To: <20240110173958.4544-1-n.zhandarovich@fintech.ru> References: <20240110173958.4544-1-n.zhandarovich@fintech.ru> X-Mailer: Claws Mail 4.2.0 (GTK 3.24.38; x86_64-redhat-linux-gnu) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Em Wed, 10 Jan 2024 09:39:58 -0800 Nikita Zhandarovich escreveu: > In an unlikely case of failure in media_device_register(), release > resources and return the erroneous value. Otherwise, possible issues > with registering the device will continue to be ignored. > > Found by Linux Verification Center (linuxtesting.org) with static > analysis tool SVACE. > > Fixes: 37ecc7b1278f ("[media] em28xx: add media controller support") > Signed-off-by: Nikita Zhandarovich > --- > drivers/media/usb/em28xx/em28xx-cards.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/media/usb/em28xx/em28xx-cards.c b/drivers/media/usb/em28xx/em28xx-cards.c > index 4d037c92af7c..dae731dfc569 100644 > --- a/drivers/media/usb/em28xx/em28xx-cards.c > +++ b/drivers/media/usb/em28xx/em28xx-cards.c > @@ -4095,6 +4095,8 @@ static int em28xx_usb_probe(struct usb_interface *intf, > */ > #ifdef CONFIG_MEDIA_CONTROLLER > retval = media_device_register(dev->media_dev); > + if (retval) > + goto err_free; Not freeing resources here is intentional. See, the media controller API is optional on this driver. It will just provide a way to identify the device's topology, but the device is completely usable without it. Perhaps we need, instead, a patch documenting it, and preventing static analysis tools to point it as an issue. Thanks, Mauro