From nobody Fri Apr 17 10:36:01 2026 Received: from mail-244121.protonmail.ch (mail-244121.protonmail.ch [109.224.244.121]) (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 D6C167478 for ; Fri, 20 Feb 2026 06:30:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=109.224.244.121 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771569018; cv=none; b=DGrMzC+GqqcswvOmeWDMhgjaTF9W1SFnlszpX9smunDxuC9j93QRxoSbkT6fPGbHdGFyGfiMNn6XFQ0z6+KSLVeK0GfN+Xh2n8j7YNeCexJCRRZlUuc342X2aWWokyKmsBldNLLeq5Qtk8CGG0UhaXLFZk5uTOjGaBER9ZYDPj0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771569018; c=relaxed/simple; bh=eF5nEs1EMSo3dkuaqgnwdJ2Hz3g1DhZo/d7U5mts22w=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=XLakuOtKuSrk+esybHNoVTPCmXc55wf+ycuntGH1m5Cj7WW/TiiyqaMEAsMoZsPu45COKTWhMjZsTo3HhP3fz8nMaEd88s/lGo0NVLc+B+VAXFTwvxJ7SMH3yUtx4M+XNZPQCBaX9XPABwqdWAzHevu6Jfvwy4ku0deSIOs2xFo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=pm.me; spf=pass smtp.mailfrom=pm.me; dkim=pass (2048-bit key) header.d=pm.me header.i=@pm.me header.b=VIHBjfHU; arc=none smtp.client-ip=109.224.244.121 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=pm.me Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=pm.me Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=pm.me header.i=@pm.me header.b="VIHBjfHU" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pm.me; s=protonmail3; t=1771569014; x=1771828214; bh=eF5nEs1EMSo3dkuaqgnwdJ2Hz3g1DhZo/d7U5mts22w=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=VIHBjfHUxk06/LcODi8EJl+2xLZhaMUIKKxY0NYlH/OPK/3twKI118N03+d64SI9U J3JIYYIBi8yon93tIEiMnd1xBD2wjQqhzg8jEohN1HJ6xvlMgDbWIT9M9t19Z3LSFX pGPDUgemuEg7zF3ekOvOH2Y5s0mDEOG5S1D6XEGGmwOc6MMHc5wXbJhoraOdpvW/AN J5HwVN1WyIzrW32m32Dju5PwHuGwzFP6Of7+HfkctsuPkme+YeeJgFLjsAmvdl8bSC onyOU1NEon/5F/KrWcj0PJjLqCCGPtmL8CjVprnEujMzLJJOH9U8CHw8VtfcdeSU5D 02s5KY/Gd3tiw== Date: Fri, 20 Feb 2026 06:30:10 +0000 To: Johan Hovold , Alex Elder , Greg Kroah-Hartman From: Hardik Phalet Cc: Vaibhav Agarwal , Mark Greer , greybus-dev@lists.linaro.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Hardik Phalet Subject: [PATCH v2 1/2] staging: greybus: audio: fix NULL dereference in gb_audio_manager_get_module() Message-ID: <20260220062741.399677-2-hardik.phalet@pm.me> In-Reply-To: <20260220062741.399677-1-hardik.phalet@pm.me> References: <20260220062741.399677-1-hardik.phalet@pm.me> Feedback-ID: 166659585:user:proton X-Pm-Message-ID: e38dc48ebd8090398fd7c8b9b6e58d90ee8b98e0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" gb_audio_manager_get_module() calls gb_audio_manager_get_locked(), which can return NULL when the requested id does not exist. The returned pointer is dereferenced unconditionally via kobject_get(), leading to a NULL pointer dereference. Only take a kobject reference when the module is found. Signed-off-by: Hardik Phalet --- drivers/staging/greybus/audio_manager.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/staging/greybus/audio_manager.c b/drivers/staging/grey= bus/audio_manager.c index 27ca5f796c5f..1da8804e61ca 100644 --- a/drivers/staging/greybus/audio_manager.c +++ b/drivers/staging/greybus/audio_manager.c @@ -111,7 +111,8 @@ struct gb_audio_manager_module *gb_audio_manager_get_mo= dule(int id) =20 down_read(&modules_rwsem); module =3D gb_audio_manager_get_locked(id); - kobject_get(&module->kobj); + if (module) + kobject_get(&module->kobj); up_read(&modules_rwsem); return module; } --=20 2.53.0 From nobody Fri Apr 17 10:36:01 2026 Received: from mail-106118.protonmail.ch (mail-106118.protonmail.ch [79.135.106.118]) (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 5E2DC1DFDE for ; Fri, 20 Feb 2026 06:30:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=79.135.106.118 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771569033; cv=none; b=qUjmqxhaQ5N+bK3OFySlpryXnKOOHdUWNorxcVAKvEmXKBRZ7qmt+SD8Qcrbh4nvOLp/76K5h2AxTO8ppz3lLYqxW068SFZ6rrt/Imj+kvyTpoST8xjtdNAEwlb1C7tTvXeero1zG5bS1XWxBdpA1zZ5oU0P1l6X1hwfulTotpE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771569033; c=relaxed/simple; bh=F0mFdNaR5Emio3Yo+Hu3GkUWq/x3e2P48hGEO44QrW0=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=R4nZ7/uBKBRUe9ba2zF1XFMvl0ywmcQlq4oMLBm9oTFxO8J8sAgP8q6FVWUdP08BlTx54ygBi3gl0rypI/njG+05J1Rq+0sq91JK/fnAD8IV7SLKt3bHEf+CwC/NpLQvUr9w0zeuK1X//134QdK3uMQIOh0PzQDxw2oaA6MNovU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=pm.me; spf=pass smtp.mailfrom=pm.me; dkim=pass (2048-bit key) header.d=pm.me header.i=@pm.me header.b=pvUhB9MJ; arc=none smtp.client-ip=79.135.106.118 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=pm.me Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=pm.me Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=pm.me header.i=@pm.me header.b="pvUhB9MJ" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pm.me; s=protonmail3; t=1771569023; x=1771828223; bh=F0mFdNaR5Emio3Yo+Hu3GkUWq/x3e2P48hGEO44QrW0=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=pvUhB9MJVV8YPa0LRjR3PDP5ceFl/sP/evZmR7Bagc+UCaekMDFhky65rsMGVkukP eUGpzw1Fxsb7J1rKIMIUVAflY9k4MV3cPCGUsUDNTW6giYQYO4xXwLKAGh8KaddZ+O Gxpimq+/YT8u8qqgcJNkFvBADy9SqrmtfoWvK7nFNdZg7WM+BzL3Mo+Tl5d5or9tXE dkfarUmLWgtHZHbn08wrW74zMw7ZXKsTEuIj+NJPjjFw5tG9G+fbO1PUYt13HHWKqy JHFkzBshG+Yzyk1V1RqcYr1hJuRnhoK27eTSOY0u/UapjOYuyenE7v7NUOMmfnKhHO bcfGGTTpCjIjw== Date: Fri, 20 Feb 2026 06:30:20 +0000 To: Johan Hovold , Alex Elder , Greg Kroah-Hartman From: Hardik Phalet Cc: Vaibhav Agarwal , Mark Greer , greybus-dev@lists.linaro.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Hardik Phalet Subject: [PATCH v2 2/2] staging: greybus: audio: drop stale TODO in module release Message-ID: <20260220062741.399677-3-hardik.phalet@pm.me> In-Reply-To: <20260220062741.399677-1-hardik.phalet@pm.me> References: <20260220062741.399677-1-hardik.phalet@pm.me> Feedback-ID: 166659585:user:proton X-Pm-Message-ID: ecf394c129eea227a6197263e843479041a8442e Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Modules are removed from modules_list in gb_audio_manager_remove() and gb_audio_manager_remove_all() before kobject_put(). The TODO suggesting list deletion in the kobject release callback is stale and misleading. Signed-off-by: Hardik Phalet --- drivers/staging/greybus/audio_manager_module.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/staging/greybus/audio_manager_module.c b/drivers/stagi= ng/greybus/audio_manager_module.c index 4a4dfb42f50f..b1dd3da9f57c 100644 --- a/drivers/staging/greybus/audio_manager_module.c +++ b/drivers/staging/greybus/audio_manager_module.c @@ -69,7 +69,6 @@ static void gb_audio_module_release(struct kobject *kobj) struct gb_audio_manager_module *module =3D to_gb_audio_module(kobj); =20 pr_info("Destroying audio module #%d\n", module->id); - /* TODO -> delete from list */ kfree(module); } =20 --=20 2.53.0