From nobody Fri Apr 3 11:10:51 2026 Received: from polaris.svanheule.net (polaris.svanheule.net [84.16.241.116]) (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 C5D20327BF8 for ; Fri, 20 Feb 2026 15:36:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=84.16.241.116 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771601791; cv=none; b=GMSC/uVZui88eQPmg+3Jod3+2KojBzaLqWb/MxdlmQGUmf4kk2d8tB5fCJZm+kuN6xJcd2Xp0TVjttJQLzDCPkngDUxMcvx0ir6ApoJJCudZLlImMwT1IiEhkE+dQ3rYSt0OT81BNBSZ7UmWaM8R6HoGa6hhXivwpyRGCKvOZ88= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771601791; c=relaxed/simple; bh=Xem+9+NYuPqFcysC1ghb2B7deW3QOQr+l7gKtSKQt3M=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=c22hLgTAfh21D4SmNvjHvUBLXk4gws/Waonw+KWrfU4A7AvO3gyejRecA77g8XjCdk97ZGayHzfwlPOnUCfi5dnk7yOJ+ro+DALLcuyBfRuOKsLmYlL8ff3OpqpW9IljSa/+J+LdSBCok0m8VlhHuzAZchMtPFdxmyyJ16v0HmM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=svanheule.net; spf=pass smtp.mailfrom=svanheule.net; dkim=pass (2048-bit key) header.d=svanheule.net header.i=@svanheule.net header.b=U4EXLbgh; arc=none smtp.client-ip=84.16.241.116 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=svanheule.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=svanheule.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=svanheule.net header.i=@svanheule.net header.b="U4EXLbgh" Received: from terra.vega.svanheule.net (2a02-1812-162c-8f00-1e2d-b404-3319-eba8.ip6.access.telenet.be [IPv6:2a02:1812:162c:8f00:1e2d:b404:3319:eba8]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: sander@svanheule.net) by polaris.svanheule.net (Postfix) with ESMTPSA id 80EF26E864F; Fri, 20 Feb 2026 16:26:44 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=svanheule.net; s=mail1707; t=1771601204; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=c2RuCT8Qm+s9GPN54drWO1to0j5bHvqrgebgVAWgN/M=; b=U4EXLbgheo4CARe6zP0SMZ+UU9VKDE0Jj5n16RYmr+cxZor3ACcCy+FORjCFgLStFCUoED fLsEy8urMiZ80c0jPx6Wg8lvYBaZApS9SJO9mfaYxwZ78fldPTzC+7KPIJhka49s2U1Zw+ t6VvPwbVGGM/nxM/zHtv2EeukwrHzBX4cpWR9oUW/fbCRIUdr/u+cGv+QVhTH9knTPPaxx 0QcpLiXldKzKVjtk/KwcKDf3Ise+xY2WhY9f02aEySZBYd7VFgdwbdWEHaGS3xz6hE07W2 /Z1PnT6Z8zhXZ32WBFEeN0RKzrNrwPK9JwxX8kYyW2DJN5o/5K8vDYkxG/wK5w== From: Sander Vanheule To: Arnaud Pouliquen , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, Sander Vanheule Subject: [PATCH 1/2] ASoC: sti: Return errors from regmap_field_alloc() Date: Fri, 20 Feb 2026 16:26:33 +0100 Message-ID: <20260220152634.480766-2-sander@svanheule.net> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260220152634.480766-1-sander@svanheule.net> References: <20260220152634.480766-1-sander@svanheule.net> 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" When regmap_field_alloc() fails, it can return an error. Specifically, it will return PTR_ERR(-ENOMEM) when the allocation returns a NULL pointer. The code then uses these allocations with a simple NULL check: if (player->clk_sel) { // May dereference invalid pointer (-ENOMEM) err =3D regmap_field_write(player->clk_sel, ...); } Ensure initialization fails by forwarding the errors from regmap_field_alloc(), thus avoiding the use of the invalid pointers. Fixes: 76c2145ded6b ("ASoC: sti: Add CPU DAI driver for playback") Signed-off-by: Sander Vanheule --- sound/soc/sti/uniperif_player.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sound/soc/sti/uniperif_player.c b/sound/soc/sti/uniperif_playe= r.c index 6d1ce030963c..f1b7e76f97b5 100644 --- a/sound/soc/sti/uniperif_player.c +++ b/sound/soc/sti/uniperif_player.c @@ -1029,7 +1029,12 @@ static int uni_player_parse_dt_audio_glue(struct pla= tform_device *pdev, } =20 player->clk_sel =3D regmap_field_alloc(regmap, regfield[0]); + if (IS_ERR(player->clk_sel)) + return PTR_ERR(player->clk_sel); + player->valid_sel =3D regmap_field_alloc(regmap, regfield[1]); + if (IS_ERR(player->valid_sel)) + return PTR_ERR(player->valid_sel); =20 return 0; } --=20 2.53.0 From nobody Fri Apr 3 11:10:51 2026 Received: from polaris.svanheule.net (polaris.svanheule.net [84.16.241.116]) (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 C5BFC25F7B9 for ; Fri, 20 Feb 2026 15:36:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=84.16.241.116 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771601790; cv=none; b=GveRE1crifCUDGV1yd6w+wAGINHiy+c+G4sM00js/U6R/9ANWsAZtWS6aQ1TVZcQPAlniDmt5FU6uCdVu5Az//mVjdwa3Tn7laQ95Z3LTiiD09N8eDB2ySkF/L8ZyZQ5GVG2qyLB3LGbh1qELDUGasTi2vug7GN0ry//+i4ANng= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771601790; c=relaxed/simple; bh=iOFnXiCigzajlM0ve9dWnJVkEhliaAcK0k3M2XTwSxU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=HX3eiOwc+jrIKi2AzihOsQj1EjWli9F4Bzc/xoZhtXnyWjxfbF1hkqtsYGJdQcigxQyPpTJ71iBh9IS2bToir6dKmhgZ40uOoRy1cz/llavy3mesLOr904Lq8TpLlcxTd+kR1qQb5r94XCB165MyFkID1EMrtPNsWjuKVG5ura8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=svanheule.net; spf=pass smtp.mailfrom=svanheule.net; dkim=pass (2048-bit key) header.d=svanheule.net header.i=@svanheule.net header.b=Gk2HYX8t; arc=none smtp.client-ip=84.16.241.116 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=svanheule.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=svanheule.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=svanheule.net header.i=@svanheule.net header.b="Gk2HYX8t" Received: from terra.vega.svanheule.net (2a02-1812-162c-8f00-1e2d-b404-3319-eba8.ip6.access.telenet.be [IPv6:2a02:1812:162c:8f00:1e2d:b404:3319:eba8]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: sander@svanheule.net) by polaris.svanheule.net (Postfix) with ESMTPSA id D41F36E8650; Fri, 20 Feb 2026 16:26:44 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=svanheule.net; s=mail1707; t=1771601205; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=PSjyJG1a1afLJ0OjvKwPwz19/SY4aTbeweheAtadhUc=; b=Gk2HYX8tUqEPwomxzJumKdXxXBVunOwyrf0PAOs7bEykX0bCNafinntEPjcaIGjyQNOep3 Vv/6H/9/MG/ZhYz2XZ+5qQn9SxUND7HWhCfZWfi0u2iHA9mgZfY5M446xweWw2KC+WXde4 fi7uTgsOLJTtNTfk2KAuw40U6rIC7Vr0JJKLq1Ah/8IQBY/ROkV2Bp6Gp288uAULPYObQM m3XpOS8XqQ3XG80nlzdkshmsjxHkGSW+Ev1tOOCpyXLscxKHbAE1UehHs0PXCBFZanTX27 jDdA0BODHeEVXe8+plYPMPoMaHIQU2GWul00eGv+3DFeewSOC21sXz1kGL7BBw== From: Sander Vanheule To: Arnaud Pouliquen , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, Sander Vanheule Subject: [PATCH 2/2] ASoC: sti: use managed regmap_field allocations Date: Fri, 20 Feb 2026 16:26:34 +0100 Message-ID: <20260220152634.480766-3-sander@svanheule.net> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260220152634.480766-1-sander@svanheule.net> References: <20260220152634.480766-1-sander@svanheule.net> 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" The regmap_field objects allocated at player init are never freed and may leak resources if the driver is removed. Switch to devm_regmap_field_alloc() to automatically limit the lifetime of the allocations the lifetime of the device. Fixes: 76c2145ded6b ("ASoC: sti: Add CPU DAI driver for playback") Signed-off-by: Sander Vanheule --- sound/soc/sti/uniperif_player.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sound/soc/sti/uniperif_player.c b/sound/soc/sti/uniperif_playe= r.c index f1b7e76f97b5..45d35b887e4e 100644 --- a/sound/soc/sti/uniperif_player.c +++ b/sound/soc/sti/uniperif_player.c @@ -1028,11 +1028,11 @@ static int uni_player_parse_dt_audio_glue(struct pl= atform_device *pdev, return PTR_ERR(regmap); } =20 - player->clk_sel =3D regmap_field_alloc(regmap, regfield[0]); + player->clk_sel =3D devm_regmap_field_alloc(&pdev->dev, regmap, regfield[= 0]); if (IS_ERR(player->clk_sel)) return PTR_ERR(player->clk_sel); =20 - player->valid_sel =3D regmap_field_alloc(regmap, regfield[1]); + player->valid_sel =3D devm_regmap_field_alloc(&pdev->dev, regmap, regfiel= d[1]); if (IS_ERR(player->valid_sel)) return PTR_ERR(player->valid_sel); =20 --=20 2.53.0