From patchwork Wed Feb 26 23:30:49 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuninori Morimoto X-Patchwork-Id: 13993327 Received: from OS0P286CU010.outbound.protection.outlook.com (mail-japanwestazon11011030.outbound.protection.outlook.com [40.107.74.30]) (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 ACE5F25FA23 for ; Wed, 26 Feb 2025 23:30:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.74.30 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740612654; cv=fail; b=lhOtufglcF9MjL/ZIiJEWVhXK+4eWXwdGqx9UWVNt5hDDLGeOslom8+WEopFt5UIsUogudol3eIX2iZCuvGwqsQb9STBycj7yeLCanEt3quwdtdjmV606TApkHwsF82BJIqmzPYHB3a9Jk+NCL3Kx2iEqzEP92oC859/uXHXAP0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740612654; c=relaxed/simple; bh=f6/3kqMkRZUv0VhmdLcnEx8Jp6hNbMbl9j17DJC+4CU=; h=Message-ID:From:Subject:To:Cc:In-Reply-To:References:Content-Type: Date:MIME-Version; b=WqsT9OYUPCMRb7qhj4WYbsOYlqWBrfS/VTSeX1VUclcGxVo5NCk1ABhSM1GQ0NTk3pPl1odlrbr/AYLz+g20af67XaQ/DfJMi1YOKeehKWHc7k7F2GHP5QQwG5AXc1EelCmEYsQ+qOnu4RNdTx3ljESLOY131pGI/gwf/1wJPvs= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=renesas.com; spf=pass smtp.mailfrom=renesas.com; dkim=pass (1024-bit key) header.d=renesas.com header.i=@renesas.com header.b=i2ymuSbZ; arc=fail smtp.client-ip=40.107.74.30 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=renesas.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=renesas.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=renesas.com header.i=@renesas.com header.b="i2ymuSbZ" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=hkQT1ezopR3o9ndBvKqdl5Jdn48LBh1zogY7STgpAGmnd3tAGAqqg8JUnqB1DxbVw0of4SC+nI5spme5IPMPUvYFq4bnPNKQ4crO/iPZYJKtStEG3P6Egd9Ta5dl+JfQ2Ix91hJBhhQJdQgZlsJYtow5xpzUQSuc/mCGc1rWOdYczDRNmTBF9Z+2oajcpyTcbb6Ti3n1fUyge3KOj7SzCMeSWmGhIA64oQeeDU1i9M21jfW2CWSGWEZNJOqOzbuba98caa7etioAm88NH00hpVdVLdWxDpI5J2TLtSW2w7+yccK0eBiKSUv2vZ6/U5FCn6efYgdsI7tqy0KBxyqVmg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=gHT/SqCCc+cYRl093k52QPh4h8Xb6oO/67PUD46QT8E=; b=bsEa9LAfT35Gb/zuXQ4d6HiPtXLGCZcXxACwz694neALTM8ohbxtblBqrpbq8DRPrzyQJ/YSMuPpEJahtekO/cQUHHW2cof2FsvsHdTR6RQi99AnYLP3wA1Y40sdxEu+Qle2DFzuyvyhTmKIihtMKhABboY4kuI2y9MvnQYANXSIhhCDFZtOWp/FLYHuIDyzZzom8q1Zg8zT0oceLpwgYJo+UdP6hOQRjOsJSrgBnRl3GVCAaqTONZKqteL9ud5IBQkIJkR/0bi/m9t+3ZwDxxss04mMd7x5LVNTxJd4XghXxfVAGm/g8dvX8RWb/H2NpTE+7sw2PSo+4OqLXiqUwQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=renesas.com; dmarc=pass action=none header.from=renesas.com; dkim=pass header.d=renesas.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=renesas.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gHT/SqCCc+cYRl093k52QPh4h8Xb6oO/67PUD46QT8E=; b=i2ymuSbZ4LDsBecxkFeaDIxJjAf1my4YQXDOPFiMrGoNYqnc7qfVhGNzeFOlW+DhOgTyXjDZS15OiAOoRFxklpVuivYUWWMOzZM4KueNtgrqWP5AZeWGLXnrVgb4kVp1c7/Gir80UdujaZKF8kDDTB7frWyS4JulOpOJr9vZfzk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=renesas.com; Received: from TYCPR01MB10914.jpnprd01.prod.outlook.com (2603:1096:400:3a9::11) by TYRPR01MB12895.jpnprd01.prod.outlook.com (2603:1096:405:1ba::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8466.21; Wed, 26 Feb 2025 23:30:49 +0000 Received: from TYCPR01MB10914.jpnprd01.prod.outlook.com ([fe80::c568:1028:2fd1:6e11]) by TYCPR01MB10914.jpnprd01.prod.outlook.com ([fe80::c568:1028:2fd1:6e11%5]) with mapi id 15.20.8489.018; Wed, 26 Feb 2025 23:30:49 +0000 Message-ID: <87a5a8qo5y.wl-kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto Subject: [PATCH v2 1/2] ASoC: simple-card-utils: Don't use __free(device_node) at graph_util_parse_dai() User-Agent: Wanderlust/2.15.9 Emacs/29.3 Mule/6.0 To: Mark Brown Cc: linux-sound@vger.kernel.org In-Reply-To: <87bjuoqo6c.wl-kuninori.morimoto.gx@renesas.com> References: <87bjuoqo6c.wl-kuninori.morimoto.gx@renesas.com> Date: Wed, 26 Feb 2025 23:30:49 +0000 X-ClientProxiedBy: TYCP286CA0078.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:2b3::15) To TYCPR01MB10914.jpnprd01.prod.outlook.com (2603:1096:400:3a9::11) Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TYCPR01MB10914:EE_|TYRPR01MB12895:EE_ X-MS-Office365-Filtering-Correlation-Id: 6945fe4c-8a82-4755-4fda-08dd56bd9a87 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014|52116014|38350700014; X-Microsoft-Antispam-Message-Info: 9XwZrporXoJeD/UCvdZG0hZJBB2rAFheikQmtU44N+CIl7LmzVhF7KcZ0rkxfxLYVTN+HCGQ+Aw5uJwyf4poubJOY0lacguk3y5rMqo0kX8+2TRbDe4reE3abv57dLCRbvim+jj4jm9xyPtEY7Rbb7uzBCi8pJfHtBwp8Vc/HGDCH9rJPUCQY33GqGF76/UByhWowu3CtnTo0F1DmAqE/aFxXHZrvsCj1L+fA/Ik7j49U8+jkDFkEVO1Hy/ugTfomvoexLoPxRyX4sDKJUAsJuRSca7MVg5sVDTkddO5qd6WZh9xjc+snMaUBlYZBZfikut7UhZGf9w3y00ZBKGH12UigxkpMaNJCkITZMNcl7+iC8Og71Z26y3q76ATHrLeMBxFI4F4OmF3Sl76XwYnNFZ06g2TMN6pt5sxlHFdPfdH3wwX6BK7QlWKT9gk5M11J0YtFQDfLAnie9PNevkKRZzaQghy6HF7+jDGE/FadjKDhYmbp16me4Aya+bKzdJkPKmeCW5MABQ0BeS7yjnfWbeBxl307q9wD6QI135ATmaQ03uukYFTWmaE6Ol6Rny9ym6nUcQiEQ3f/eY6pP3u0XmzpCWtaUvhdV3sSwhiy02o9csmjoLYmHbuBWWVfMtLelUutz4bO5bETscTTw8mRG1z3RYbz0wrhPultIzQYDs+xhamlowFq948VkCXea36qgFr6FjD0fdwqbkPYG8MMfM6JS9pNiqSfsJ0QnfpWxxYvJ0ILPbc4JAXRY8rhIr3Wc5BwNzjGV5hSnSdbvIXmiHDNL9lQhFp18kIiRA6mfAg90/nfpgU8hdY2XqrWDU4BeYLubV/C63LZkF4dk9kZRiHaONLCMiq3LAPge6jXJL2YAKUGq/VKWfP2WHA/DBPMKrLz/O+xcCjAVysYOrpd27p2sncgVr5DDvoCqgfR9EdT0Z7eS83WOJVGFUSCtb4iaNjhKdMhYk2KROHY+0LzUJ9B0Goi9X6tbhnww38NZprDtMVlo0D06Y28GRO1kz880HnbLGQPbKOFyH48XvbsJgPr3XIbxar+S1ibeSlsUJm4j2Q/2Cao+pAOUAhtez8BFMH8suJP+wFXY1MqxnCwFEi2P3eLKbw1R7wiJZMi5mFUPrcMT4b3TuEOv/KmvtLuIyDEmX5aP1uihjicSidRyUwtM82b2ZT0IbWuXk/Fhjj3sB7H6pB0Wza3UL4XSyIkw9c9tr+VB0Q1mIc5Fs9RVkThjhdfEDwv/GveLHIV4fu2nrdQvF+vGfMyiad1enWldXCAx4OjxlfwMmFt3V4hKoKjaHx2QIf46wnn8kqkUzb56VGqGoC6zQiuFGjZKieSvpF2Ltffb1IOLof+9LoV2pDFVdWynZsq6N+u8Vyt/JIyunhLaaGnzmzWMiKLcV+VLIpsN9E8JgHzM0ZqlZFsSYl9mqE77Iwh2C/dPStXLkFNURuXC39vcvr5dFCIbFW X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYCPR01MB10914.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(52116014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: hjYSC3Rx5Hbraj4IWePeX56P6Kar/r4SNfKsgWYB8cRI6e/ZIufURYjBr0ry5rH1fnKHkY9E1tr79wV/FwcpYJcun2/hlUIvbxVLfkrRz6xc2uxHYkkfUWQO2VGIDwecbYsEO2eYy5R2rTab5L0e/OiZWUch/+Agjt3Y9V74zvkEYk7DrW3ZVA3fzRIhClD7hUZw1UeYcVobycislnG2If/Eu6JgpJPR/AHwxIkBU6TFrlKoXnZLxxsK4aNnZiW2XbnXYJC7YRC9A0C3uH5dsVeVo6n87v2+UMNARh2GvkEHfccgZjttCVVu2eZ0lS0naMXYxRyjRRasA2u1n2c5+3T/m2OWGHgPwjmSDRRt3YSa7aehjWtP6wujqJ+uWqB2sWhr9WVO017r1svoFnRtkGk44YRG9TfcikPIs1YW5Ou383CXS4he1M+Bo6iUT3G5kAGm9LE1aw3Rh9sS5WJVyYuyibV0hDSQi/nDyFg/C2NEAt4FiOvqD6+cngYZepRlhlkp1sKfdXI6UCy2FII2nD8eQlogjafUpvH6W5B4/02XPXnv5JmPSPnrUhx3hb2pUxFh3umsEaPxXfHjMJxx8uhaMkR+EVWwEMnsTY6hF4sC9R6JnpTbXlDteIp+SCz3X9y++GLDwsXx1BnJsQ+l5Q5gDyJsMT1R0OWTPd+Wouh03W87WkyM0Jw6lmEicLPR+MUAF1rC8kHwpSvkEJHWhUgPZeJEZdwpANufhvVImZmGJR6mlSPrUaw8bgA/DgUV7qnXOemBhfhudTnftEmWqSCC3B6mvXCTskN/SA/gCtzgOPxVEtmKWdVo8H5PScNiqgaqKhPwMLYxoR73S8d6guYxrjw/2q+pUQfzVhH0Qp5MlN3dtM5fqOr5LfkJBzB4Ht9xLec5JW5ei6/fdvbUJuO/cXSW5Hp/UPmbzJsahJIrz6w7I7Bp4a3U4HHofl/77WpWengLbWvv6ykctf9V1DIzOb1VmgWQzUON4OAAJ/QoCP9e6Bo7L6vNUonDIo1Q9EeaEgVnD7PB+0n0W/Addsc7QEOlOqJCi8+Pj8WY0UzD/e/+oetMMYLplhYfi1ZpDCqmk0ebQIBmoKbUobUqXdfrHbNOSmo4XJq08GoCYPlEswsPaQjtcaxLd/h381NQs8lRAMhUNyud+qfxDHz6+1YG6X+WTcq3xkC91/8FYnr1OiXUZ9JUh2mrtQEhp+NUNzrN0kMX9rAoOxvu4gAyjPdfn6zQGK6SrfF+WNl+4emrSzxoDzpDy9G+gCULPzXS+KjAtE5bOOHAYNXH7OC6TXnP91LiDH9d/iV1JlN1rw7ewwNQcFa5P2EarmDkuZKzePAUowoVqR5fo6PjrxaaW9XccaxFqAV2aXlcVqyznGmlwzRmWomYphm2Z6XYyU0iHVmuM2taNuu7dtrcygPMn/AvVlEpWGo+NU0IrxgFHAKQ9eKrc633IvwZUqKGArUs3YPdsMRlGQSfYZkQVZGG7snH3baORfSgJ1R6xDNgQUpjYXl9/r/swqazcJP/9/1KCRORlK1FAw4SkWvCq6I+W4RWmF9QN8klZPvLUlUG4BliJdAJw6jkEsSS0K9c6bbXUXVIH0BZXxkNmjiEr8CpgsLYjCC0qtxl11aO/1FkO6k= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6945fe4c-8a82-4755-4fda-08dd56bd9a87 X-MS-Exchange-CrossTenant-AuthSource: TYCPR01MB10914.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Feb 2025 23:30:49.8764 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: jW7so7jUMSVpSjiDkfd4Pvi50ZaXGFis9REIf8+Dcp9bd3NfS9MMKC0Dig/9kwiv72CVyReFaOn6UyVhW+1e6wpyjBaUKTyDvSnSDtE3KKnERdBleJNlNm0xPIjDfhyO X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYRPR01MB12895 commit 419d1918105e ("ASoC: simple-card-utils: use __free(device_node) for device node") uses __free(device_node) for dlc->of_node, but we need to keep it while driver is in use. Don't use __free(device_node) in graph_util_parse_dai(). Fixes: 419d1918105e ("ASoC: simple-card-utils: use __free(device_node) for device node") Reported-by: Thuan Nguyen Reported-by: Detlev Casanova Signed-off-by: Kuninori Morimoto Tested-by: Thuan Nguyen Tested-by: Detlev Casanova --- sound/soc/generic/simple-card-utils.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sound/soc/generic/simple-card-utils.c b/sound/soc/generic/simple-card-utils.c index 51e0e434514d..79fdd57a470c 100644 --- a/sound/soc/generic/simple-card-utils.c +++ b/sound/soc/generic/simple-card-utils.c @@ -1102,6 +1102,7 @@ static int graph_get_dai_id(struct device_node *ep) int graph_util_parse_dai(struct simple_util_priv *priv, struct device_node *ep, struct snd_soc_dai_link_component *dlc, int *is_single_link) { + struct device_node *node; struct device *dev = simple_priv_to_dev(priv); struct of_phandle_args args = {}; struct snd_soc_dai *dai; @@ -1110,7 +1111,7 @@ int graph_util_parse_dai(struct simple_util_priv *priv, struct device_node *ep, if (!ep) return 0; - struct device_node *node __free(device_node) = of_graph_get_port_parent(ep); + node = of_graph_get_port_parent(ep); /* * Try to find from DAI node @@ -1153,8 +1154,10 @@ int graph_util_parse_dai(struct simple_util_priv *priv, struct device_node *ep, * if he unbinded CPU or Codec. */ ret = snd_soc_get_dlc(&args, dlc); - if (ret < 0) + if (ret < 0) { + of_node_put(node); goto end; + } parse_dai_end: if (is_single_link) From patchwork Wed Feb 26 23:30:54 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuninori Morimoto X-Patchwork-Id: 13993328 Received: from OS0P286CU010.outbound.protection.outlook.com (mail-japanwestazon11011005.outbound.protection.outlook.com [40.107.74.5]) (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 B1F2525FA23 for ; Wed, 26 Feb 2025 23:30:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.74.5 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740612658; cv=fail; b=If+PWdV6liqAJKHF4klMrV/EiEG5Yb0s2pbicMg1FpQADeMh9D4Hy6KBqkl/XEictwpT/lZv8l0FrkySyvZLTsVQYVb5DPX2lmCmCJujEJpAA4P9tAbqcRYIzyVlWf8qUyaQPzAEBuwC+ekqvpldAjrOpRdl/Xnme6WzssqOzkg= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740612658; c=relaxed/simple; bh=dv/PKhvhObDsuhYjgUqBSAMTfG7z6EaNB+Kl9Jufw5k=; h=Message-ID:From:Subject:To:Cc:In-Reply-To:References:Content-Type: Date:MIME-Version; b=Z+RehOrMGVXu5sngKUzc+q4AfsBEqeACXoOxbKSTy26ZxNFJS7OMOh2peMFPvgQ+Sr0039w1nXzLVqkg0UYMN2CyMt7j9oDQRvrvcXYxbfO5y6GgEDpa3CmvujfUNBHID14DmfHZPRfSReIv+2mZg5R/zxR04JSqUkTyfo3oo4k= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=renesas.com; spf=pass smtp.mailfrom=renesas.com; dkim=pass (1024-bit key) header.d=renesas.com header.i=@renesas.com header.b=CM5FfdGd; arc=fail smtp.client-ip=40.107.74.5 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=renesas.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=renesas.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=renesas.com header.i=@renesas.com header.b="CM5FfdGd" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=C+HiamzDYvc/Tcp0yrh4BcR+qjsrvLP0xj8+kjMHq5imDl6pYNjn533BEtYgd4as0B4Sg6ePqTuE/7iFq01nKby1JDPACGDET6Z8Dag9PJCEeV8Tg6pE7YdpcbZiO4+Wq292ONsUJZPSdNwwUel8eIeAsSEjBVA3QyaRdsTNlwtbiWlDZuOBXUN7zlnRFB20VyiHAFYtDTIdCDuur5gCSCdjmR7dTLyhqVcoVifbAqbRYRxmd9IPbU9Zl5w52MO8WxHiMB0J02rXFAcLv8zRZYq13+ofl66fUkhvTnGC438n7wNvK5dkuPnWS7qJnMM4anH7KCwM6H6uWY8mdr+93A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=/qyOTGaKxbR9fGJohqcDj3axmOswyYNX0vz9S1noWPw=; b=PTxBf8mW6CVfXMWRBkUi2RAu9Gx7etFociFNQOvWP1TQwooS2PuSXl+X8sEfV82Fk4bJcenLjhuaJ5uYB+UNjMZAodN+f1iYd4TdT4dxJ2lQQjEP80vGWdcv7qPh2YvZ5x5gaiD6LEUR0rOWrrUylbbo9I29VDnyJuDPIAb+tUUBvUVw8M73q/pB6DV3mO86Knm4O6kmZWUTHPeFBmKpgBLzmH9XegixjH3lfHpFBQuUHUTHRt1mrzjWTCZMViekDioze69M1O8c3gcDUymnuDwAz6EeXmmKCOrFwUVgofYnr5hgu0JAiuh9y97rNloRYoZ5FPwJE2nodMGcjv/Xfg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=renesas.com; dmarc=pass action=none header.from=renesas.com; dkim=pass header.d=renesas.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=renesas.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/qyOTGaKxbR9fGJohqcDj3axmOswyYNX0vz9S1noWPw=; b=CM5FfdGdcBlpTZ8wxVdsbCVE/5Y55IQ/Vt8oLR7mY+VzenvLgVKauAGo3Lg952t1Du4Hf7ZoPsZgn4nK63NAlMNB2Ex+dRok9YOmS4v/N3EZdMIlmBrbcwNhNikqMfp1oBdXUIivEK4L7RtjXflecl2QgRdOPMBJAO840xULVnw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=renesas.com; Received: from TYCPR01MB10914.jpnprd01.prod.outlook.com (2603:1096:400:3a9::11) by TYRPR01MB12895.jpnprd01.prod.outlook.com (2603:1096:405:1ba::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8466.21; Wed, 26 Feb 2025 23:30:55 +0000 Received: from TYCPR01MB10914.jpnprd01.prod.outlook.com ([fe80::c568:1028:2fd1:6e11]) by TYCPR01MB10914.jpnprd01.prod.outlook.com ([fe80::c568:1028:2fd1:6e11%5]) with mapi id 15.20.8489.018; Wed, 26 Feb 2025 23:30:55 +0000 Message-ID: <878qpsqo5t.wl-kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto Subject: [PATCH v2 2/2] ASoC: simple-card-utils: fixup dlc->xxx handling for error case User-Agent: Wanderlust/2.15.9 Emacs/29.3 Mule/6.0 To: Mark Brown Cc: linux-sound@vger.kernel.org In-Reply-To: <87bjuoqo6c.wl-kuninori.morimoto.gx@renesas.com> References: <87bjuoqo6c.wl-kuninori.morimoto.gx@renesas.com> Date: Wed, 26 Feb 2025 23:30:54 +0000 X-ClientProxiedBy: TYCP286CA0171.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:3c6::6) To TYCPR01MB10914.jpnprd01.prod.outlook.com (2603:1096:400:3a9::11) Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TYCPR01MB10914:EE_|TYRPR01MB12895:EE_ X-MS-Office365-Filtering-Correlation-Id: 67d1e4e9-04e7-437f-6994-08dd56bd9d8b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014|52116014|38350700014; X-Microsoft-Antispam-Message-Info: GxY0Ldz9qacpq4DAWAupEHyVL2z+feK4XguA7Uoyx7OVKqPWFOZTzT/YW89MNCahpsj5pvKADHfdcjPPpvosjWN+FfpiZvsB2ApCTsFyz8PrPfqlN6iJsWd6K7+EruwuZiusqxkqxA+tmkpYU0PKbRi+cVxMjx1oiPnOP/mp7YEDK1jOa2rvObadbb6gHsbPKRMDCDewNHnKn+Otnxs5d/ZiM8mSmKWPD5Tb5+3pR1SjgaXYUSiZkgzxbEJ54HSnXhoVtGvUNrwsLHRckh34EtXMRhaBkAJCS5CbPt3jnT7Fy/kijigiPe3V5spceh99C7kbEFgg8wcTR8qNwp1+LOvxz1YgRltUyA2PN2u5IKbcw4wW70YKLxQxXi5mk7ExVIgDu3JJkFHCVquQ6IAwH3GOrvgZJaEFVovy1GvpTco6XR6vkihbrsHugvhKcjrZ+J0iEmkxuoKz7Q/zHbTf+sreTN1qd0hMDYqADOy2SgDf8wcRKOx/K0bHb1qSvwpY0qJDBVWIRLfVq7lLIQeLR+QJJ03iFERUEZ8dgsedyfWs3AKObIdguRBA5PmnugAcnOfdqxkDq/s2FQMtML4tnu3AShJesAK9Kaga0j+Hi3EhmTrw0i+lRJFxOxsUorolmMyONz1AmblTyTUQ+TH5vQeurQO8kx3bmYxF4QLpEJqJ9auP1f2CfqJByoq4qzyKa0a/0gD3BwT95vtDmXVqqut8W/71gsTdvUsYluVnzytNOJVJWnNUBg3rNOnbOkZl6ihrItolgaohTrRj77TE/EEUl/e7VpL2gSlNCHNupQWB9GYeVpC3HZ/HrrIxQP3cLFmu3u924L51+pZGLnTl9TMeKNMPy/jl4uPeGeqCUrMtPit6KOmvLRzBSkqGZLH05eLnIP5d4Za524VbMgPcmJikV9buFTS1g8nVLrfyT7YIRqU2aVix1dwnRKfZFhyw0kkns7o6SNu2o50pEXg/yVQmELn0B9+mgQqNUWYZVEKBC5VdWVi/YQzlUYju6GagY4Tf5ZhVBOaGBk5qxi2WjvVaSPhtMYeQ5cSv9raWxHwvQorz6l1+u5V8A493CWhoF4Jkt8JIerFPv6XpZMuVCOSNGxsqQTyqExAKcJKdX+wEEgGWoax5aXE1WuZREWtUq+ZUrshWhV5n8g9LO6q3dZJNU06wGm9RyRMUx7ESJvpATjmNhmW0xwE0DDGSQQUTd6SAQwcOMncAR5aST1gF2L/xb6U3102I2EViY0msxaiO23Y6z8/kQgeYZpNlcENIYiiVZHGGpXd4qXEgwZ6AtfkB0RHuU0epCDESzOWKv6Ahs2TLrcqjD6CYdrYLqfooujLBu5u+0TNhm/AV8wPVE4tL5hFhFTNYFmdKJrsP9FlPwgxXVYjL4E2xEPCZZJ4eyPtsDxPWjh3MN6dxT0y8HUyMRoR4YCWhz3iORjQsJRzi0gSnCVa9vZEkmw8srLaB X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYCPR01MB10914.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(52116014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 2QqsOA5Fd9HCRRj+ckcRo2LrJqzSZszN+8q9HLnw/X6HXlV96h80ZFYXkV+RRagli6B9iq0nuwKsF6Gmz+gdvmhwbXwl8ndExsx3F5nGWJPid0sLbzNYvQ1clYwgFf/4gCA5kJgffqWjpHyCNE5oQBmtnHaUeweTlNbWdAewdp9D5ZWuqobYtaeGB+qy281hAnQKpjwbU8AAk+lpEUStYGnleyHHVxMuyKxdkH3TmEBLEyJSWIZhKjZsfrK0t6/W6Q/RS/iCOLGLAWjEVuG8/ZOzMPI2EXfaE+54PKiEmUIAmgsO6kcWrqBlNNTvNYL9r3wZBMz9a0DDHJADwEvn3ONt+c7s9IbHBbhRAkEAtEXBtGk3S8AyHjWPZwK7WfiLywPHTNp2TODt9gtb+qjjilWuGigZ+mTxIgvnr1PhH2BmwlB59Xxhjl+ftkJS18PBMocNY8uJILZ17kbtrSAIO/SdiMeqTrBukvX97JElvPtsrZZ+Z7jygL6t6tQBEsVe4sZeoCpXoYU/WeRUlvUUMCS79rE49crc/IHCHRWWmfQGI6OQlh6IuTT7+R6FmLXHURyIbXCGjba51oAtNuukdSJrJmYVfr7USuqMazTl4GLkTseDAKffbCSqKesHxze7RaG3o6cNebCE6XJEGzWkhKyifFfKTl+m4zf/D4gd8Btr+50jphP1MftPopJNvCWm6HmMjWZ8SweO9S/WfE98PPP8LAR/VpfzZpZr+Dc6qmWrIlDqeRrSsMTCndY3I6iGtyHwJuVhYdmX1O9Gtiz7wNPSi3vy41Ur+VXM4HPxrBZmy6sQKcyL6cFINQLxF8Oz4EI6mQdCexkL2wpIKXHPJsHojNVFFLiuWGb8FScEiYsKN5zL4X6xKMhIYYtEy/x6sSjRnsQiEQrrrM7szjN1E4iyNRMny+BoEIOyGIoVNXKCJ5J7GVtZ+vOphrtLKqze002ijx78rRgc4vLAcMdHebPdsDbgxSE1lZ0b0y5b04VSGtpOQ1DybiORIR2F/RuGTcoo9SEqmOYpdQ7ualLm01mXrW41Xp2kBpqLmnu68kWih9z4fnrpO1d2K6cpei9xHSYoV+t2qJCStIEwUh227qVrQmoUdiZERXes3/6YpsNqy2r1wWLt2WmvsFOXNJV6513BqoaEFJ0FbFs2/Ki0n8ueCKfxmS2Or2No63Tmk7YPtL2a212ZlpCXHVwupEO0mN9V3Wm+2yOAqehIo8uT5DH5XoEKF0iqEbVgNgISjQiUi3rNWDwBAa0Yw4mjPKz1t5p3iJcKxumNocmMoL/7e3e1dTu9UJYEXM+7Qr3lgmVVXuSS2szBwuDGRAISIxYs0I8LwpN3mJw+TrEJeQDaCVvs+PVNi+6B6wBJB3aC0KsONrTWYxtRlodFGq0VltwW3VU2GNT4KC0wWy5OE0hWXAb0JwQfuAORNkACtZlLABWLyC6yd6Hfstx9SUNK/nvcDPLO8hXTY3ZVH2vt36R+FfhohT1uXBArMWmI/f8YcQ9MlwdKPug5mjGrs2cdCCS/ZVJJb3lougRbZFdjttIL/Fa85vXooWLCbyznY9LK3KZ0dh10Oj6GZNqTg7AdcSCVCmgXP/kt5ZRVqv+uH2kQp/gIBvFFzMiDrIrN2M/WytM= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-Network-Message-Id: 67d1e4e9-04e7-437f-6994-08dd56bd9d8b X-MS-Exchange-CrossTenant-AuthSource: TYCPR01MB10914.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Feb 2025 23:30:54.9730 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: WNdJtJNTV01Zmw6uW+tDEvWohX1p+iC6sQmZ7n2AF+FVeSWc4kZvXFoC9nuSZGpqMJN7uimWBm0ONkoUa/0/AODyp0+LT+MKXF6EsF1IC8qk3mY2Efq64a6ZA08oqsux X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYRPR01MB12895 Current graph_util_parse_dai() has 2 issue for dlc->xxx handling. 1) dlc->xxx might be filled if snd_soc_get_dai_via_args() (A) works. In such case it will fill dlc->xxx first (B), and detect error after that (C). We need to fill dlc->xxx in success case only. (A) dai = snd_soc_get_dai_via_args(&args); if (dai) { ret = -ENOMEM; ^ dlc->of_node = ... (B) dlc->dai_name = ... v dlc->dai_args = ... (C) if (!dlc->dai_args) goto end; ... } 2) graph_util_parse_dai() itself has 2 patterns (X)(Y) to fill dlc->xxx. Both case, we need to call of_node_put(node) in error case, but we are calling it only in (Y) case. int graph_util_parse_dai(...) { ... dai = snd_soc_get_dai_via_args(&args); if (dai) { ... ^ dlc->of_node = ... (X) dlc->dai_name = ... v dlc->dai_args = ... ... } ... (Y) ret = snd_soc_get_dlc(&args, dlc); if (ret < 0) { of_node_put(node); ... } ... } This patch fixup both case. Make it easy to understand, update lavel "end" to "err", too. Signed-off-by: Kuninori Morimoto --- sound/soc/generic/simple-card-utils.c | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/sound/soc/generic/simple-card-utils.c b/sound/soc/generic/simple-card-utils.c index 79fdd57a470c..692bafca55af 100644 --- a/sound/soc/generic/simple-card-utils.c +++ b/sound/soc/generic/simple-card-utils.c @@ -1119,12 +1119,16 @@ int graph_util_parse_dai(struct simple_util_priv *priv, struct device_node *ep, args.np = ep; dai = snd_soc_get_dai_via_args(&args); if (dai) { + const char *dai_name = snd_soc_dai_name_get(dai); + const struct of_phandle_args *dai_args = snd_soc_copy_dai_args(dev, &args); + ret = -ENOMEM; + if (!dai_args) + goto err; + dlc->of_node = node; - dlc->dai_name = snd_soc_dai_name_get(dai); - dlc->dai_args = snd_soc_copy_dai_args(dev, &args); - if (!dlc->dai_args) - goto end; + dlc->dai_name = dai_name; + dlc->dai_args = dai_args; goto parse_dai_end; } @@ -1154,16 +1158,17 @@ int graph_util_parse_dai(struct simple_util_priv *priv, struct device_node *ep, * if he unbinded CPU or Codec. */ ret = snd_soc_get_dlc(&args, dlc); - if (ret < 0) { - of_node_put(node); - goto end; - } + if (ret < 0) + goto err; parse_dai_end: if (is_single_link) *is_single_link = of_graph_get_endpoint_count(node) == 1; ret = 0; -end: +err: + if (ret < 0) + of_node_put(node); + return simple_ret(priv, ret); } EXPORT_SYMBOL_GPL(graph_util_parse_dai);