From nobody Tue Feb 10 03:45:03 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 3986A32C958 for ; Wed, 17 Dec 2025 06:51:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765954303; cv=none; b=HXz32Wc4BbOVtO56nUE/SuG5ooHFWk79UKI+by4dY+tf+zZ2WOT8F/jG99JofX9Nk3A6fB0zegZXiQ1ziaMHPNWEgofr1KvYqBFBDIpmTbsmvlW4YYrCKLcPL6TZyGMceyd+l/61zVUOQLO7VMtOHib2ph6BEgCTGVXT6vVT198= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765954303; c=relaxed/simple; bh=pJMvf4gE2407W+gdv4k3Yff8Slpho2ovd+794M5ZMsI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=kSE18UxYScsGfYma46cC8oyyNqFiPZ+mUpEC4EcpS2AVeyXX8BPqeCo4Mj8EtYD7tjDys9x1U6yNln04jqFlpS5bHAU9xEGgoQq+Za0TAtQJsymNABYH0ZcC43EJlKPtRy8JEpdUMoNYXouSSDmNrdW+0lPw48b3aqrQjaWFRrw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=lvAUBtua; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=e8j0pshZ; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="lvAUBtua"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="e8j0pshZ" Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BH3Ev2r1871277 for ; Wed, 17 Dec 2025 06:51:31 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=ob5zAEDq9ei IuOeJH/1kBFZzN1Bl+vkD4rqBtnGwSaE=; b=lvAUBtuakOsB/1RYpCYNFp7RKeg 3AEwA0HA4CvzRAVT2AfkOVwOP3lnJ5bhL4iFatXtBjMOH8f+5ipgaVdteUJdlIgj xmbQ7EBHCmWFmSoXLG8ZrbphzJ20cSoqmogwQWgTSwWnzMYg+FluVRQmgweBoncs v56QZuu4oGCneQEyzo0p+pj1jUr8zsXPo1HRtaSgJnDYH8h1yt0jAYEqmeIebOmi SmduESu4vVcyuk7n/QEBurQwbdkgqHRRuby+tDpEFL3Q0QB5cDopJGXveN8o/9fc FqGYPFZBFzng837BYsJdAixi3PVL33lPZUVlD9IhA4ourVukaimQygecjAg== Received: from mail-pl1-f199.google.com (mail-pl1-f199.google.com [209.85.214.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4b3jgq8vqh-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 17 Dec 2025 06:51:31 +0000 (GMT) Received: by mail-pl1-f199.google.com with SMTP id d9443c01a7336-29f2b45ecffso74279685ad.2 for ; Tue, 16 Dec 2025 22:51:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1765954290; x=1766559090; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ob5zAEDq9eiIuOeJH/1kBFZzN1Bl+vkD4rqBtnGwSaE=; b=e8j0pshZHDbU6FBHVU0sidcUn9+xlVGe3ldirHRe7fWY57LzrHuqkJHcikfZeV03G7 9kPy0x60YJPY6oIL1NSLDt4V0Aal32KXw1ADyfR7rYMTWS+4vJ8xG6dj2UTO6yMMRfLx 9X2xrgjR/i/+ZDSnT3BdUG0snbxYTETVHLyacS+vs8yp4Dhcc6AsB6mRkyW+tsmFXnmZ YZLpdKkfLQ7kKA+Ojvk16Lj8+sg1DWrJPH8CYkct6dtRTyHq+HJqdQekVKxO5t9u7O4k F8pfhzvMYz8lb3ZHTu2rYc4x7owgtZb1AeQeKu+Af57v8m1KxTExxdO3DK1UdERoVDLX wBYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765954290; x=1766559090; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=ob5zAEDq9eiIuOeJH/1kBFZzN1Bl+vkD4rqBtnGwSaE=; b=t3VNnydA3iUuoUNZFdDulXcLzZPwCQmAdfQX4w+KemChpC4ThIAJgZBWEc+0TjOIt/ tOhvXl4Xp9+P4OILLuHtvNTVaYIkBEj5k5AuWL/quoHA+rXOQM9NoLXsjDlJD8QCobZQ iHFx8ASn/jkP4C/49hmGEdQpy7HWbK0uQIVwsQNrtkFRF93bNuTFSUY7dw6Mx5qcUTn+ ycCod1osOybEvWFwY9e0VrKJ5oMps9ZKhp8XcXbtfpRh7maA1VBwcKMKXOfOE/j4a8uD MrHowCU0qYTznZcPoTqqAwsimQvwamF8SVm9rqxl0zwNPIhcSGpVQiapHsn6S9E4nuqj yFsw== X-Forwarded-Encrypted: i=1; AJvYcCVW8JOtV43g8o6dW9dnLMyzdhG17xbwuQtc0rJ81cJHG7QVIBlSkG2D6GwPM1d2Pp0bg7mbIO4qULezgjs=@vger.kernel.org X-Gm-Message-State: AOJu0YzmxQnZkH38UDhYx2jhsauUpg06xft+56+VfC84kOy6IRiZ2HU7 0DQGuStJT8rYgp9JlRh54Tml+sNz2604NFCi8DuxVGN/BIC+HLQZjbNmcWp5NoUdfc1M+9POfK8 lnRj9AAGU8C7nJihTKeKha3wiS+Z8BstvfIQEgYzbqG3BVNCvqH+pfmBrNlWJl+qu3hY= X-Gm-Gg: AY/fxX4g1TWQ+ygVKhuUP0SaTehymySy+KEQ0f/IKFtNH3yfT47ZIRQM8FirvyuATG5 1uaTzj3zdCtdrHdYVvkmPB2BJxAJ0/N6RpaIdX5SdEhvkDscZWvPf5QCIn1wxpbvdt2D4o0nlPl wcfZqNFf0XuYAYVWeBw0qA19AaU57ujJO/1QiigPJmoGQiDfJwFk6LBVvFzmyzoaC8N/p0upTL4 9WpIM9A79jj4zyt99W7LrXNtApsKaX5i60kuAyrQsihw2+da07HATlAdKVmj877sSKHlJxjpEWR RqsvqNtkXkP6dh6XaK4JPI/ZjZ2/nlMN9piTxcguqilj7gJEdHIIFgUQKg6VPimzyd2whYGNyft ZCYnu6ODKfisU1UWAy9Q1IdDV7xC9CUrEd2eUIPInRQkbk1pDppGknzvdjv/pHUBIyn7DMI8fcs v+ X-Received: by 2002:a17:903:41c4:b0:2a0:e195:b846 with SMTP id d9443c01a7336-2a0e1a4fcd5mr111457495ad.54.1765954290239; Tue, 16 Dec 2025 22:51:30 -0800 (PST) X-Google-Smtp-Source: AGHT+IE+jLipged6UvMrD3Na8ulynn8bBpRtRrg63DRf/JcDs+2XzdYdiq9BaBHF86AMCoyglgGi1Q== X-Received: by 2002:a17:903:41c4:b0:2a0:e195:b846 with SMTP id d9443c01a7336-2a0e1a4fcd5mr111457315ad.54.1765954289763; Tue, 16 Dec 2025 22:51:29 -0800 (PST) Received: from zhonhan-gv.qualcomm.com (tpe-colo-wan-fw-bordernet.qualcomm.com. [103.229.16.4]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2a0993ab61dsm118846515ad.46.2025.12.16.22.51.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 16 Dec 2025 22:51:29 -0800 (PST) From: Zhongqiu Han To: andersson@kernel.org, mathieu.poirier@linaro.org, corbet@lwn.net, rusty@rustcorp.com.au, ohad@wizery.com Cc: linux-remoteproc@vger.kernel.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, zhongqiu.han@oss.qualcomm.com Subject: [PATCH 4/5] rpmsg: Handle dev_set_name() failures properly Date: Wed, 17 Dec 2025 14:51:11 +0800 Message-ID: <20251217065112.18392-5-zhongqiu.han@oss.qualcomm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251217065112.18392-1-zhongqiu.han@oss.qualcomm.com> References: <20251217065112.18392-1-zhongqiu.han@oss.qualcomm.com> 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 X-Authority-Analysis: v=2.4 cv=VLjQXtPX c=1 sm=1 tr=0 ts=694252f3 cx=c_pps a=JL+w9abYAAE89/QcEU+0QA==:117 a=nuhDOHQX5FNHPW3J6Bj6AA==:17 a=wP3pNCr1ah4A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=R6Is9h_wUuj108RMq48A:9 a=324X-CrmTo6CU4MGRt3R:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjE3MDA1MyBTYWx0ZWRfX6ZFKsnrhBe7g RsBWld2lNrWt7NORAaHi05vL+nqh4gDD+TMxJHO2vZaSc4451CzQf/dYuSlYwaVO41e5oEr3111 cIHxCFZ/KTU6IbdJj5c7SxEZccHtEGdmTzieY6cdGrQHRNqTUx7IpxBLRrOIg5ZjZ8yebmwAE9I QvAJxnrXKxyT/6iR8PWir3pvl1VGWQcodlw4pOr37Gk5AlKmJxmffDNhhAXxBjrQhBQnT/V77bR nyYiC/yFaQ7ccOwaPQJTcRQ794huQJiEGuW/x/q66tJG7yXkZU+ogE8MyYkjg83fI3QhkXFMvcx P8Xt7R+SuQtH9yJ3Mqi+XNlcEfexre66Gx2e9zvTFodfHS8sgRejgeHVGskvyrTNXGW+ZlDMgvh KCdTmp+ufGqjKyyX92WA/7hCpnI3eg== X-Proofpoint-ORIG-GUID: n60tSbweC-qVB6hJbm0vAtMqIqaxt8L9 X-Proofpoint-GUID: n60tSbweC-qVB6hJbm0vAtMqIqaxt8L9 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-17_01,2025-12-16_05,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 adultscore=0 suspectscore=0 bulkscore=0 malwarescore=0 priorityscore=1501 impostorscore=0 clxscore=1015 lowpriorityscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512170053 Content-Type: text/plain; charset="utf-8" The dev_set_name() function can fail and return an error code. Ignoring these failures leads to undefined behavior as the device lacks a proper name, which may cause subsequent operations like device_register() or sysfs interactions to crash or behave unpredictably. Add error checking across all rpmsg drivers to ensure proper error propagation and resource cleanup. Signed-off-by: Zhongqiu Han --- drivers/rpmsg/qcom_glink_smem.c | 8 +++++++- drivers/rpmsg/qcom_smd.c | 8 +++++++- drivers/rpmsg/rpmsg_char.c | 5 ++++- drivers/rpmsg/rpmsg_core.c | 8 ++++++-- drivers/rpmsg/rpmsg_ctrl.c | 5 ++++- 5 files changed, 28 insertions(+), 6 deletions(-) diff --git a/drivers/rpmsg/qcom_glink_smem.c b/drivers/rpmsg/qcom_glink_sme= m.c index 7a982c60a8dd..843bf04eecb3 100644 --- a/drivers/rpmsg/qcom_glink_smem.c +++ b/drivers/rpmsg/qcom_glink_smem.c @@ -239,7 +239,13 @@ struct qcom_glink_smem *qcom_glink_smem_register(struc= t device *parent, dev->parent =3D parent; dev->of_node =3D node; dev->release =3D qcom_glink_smem_release; - dev_set_name(dev, "%s:%pOFn", dev_name(parent->parent), node); + ret =3D dev_set_name(dev, "%s:%pOFn", dev_name(parent->parent), node); + if (ret) { + pr_err("failed to set device name\n"); + put_device(dev); + return ERR_PTR(ret); + } + ret =3D device_register(dev); if (ret) { pr_err("failed to register glink edge\n"); diff --git a/drivers/rpmsg/qcom_smd.c b/drivers/rpmsg/qcom_smd.c index 2793096aba45..61f580ee04ec 100644 --- a/drivers/rpmsg/qcom_smd.c +++ b/drivers/rpmsg/qcom_smd.c @@ -1494,7 +1494,13 @@ struct qcom_smd_edge *qcom_smd_register_edge(struct = device *parent, edge->dev.release =3D qcom_smd_edge_release; edge->dev.of_node =3D node; edge->dev.groups =3D qcom_smd_edge_groups; - dev_set_name(&edge->dev, "%s:%pOFn", dev_name(parent), node); + ret =3D dev_set_name(&edge->dev, "%s:%pOFn", dev_name(parent), node); + if (ret) { + pr_err("failed to set device name\n"); + put_device(&edge->dev); + return ERR_PTR(ret); + } + ret =3D device_register(&edge->dev); if (ret) { pr_err("failed to register smd edge\n"); diff --git a/drivers/rpmsg/rpmsg_char.c b/drivers/rpmsg/rpmsg_char.c index 073d56858b88..89d232d80df2 100644 --- a/drivers/rpmsg/rpmsg_char.c +++ b/drivers/rpmsg/rpmsg_char.c @@ -450,7 +450,10 @@ static int rpmsg_chrdev_eptdev_add(struct rpmsg_eptdev= *eptdev, struct rpmsg_cha if (ret < 0) goto free_minor_ida; dev->id =3D ret; - dev_set_name(dev, "rpmsg%d", ret); + + ret =3D dev_set_name(dev, "rpmsg%d", ret); + if (ret) + goto free_ept_ida; =20 ret =3D cdev_device_add(&eptdev->cdev, &eptdev->dev); if (ret) diff --git a/drivers/rpmsg/rpmsg_core.c b/drivers/rpmsg/rpmsg_core.c index a5dd09f19b14..49737d69b44c 100644 --- a/drivers/rpmsg/rpmsg_core.c +++ b/drivers/rpmsg/rpmsg_core.c @@ -553,8 +553,12 @@ int rpmsg_register_device_override(struct rpmsg_device= *rpdev, if (driver_override) strscpy_pad(rpdev->id.name, driver_override, RPMSG_NAME_SIZE); =20 - dev_set_name(dev, "%s.%s.%d.%d", dev_name(dev->parent), - rpdev->id.name, rpdev->src, rpdev->dst); + ret =3D dev_set_name(dev, "%s.%s.%d.%d", dev_name(dev->parent), + rpdev->id.name, rpdev->src, rpdev->dst); + if (ret) { + pr_err("failed to set device name\n"); + return ret; + } =20 dev->bus =3D &rpmsg_bus; =20 diff --git a/drivers/rpmsg/rpmsg_ctrl.c b/drivers/rpmsg/rpmsg_ctrl.c index 28f57945ccd9..3e2cfd16df6a 100644 --- a/drivers/rpmsg/rpmsg_ctrl.c +++ b/drivers/rpmsg/rpmsg_ctrl.c @@ -165,7 +165,10 @@ static int rpmsg_ctrldev_probe(struct rpmsg_device *rp= dev) if (ret < 0) goto free_minor_ida; dev->id =3D ret; - dev_set_name(&ctrldev->dev, "rpmsg_ctrl%d", ret); + + ret =3D dev_set_name(&ctrldev->dev, "rpmsg_ctrl%d", ret); + if (ret) + goto free_ctrl_ida; =20 ret =3D cdev_device_add(&ctrldev->cdev, &ctrldev->dev); if (ret) --=20 2.43.0