From nobody Wed Apr 8 03:07:02 2026 Received: from mail-pf1-f176.google.com (mail-pf1-f176.google.com [209.85.210.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7467F3E8693 for ; Tue, 10 Mar 2026 20:05:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173141; cv=none; b=QWwFxHsUY+OK0nEFEDmVGFgD4mpuA9y/0oNiTKaOa6D4289OdvHYGWuq8I1uz5X+5DNPkKBbW6yasmTOaYUUVXdc7MS/zWMM/VEG8p6uAF94WBJDaATT0NaLQ2YBuEQitNgXufCmHTThlHDDN4582qWsIdiNetOnJUVc7bFdpZI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173141; c=relaxed/simple; bh=pRXklnUT0y+bWg/RHzyTakkrEu8Vfkg5iScO4Ur1TQw=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=AtHcjojzf76hxd+akpmpa2v9H0p1YsKtmI8YTc3PzPXH81mehzaCCb4N4O65UdEr2ipMfUA3ISQEqIcih7WCveybLKoB4G2ONk18ukAaN/G0wqf1ntEML8/WlKknYVcv7hjAoEK0lB/5MsvzXRz2+6GMvL2yY6end4V1QTQrY/o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=F/ksQ6mm; arc=none smtp.client-ip=209.85.210.176 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="F/ksQ6mm" Received: by mail-pf1-f176.google.com with SMTP id d2e1a72fcca58-823c56765fdso6679386b3a.1 for ; Tue, 10 Mar 2026 13:05:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773173140; x=1773777940; 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=DPTwHYGbckptva0R18TL8RRhJ8bcbXMlJm3dcfwo28E=; b=F/ksQ6mmxJv2V03yaWQnnz79V9sSGRz+CygnPh7szdHRBHe/V9/rFO5I0nd6QDl/BQ hjsRm5e1WNF0ZaSuDFd61tGvOa3rwLuwlY34//epIaJi1V69ooshKVVhkUj6qlLO5xN5 UK8b51jBmOM11kPIaE6nZOUMmsvizflBuCXGi5VCEUyDTjUrAz5hVdbovScWZnk6uVqd +ZgFHvwMsHHAecnJkaUJ59d+0towZJwip/usWG9+dEumI4Z8QE/2cnOnF3GTPFYE7Jcf //kp43Nk81xKoF4WQW9DijKXoVDZfwBZbRzYT+KteIlAPIleNGBxsNLjd7OBufnvmnr6 fQJQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773173140; x=1773777940; 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=DPTwHYGbckptva0R18TL8RRhJ8bcbXMlJm3dcfwo28E=; b=kh/rEjmTkFBw8NUSUZ+XIe5IfW9VR5ivJqtt4h559sQRbvTrBXgm+0zGHw/XxTlb8p WRDCdV8VK0yOjAIPwN8j9jaBNo+8HzOxmD7RXlDSHNoDT9P4ZRcCrKk3k9ZymsRiZYEa tunVelCt5OtsJgtEpetEAlFFFPuWvsaMrvnj1BhkYgk1IBFXun5pa+2oet9bBn4LQ8i/ FvqdCvQNLmphBd5OH/JHSy8OgK6dgOpkpf4L2/qUQJ92nvW2XGdwYPb2YxBxZY4wPHqH DtwFC7Am3snv5uYvEFNS+rMGjJRH7uq37Qzj+7ioICY/Cwbb4B4cTprr2Q3b6TPYAdqD Xd+g== X-Forwarded-Encrypted: i=1; AJvYcCWfuIihXeuDh519Rcb7iYUovfbNlQh3qhrBkYBLG9/rY3E6hAYVHe/+KlQjRJ/wnq/AnUTFgNFKc3x+ZTo=@vger.kernel.org X-Gm-Message-State: AOJu0Ywqk2zfvEwxSs1chJ/IEMGfjguZr5Yb0+ZS7/KIUYPvMR0Kidkx i2IZYG3S4bb5gtWPpowJJYy1lluKMrF1WYOHKb/XauFUsEqZ2IfBKiJv X-Gm-Gg: ATEYQzxxBV45OKur9PpLyl8G44n9bfu3wGwOGtO2YzMrJA4o3R1QkDq5nmHt+U7sHfu Jg2sZsCKavQ7xm7UlZvz9Au0rp0HgG/HgazjAoK3KzpQxzZGFbyfQFpSO9JV3ZLUz4SKNt/FB72 45K+rdaMwbGl2RlCzkXXNgAgJCexyGQguxAiECw0wlyz34b2oIRsZUx0ayoTrdv/ByHuxnC6fJz cFnWiWPiz9cs9nhJ3vm0jQ2VISy5oGMiLf/wcDCguc8I/Q2sbtex02vZnLgxMNitUYnSBv+pJUv flZvXGsgxwtHqbL6aJobNH7zadMOF8KDqmiXGxKQBOO9SehJYJpg7ZY6pt9iTIMQRqmxJ6mBS/p HiWzEnbOOZ6RdDfJ4VcnRtOcH+DE2C4kUPZm93ByQGb/BkKy0OitpFVGACvwZIBnZntGiumTYD0 3h4pIvmC5ofAOWfDBpnYiVqW+GvvOVrDuTo+8+22CsfcuNARWv X-Received: by 2002:a05:6a00:3397:b0:823:f96:63bb with SMTP id d2e1a72fcca58-829f721d2bfmr102248b3a.52.1773173139764; Tue, 10 Mar 2026 13:05:39 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-829f6dc2d0asm101660b3a.13.2026.03.10.13.05.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Mar 2026 13:05:39 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org, m.tretter@pengutronix.de, mchehab@kernel.org, p.zabel@pengutronix.de, tiffany.lin@mediatek.com, andrew-ct.chen@mediatek.com, yunfei.dong@mediatek.com, matthias.bgg@gmail.com, angelogioacchino.delregno@collabora.com, johan@kernel.org, elder@kernel.org, gregkh@linuxfoundation.org, pure.logic@nexus-software.ie Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, kernel@pengutronix.de, kees@kernel.org, nabijaczleweli@nabijaczleweli.xyz, marcelo.schmitt1@gmail.com, maudspierings@gocontroll.com, hverkuil+cisco@kernel.org, ribalda@chromium.org, straube.linux@gmail.com, dan.carpenter@linaro.org, lukagejak5@gmail.com, ethantidmore06@gmail.com, samasth.norway.ananda@oracle.com, karanja99erick@gmail.com, s9430939@naver.com, tglx@kernel.org, mingo@kernel.org, sun.jian.kdev@gmail.com, weibu@redadmin.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, greybus-dev@lists.linaro.org, linux-staging@lists.linux.dev, sanjayembeddedse@gmail.com, skhan@linuxfoundation.org Subject: [PATCH 1/7] staging: greybus: simplify cleanup using __free Date: Wed, 11 Mar 2026 01:35:07 +0530 Message-Id: <20260310200513.2162018-2-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260310200513.2162018-1-sanjayembedded@gmail.com> References: <20260310200513.2162018-1-sanjayembedded@gmail.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 Content-Type: text/plain; charset="utf-8" From: Sanjay Chitroda Replace manual cleanup logic with __free attribute from cleanup.h. This removes explicit kfree() calls and simplifies the error handling paths. No functional change intended for kmalloc(). Signed-off-by: Sanjay Chitroda --- drivers/staging/greybus/camera.c | 27 +++++++---------------- drivers/staging/greybus/loopback.c | 35 ++++++++++-------------------- drivers/staging/greybus/raw.c | 6 ++--- 3 files changed, 22 insertions(+), 46 deletions(-) diff --git a/drivers/staging/greybus/camera.c b/drivers/staging/greybus/cam= era.c index 62b55bb28408..14a603ca2400 100644 --- a/drivers/staging/greybus/camera.c +++ b/drivers/staging/greybus/camera.c @@ -519,8 +519,6 @@ static int gb_camera_configure_streams(struct gb_camera= *gcam, struct gb_camera_stream_config *streams, struct gb_camera_csi_params *csi_params) { - struct gb_camera_configure_streams_request *req; - struct gb_camera_configure_streams_response *resp; unsigned int nstreams =3D *num_streams; unsigned int i; size_t req_size; @@ -533,11 +531,11 @@ static int gb_camera_configure_streams(struct gb_came= ra *gcam, req_size =3D sizeof(*req) + nstreams * sizeof(req->config[0]); resp_size =3D sizeof(*resp) + nstreams * sizeof(resp->config[0]); =20 - req =3D kmalloc(req_size, GFP_KERNEL); - resp =3D kmalloc(resp_size, GFP_KERNEL); + struct gb_camera_configure_streams_request *req __free(kfree) =3D + kmalloc(req_size, GFP_KERNEL); + struct gb_camera_configure_streams_response *resp __free(kfree) =3D + kmalloc(resp_size, GFP_KERNEL); if (!req || !resp) { - kfree(req); - kfree(resp); return -ENOMEM; } =20 @@ -641,8 +639,6 @@ static int gb_camera_configure_streams(struct gb_camera= *gcam, =20 done_skip_pm_put: mutex_unlock(&gcam->mutex); - kfree(req); - kfree(resp); return ret; } =20 @@ -650,7 +646,6 @@ static int gb_camera_capture(struct gb_camera *gcam, u3= 2 request_id, unsigned int streams, unsigned int num_frames, size_t settings_size, const void *settings) { - struct gb_camera_capture_request *req; size_t req_size; int ret; =20 @@ -658,7 +653,8 @@ static int gb_camera_capture(struct gb_camera *gcam, u3= 2 request_id, return -EINVAL; =20 req_size =3D sizeof(*req) + settings_size; - req =3D kmalloc(req_size, GFP_KERNEL); + struct gb_camera_capture_request *req __free(kfree) =3D + kmalloc(req_size, GFP_KERNEL); if (!req) return -ENOMEM; =20 @@ -680,8 +676,6 @@ static int gb_camera_capture(struct gb_camera *gcam, u3= 2 request_id, done: mutex_unlock(&gcam->mutex); =20 - kfree(req); - return ret; } =20 @@ -870,16 +864,15 @@ static ssize_t gb_camera_debugfs_capabilities(struct = gb_camera *gcam, &gcam->debugfs.buffers[GB_CAMERA_DEBUGFS_BUFFER_CAPABILITIES]; size_t size =3D 1024; unsigned int i; - u8 *caps; int ret; =20 - caps =3D kmalloc(size, GFP_KERNEL); + u8 *caps __free(kfree) =3D kmalloc(size, GFP_KERNEL); if (!caps) return -ENOMEM; =20 ret =3D gb_camera_capabilities(gcam, caps, &size); if (ret < 0) - goto done; + return ret; =20 /* * hex_dump_to_buffer() doesn't return the number of bytes dumped prior @@ -893,10 +886,6 @@ static ssize_t gb_camera_debugfs_capabilities(struct g= b_camera *gcam, buffer->length +=3D sprintf(buffer->data + buffer->length, "%*ph\n", nbytes, caps + i); } - -done: - kfree(caps); - return ret; } =20 static ssize_t gb_camera_debugfs_configure_streams(struct gb_camera *gcam, diff --git a/drivers/staging/greybus/loopback.c b/drivers/staging/greybus/l= oopback.c index aa9c73cb0ae5..ae729f744ac5 100644 --- a/drivers/staging/greybus/loopback.c +++ b/drivers/staging/greybus/loopback.c @@ -508,10 +508,10 @@ static int gb_loopback_async_operation(struct gb_loop= back *gb, int type, =20 static int gb_loopback_sync_sink(struct gb_loopback *gb, u32 len) { - struct gb_loopback_transfer_request *request; int retval; =20 - request =3D kmalloc(len + sizeof(*request), GFP_KERNEL); + struct gb_loopback_transfer_request *request __free(kfree) =3D + kmalloc(len + sizeof(*request), GFP_KERNEL); if (!request) return -ENOMEM; =20 @@ -519,25 +519,24 @@ static int gb_loopback_sync_sink(struct gb_loopback *= gb, u32 len) retval =3D gb_loopback_operation_sync(gb, GB_LOOPBACK_TYPE_SINK, request, len + sizeof(*request), NULL, 0); - kfree(request); return retval; } =20 static int gb_loopback_sync_transfer(struct gb_loopback *gb, u32 len) { - struct gb_loopback_transfer_request *request; - struct gb_loopback_transfer_response *response; int retval; =20 gb->apbridge_latency_ts =3D 0; gb->gbphy_latency_ts =3D 0; =20 - request =3D kmalloc(len + sizeof(*request), GFP_KERNEL); + struct gb_loopback_transfer_request *request __free(kfree) =3D + kmalloc(len + sizeof(*request), GFP_KERNEL); if (!request) return -ENOMEM; - response =3D kmalloc(len + sizeof(*response), GFP_KERNEL); + + struct gb_loopback_transfer_response *response __free(kfree) =3D + kmalloc(len + sizeof(*response), GFP_KERNEL); if (!response) { - kfree(request); return -ENOMEM; } =20 @@ -548,7 +547,7 @@ static int gb_loopback_sync_transfer(struct gb_loopback= *gb, u32 len) request, len + sizeof(*request), response, len + sizeof(*response)); if (retval) - goto gb_error; + return retval; =20 if (memcmp(request->data, response->data, len)) { dev_err(&gb->connection->bundle->dev, @@ -558,10 +557,6 @@ static int gb_loopback_sync_transfer(struct gb_loopbac= k *gb, u32 len) gb->apbridge_latency_ts =3D (u32)__le32_to_cpu(response->reserved0); gb->gbphy_latency_ts =3D (u32)__le32_to_cpu(response->reserved1); =20 -gb_error: - kfree(request); - kfree(response); - return retval; } =20 @@ -573,10 +568,10 @@ static int gb_loopback_sync_ping(struct gb_loopback *= gb) =20 static int gb_loopback_async_sink(struct gb_loopback *gb, u32 len) { - struct gb_loopback_transfer_request *request; int retval; =20 - request =3D kmalloc(len + sizeof(*request), GFP_KERNEL); + struct gb_loopback_transfer_request *request __free(kfree) =3D + kmalloc(len + sizeof(*request), GFP_KERNEL); if (!request) return -ENOMEM; =20 @@ -584,7 +579,6 @@ static int gb_loopback_async_sink(struct gb_loopback *g= b, u32 len) retval =3D gb_loopback_async_operation(gb, GB_LOOPBACK_TYPE_SINK, request, len + sizeof(*request), 0, NULL); - kfree(request); return retval; } =20 @@ -621,10 +615,10 @@ static int gb_loopback_async_transfer_complete( =20 static int gb_loopback_async_transfer(struct gb_loopback *gb, u32 len) { - struct gb_loopback_transfer_request *request; int retval, response_len; =20 - request =3D kmalloc(len + sizeof(*request), GFP_KERNEL); + struct gb_loopback_transfer_request *request __free(kfree) =3D + kmalloc(len + sizeof(*request), GFP_KERNEL); if (!request) return -ENOMEM; =20 @@ -636,11 +630,6 @@ static int gb_loopback_async_transfer(struct gb_loopba= ck *gb, u32 len) request, len + sizeof(*request), len + response_len, gb_loopback_async_transfer_complete); - if (retval) - goto gb_error; - -gb_error: - kfree(request); return retval; } =20 diff --git a/drivers/staging/greybus/raw.c b/drivers/staging/greybus/raw.c index 3027a2c25bcd..60a754b20432 100644 --- a/drivers/staging/greybus/raw.c +++ b/drivers/staging/greybus/raw.c @@ -126,15 +126,14 @@ static int gb_raw_request_handler(struct gb_operation= *op) static int gb_raw_send(struct gb_raw *raw, u32 len, const char __user *dat= a) { struct gb_connection *connection =3D raw->connection; - struct gb_raw_send_request *request; int retval; =20 - request =3D kmalloc(len + sizeof(*request), GFP_KERNEL); + struct gb_raw_send_request *request __free(kfree) =3D + kmalloc(len + sizeof(*request), GFP_KERNEL); if (!request) return -ENOMEM; =20 if (copy_from_user(&request->data[0], data, len)) { - kfree(request); return -EFAULT; } =20 @@ -144,7 +143,6 @@ static int gb_raw_send(struct gb_raw *raw, u32 len, con= st char __user *data) request, len + sizeof(*request), NULL, 0); =20 - kfree(request); return retval; } =20 --=20 2.34.1 From nobody Wed Apr 8 03:07:02 2026 Received: from mail-pf1-f179.google.com (mail-pf1-f179.google.com [209.85.210.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E99723D0911 for ; Tue, 10 Mar 2026 20:05:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173154; cv=none; b=KvtfRN9stnFaqyDLcoHeVPRLVqCYqGb6vk03RGlrReVU2Wq8xG6QSmwldFI0kzQ6H5JbYjU+jIMCF9yPYBEpCydsqvsN/Pcui2BnHSPnndFR0ayHNu8Fw5oXNmxcjJt8RI0fQcrdd5F+Uh9Pwl51V8TXSi4daVbtb09u7TClHAU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173154; c=relaxed/simple; bh=guApLfrSRuNxR3Y8l2tK1to2nzdDTARtdhHWSQ+XOAM=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=o/GGSVSX1vxJ2jg9hDcqzK2uPsrUHv7btGiXPyJ7MEBr9Y2o8u29pKNRgO1tHGqahOMFlPMNZgfapRnCjnLrv4POD76rA2Zh/LLarC896qL/bDwW1tt+GHnVFFeTlq2dd4p2jRK5PrsYrpk8V8mXUKxBPu8jvMZ4CrQj6ZBG5mo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=V6CiRfU7; arc=none smtp.client-ip=209.85.210.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="V6CiRfU7" Received: by mail-pf1-f179.google.com with SMTP id d2e1a72fcca58-829781b2b01so4293217b3a.2 for ; Tue, 10 Mar 2026 13:05:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773173151; x=1773777951; 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=BrH4PALLy5kRg8WwPkdWNLB7To1Zs5EdGhx79dnqSRo=; b=V6CiRfU7sZI10Zzxz5eRG3i6fSR5ZGQkJGgFJU7T7AHL0mOhDY73fsR9yjFXq5L3dH Xq74LAbXhAlsSwqGU+C2gytamTI0jXsavpeVIF3MnDQa7UChff8zRv/pX7NhvfzFnlhU HlyHxSUnN3px0sbix2jrve1xR6WT8f22AEmq8pvTIjl0jPqg2uKOrJyDMAYHglH3FaEX PUr702IzE6fiQuONpFAFmXYVi0jCWldrZMJ657J4qLtzkybB8mp6ACGtKnkF4gS+ehto ELReGzbIBSb1l2RAvTgShr4GUx6FlFKH6HtOInPFsLPDohZ7hxSFrJl3GzyNCd6QSjVk w9OA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773173151; x=1773777951; 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=BrH4PALLy5kRg8WwPkdWNLB7To1Zs5EdGhx79dnqSRo=; b=xB+QJNZR5HMo1RkZqyf4TXdd+7NxSYTdpxJzTPKWgx6P2+gDCTeHpR5FzGZzq0H9L7 M+/pt14BC+ti9r2OpbSBbOTnQXjrDgnsm6Z9OclKGvwtdjfqhwU8vBHS16MfQBKLQ3Wv cabfvQg2f9tBn9kphBgFxHQ8wtp3dDpuMxn75HuVkIrkRo/aUp+dCIho3IGRZP05Meoi 6y9pX1Skgj8Cs5vsAxZD0H89M+qdQ5LQho3HBLSk0nCnY48VnoEUGC+vwxGOg2BQyiOr ixiRq7FYKLTzX+e4TFPviXmknKX3ytqDzWN4jRbgr/aavu9Ku6GKXFsa2NFZSFYv14EY B3Yg== X-Forwarded-Encrypted: i=1; AJvYcCVfXODk+ZBnjNv3MyJAp8jYBUTJSDXlvRFrOSkSKkFvbZ/RTBEZnvqFPGYAdexHHrD9H+EtIxtOVoonZHA=@vger.kernel.org X-Gm-Message-State: AOJu0YxBX/vh+kvp52lWb8PP+q79hnN3GptXdHGNO5W3qkX+ekggObj7 SkvCd10uaHuPVUSWeqbC5uEcK+Uiv4rZWaa0Zn4E3zuaWX2515Wfu0Pw X-Gm-Gg: ATEYQzzbgTdE7HwpWyEQV0gcDzhoBRl7OBgaw1b9w94gQpBz9kOQ+P8W0xVpvlWSlEl IU+5hgdhHJbpUlmWc4yRyvvqan8MmaYFH4XU0xurBlZciob7KgpS8toQT6tzr2JYPMiHtIKuscA ZmH8UhXbPCPyAUPJiVRk7imBUOa7VFSdZVitWyT6bHs9W2WNfnFAAZBogS6iKcwi2GUooV1RHm5 uJzee5zOXbk25suc0qk0aznguJ/lSYXxh3rr3FLBxnObT6wSwfCRqG+sP1W0f+3VOx4JoOgpMQ0 /NY65N2MKXI2ysdeG1WZDBO5exy1WKY7jiXtLhWu3KaLBfSc3WSXmzU5XN/rAPWZk7lxbVANS95 WtazDKTPIalgBSxHUKnFPAeri0+khMTiC64yCOlOpuZ3lX/SIx33piBqSXOVKgXxgJpY7p4Fizn ZGAaCB7tuto34zLZNJlYLPJyqljqi5gGC8qttfurPc10uKFNd8sGEX8JAbgm8= X-Received: by 2002:a05:6a00:1c9e:b0:829:88e7:c89e with SMTP id d2e1a72fcca58-829f6ee65abmr156570b3a.9.1773173151308; Tue, 10 Mar 2026 13:05:51 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-829f6dc2d0asm101660b3a.13.2026.03.10.13.05.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Mar 2026 13:05:50 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org, m.tretter@pengutronix.de, mchehab@kernel.org, p.zabel@pengutronix.de, tiffany.lin@mediatek.com, andrew-ct.chen@mediatek.com, yunfei.dong@mediatek.com, matthias.bgg@gmail.com, angelogioacchino.delregno@collabora.com, johan@kernel.org, elder@kernel.org, gregkh@linuxfoundation.org, pure.logic@nexus-software.ie Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, kernel@pengutronix.de, kees@kernel.org, nabijaczleweli@nabijaczleweli.xyz, marcelo.schmitt1@gmail.com, maudspierings@gocontroll.com, hverkuil+cisco@kernel.org, ribalda@chromium.org, straube.linux@gmail.com, dan.carpenter@linaro.org, lukagejak5@gmail.com, ethantidmore06@gmail.com, samasth.norway.ananda@oracle.com, karanja99erick@gmail.com, s9430939@naver.com, tglx@kernel.org, mingo@kernel.org, sun.jian.kdev@gmail.com, weibu@redadmin.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, greybus-dev@lists.linaro.org, linux-staging@lists.linux.dev, sanjayembeddedse@gmail.com, skhan@linuxfoundation.org Subject: [PATCH 2/7] iio: ssp_sensors: simplify cleanup using __free Date: Wed, 11 Mar 2026 01:35:08 +0530 Message-Id: <20260310200513.2162018-3-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260310200513.2162018-1-sanjayembedded@gmail.com> References: <20260310200513.2162018-1-sanjayembedded@gmail.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 Content-Type: text/plain; charset="utf-8" From: Sanjay Chitroda Replace manual cleanup logic with __free attribute from cleanup.h. This removes explicit kfree() calls and simplifies the error handling paths. No functional change intended for kmalloc(). Signed-off-by: Sanjay Chitroda --- drivers/iio/common/ssp_sensors/ssp_spi.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/drivers/iio/common/ssp_sensors/ssp_spi.c b/drivers/iio/common/= ssp_sensors/ssp_spi.c index 6c81c0385fb5..e76ef39c6b7c 100644 --- a/drivers/iio/common/ssp_sensors/ssp_spi.c +++ b/drivers/iio/common/ssp_sensors/ssp_spi.c @@ -331,7 +331,6 @@ static int ssp_parse_dataframe(struct ssp_data *data, c= har *dataframe, int len) /* threaded irq */ int ssp_irq_msg(struct ssp_data *data) { - char *buffer; u8 msg_type; int ret; u16 length, msg_options; @@ -375,7 +374,7 @@ int ssp_irq_msg(struct ssp_data *data) * but the slave should not send such ones - it is to * check but let's handle this */ - buffer =3D kmalloc(length, GFP_KERNEL | GFP_DMA); + char *buffer __free(kfree) =3D kmalloc(length, GFP_KERNEL | GFP_DMA); if (!buffer) { ret =3D -ENOMEM; goto _unlock; @@ -386,8 +385,6 @@ int ssp_irq_msg(struct ssp_data *data) if (ret >=3D 0) ret =3D -EPROTO; =20 - kfree(buffer); - dev_err(SSP_DEV, "No match error %x\n", msg_options); =20 @@ -420,20 +417,18 @@ int ssp_irq_msg(struct ssp_data *data) mutex_unlock(&data->pending_lock); break; case SSP_HUB2AP_WRITE: - buffer =3D kzalloc(length, GFP_KERNEL | GFP_DMA); + char *buffer __free(kfree) =3D kzalloc(length, GFP_KERNEL | GFP_DMA); if (!buffer) return -ENOMEM; =20 ret =3D spi_read(data->spi, buffer, length); if (ret < 0) { dev_err(SSP_DEV, "spi read fail\n"); - kfree(buffer); break; } =20 ret =3D ssp_parse_dataframe(data, buffer, length); =20 - kfree(buffer); break; =20 default: --=20 2.34.1 From nobody Wed Apr 8 03:07:02 2026 Received: from mail-pf1-f177.google.com (mail-pf1-f177.google.com [209.85.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7CCE33E8C7A for ; Tue, 10 Mar 2026 20:06:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.177 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173164; cv=none; b=CI2Xd4yXEleFUW4PFD9M8qs0/sQvTtiSGndxxj9zm6xzVXTE7NCRj7Se1iJBEvLO83TqyTmkDwLrVqWzLM9cY6YhyEB29g58OCeT30uhxqJN6DmQUBjHMd2KJka+vLvlPtNmm/OFP4lr1jPgyGVPpu9Z98tqd9ci3NGEIT/UdqM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173164; c=relaxed/simple; bh=NmQadLrlb35menLfcI7cw9Gbg/x58iEO/f6P/uOoiYQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=sOkS1ffgzeXmlNs1D2/wr9TV4z76lxPIL8GDObAgokQ1Dhgh03naRRSpABmNXv3np/MFKHthq/nl2jychswkm8YnHzyoV1t2Kp5LUP/2CTDlLLaOtDUi5VKm+sAVM+7h3WGM8HZ8XZe/GMWsrxCz+qGqdr8RxsILA1hRQpcyoQ4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=bz4rKh7k; arc=none smtp.client-ip=209.85.210.177 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="bz4rKh7k" Received: by mail-pf1-f177.google.com with SMTP id d2e1a72fcca58-829a27414a3so2639596b3a.3 for ; Tue, 10 Mar 2026 13:06:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773173163; x=1773777963; 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=zN04QOyvuNYqHR2KOr7qmaUFc0qRULIxaBq4auralkg=; b=bz4rKh7kOmROroDv4hrLhYXzb9o24Nd6ogZujfa4PDym+LphfHArTmjT2GvZPtzbOE fLR2AexW+e20/zfKgRcCGMAmlwGbs2srBzzMM3m8/bMooa4cjeOpIgiYWaSC29KjzRph iaC44eP6S5H0RPLT8JjwIeS4t65p0NYIZ/0u0eBGvhGY+ZWvO7WCH4AXXbngJEVn/Oyi pPh0gyDvpPmidF8iy7p3n8PghQvYY5wenGUt8DGPmRxyXOBu24sfnep4B3kbai+hmOQT jx6qEbgCr3FOdfdxtkexCi2DpeJDpWDVITy3jFUuMiBCTdrmrQ44CkTRoXAAkoamwgod qKrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773173163; x=1773777963; 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=zN04QOyvuNYqHR2KOr7qmaUFc0qRULIxaBq4auralkg=; b=o0a11P3NAFRpzwvRPpGrTGP30FyYFpoNEr0tcQeZLCmWNSZDLV+OEhGXXk8aIy6PWm EpXSVExEzY/+GbgxwRGPWBlJymzgu7NKnE41GLB5kDKkMqJmWbwhggUQF832H6eO4cKm Jl8O2eZBeebzBdp+Ip0Q1OxtZSYz1FpiyZp0yYjxK9z7PH6mMXtny5YOAv9EQDjXk8MI jEhmWtEhdHQFE3p3t4bbek/cxteZkc5KUP0Y7hqumfMPc2EKzgPnZXRyZ2EsebiDSHIo e0OWaZVtR6cR14YWaqmiTqea6PrJvbHwatvUDP/XxvqKvzNz7vmBEqPn9nyvShQiy0Wn N8Uw== X-Forwarded-Encrypted: i=1; AJvYcCXfO6hlHefDIr9Gfs+dhErNvaE0e+ALnbwWhEsqIPo0rZum+UPA8lrt995V6Qz/vOmjlEui7WlqzC7pKRo=@vger.kernel.org X-Gm-Message-State: AOJu0YySKkp5V0l+ZTQ5MZb4qTWwPkmE6yHDkEET9v/UOZxqRyY5UiQQ 2LReMSWImPImPkG/xD+1j2DPsXy/b87TeJHlfeq8Z8CG2tkCb9QcOABw X-Gm-Gg: ATEYQzxJdys/uzEjbXLfzXd51JhL2biP3YvOyqnIER8P4Sc3fQGEtpczUOfVbwgowZc sLMGkmTMUU9F3siIxFKE/BziVKSQlWzsYfa9F7paDZ2Dg5ZxfCd0q313XxZFCs9WgtvfAjPxgiG 2Gb0tpsADBWlgCR7AuZEARisYl3BipX64A/6AXQ3ZsEj9ung4N4UwQljKNRM8QPKBLT+Qaq7zK8 QgrbkBNKdQbsfwWeAWyN9tz47QwbN3Ok+XucaY55e95X0vMK7ir1RrjtCmKGQzq36/p7rWKxIZh ocWP2OAXjbDxEu1paYvQ6nPlFNg7OPELp/s0BKjw2fcyQZ/1qmO1SXo+pPibcwA3tCSiTIxhXG5 /mNk1I6GQnweb2VVdCVOLyMnXOnfmBMV/gBCC7fYX8TXBxyZnupVL+l9Fjd9h2j3u+oKq2rTAet XurF2cd/++SOxM6zE17Jpq7/+RsIUtXFZ2UicjXrjY3MJOCrHJ X-Received: by 2002:a05:6a00:3696:b0:81f:4a06:6f5 with SMTP id d2e1a72fcca58-829f6e71c7bmr133338b3a.4.1773173162881; Tue, 10 Mar 2026 13:06:02 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-829f6dc2d0asm101660b3a.13.2026.03.10.13.05.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Mar 2026 13:06:02 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org, m.tretter@pengutronix.de, mchehab@kernel.org, p.zabel@pengutronix.de, tiffany.lin@mediatek.com, andrew-ct.chen@mediatek.com, yunfei.dong@mediatek.com, matthias.bgg@gmail.com, angelogioacchino.delregno@collabora.com, johan@kernel.org, elder@kernel.org, gregkh@linuxfoundation.org, pure.logic@nexus-software.ie Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, kernel@pengutronix.de, kees@kernel.org, nabijaczleweli@nabijaczleweli.xyz, marcelo.schmitt1@gmail.com, maudspierings@gocontroll.com, hverkuil+cisco@kernel.org, ribalda@chromium.org, straube.linux@gmail.com, dan.carpenter@linaro.org, lukagejak5@gmail.com, ethantidmore06@gmail.com, samasth.norway.ananda@oracle.com, karanja99erick@gmail.com, s9430939@naver.com, tglx@kernel.org, mingo@kernel.org, sun.jian.kdev@gmail.com, weibu@redadmin.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, greybus-dev@lists.linaro.org, linux-staging@lists.linux.dev, sanjayembeddedse@gmail.com, skhan@linuxfoundation.org Subject: [PATCH 3/7] iio: st_sensors: simplify cleanup using __free Date: Wed, 11 Mar 2026 01:35:09 +0530 Message-Id: <20260310200513.2162018-4-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260310200513.2162018-1-sanjayembedded@gmail.com> References: <20260310200513.2162018-1-sanjayembedded@gmail.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 Content-Type: text/plain; charset="utf-8" From: Sanjay Chitroda Replace manual cleanup logic with __free attribute from cleanup.h. This removes explicit kfree() calls and simplifies the error handling paths. No functional change intended for kmalloc(). Signed-off-by: Sanjay Chitroda --- drivers/iio/common/st_sensors/st_sensors_core.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/iio/common/st_sensors/st_sensors_core.c b/drivers/iio/= common/st_sensors/st_sensors_core.c index dac593be5695..f641b62e692b 100644 --- a/drivers/iio/common/st_sensors/st_sensors_core.c +++ b/drivers/iio/common/st_sensors/st_sensors_core.c @@ -501,14 +501,14 @@ static int st_sensors_read_axis_data(struct iio_dev *= indio_dev, =20 byte_for_channel =3D DIV_ROUND_UP(ch->scan_type.realbits + ch->scan_type.shift, 8); - outdata =3D kmalloc(byte_for_channel, GFP_DMA | GFP_KERNEL); + u8 *outdata __free(kfree) =3D kmalloc(byte_for_channel, GFP_DMA | GFP_KER= NEL); if (!outdata) return -ENOMEM; =20 err =3D regmap_bulk_read(sdata->regmap, ch->address, outdata, byte_for_channel); if (err < 0) - goto st_sensors_free_memory; + return err; =20 if (byte_for_channel =3D=3D 1) *data =3D (s8)*outdata; @@ -517,9 +517,6 @@ static int st_sensors_read_axis_data(struct iio_dev *in= dio_dev, else if (byte_for_channel =3D=3D 3) *data =3D (s32)sign_extend32(get_unaligned_le24(outdata), 23); =20 -st_sensors_free_memory: - kfree(outdata); - return err; } =20 --=20 2.34.1 From nobody Wed Apr 8 03:07:02 2026 Received: from mail-pf1-f181.google.com (mail-pf1-f181.google.com [209.85.210.181]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0F6EF3E2759 for ; Tue, 10 Mar 2026 20:06:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.181 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173176; cv=none; b=BC5NIMAfjd9dehb/vciIDxiv9Cte7VpHGmF4Aatp6OAcBKLwClIDmSRskven4r/5hWdIsh936iZQdwkwHv4IAWp/sRfmwcksUIRiCWc8ntRdkbIWxLblrKzYFAOYq+loYGZbUw/LBFk2x6nxfslbuTUMkyu2lYTMX7/L4VExm2w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173176; c=relaxed/simple; bh=kDaS0oBBZ1N5fMHKwDDGFI1Ivj7HNRUlOpYXqktu9XU=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=GTNkLqMBXtbCoxQ+mLyhbhSQrwMGwjgBJnk/WYlb2hMBW/X0CRW4q25HFmWkf3BsHhTqUYTCzasC1kKAB6wZiSef6fsfYeKb5u8zBmA+9XZAg4cAmt5JtT7z8LorDQSyxHcgVSo8n/ANH7yNWIjq4VVaSmto7fLsK5sCAVMGDT8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Br1H0f0x; arc=none smtp.client-ip=209.85.210.181 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Br1H0f0x" Received: by mail-pf1-f181.google.com with SMTP id d2e1a72fcca58-829ac4670c4so2908395b3a.0 for ; Tue, 10 Mar 2026 13:06:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773173174; x=1773777974; 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=+FCnsZqgY0C/inqnWcqsCfogd4Ir01+XklcEE3giunQ=; b=Br1H0f0xNEmnRVdit6eCWnhKiAIxF57+hL5cuWoSgzcsmhcl0H4fTadmpRnrucYbyi k6B69BVDRwLURza7uEPkSGzv4X2akx195sgsSBju0X5030fSJ/oon16Xc4UWKFvr9s0K 0F+DUYUcbxpepbVuV+5Tx4vHQAYj1JUqnXALQyQPjbfeVWfQ+wQ/IvhRgvB1B/Z3vhQH HjtZ8WiT0KaAfZ8qFzDOm4UMAGUGdSgn7xFNLlqMVldd1gsitzd4Ovk4tLvYQpmhAWdO L9G0Y7utYpQHJOURnY4NOsYCa28IsPbzZKHP0Z/d77vL+XEjOjZrQRtErU68R05y9hNG GMYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773173174; x=1773777974; 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=+FCnsZqgY0C/inqnWcqsCfogd4Ir01+XklcEE3giunQ=; b=TsUWQDBPvSD6RWyNchKFvoBHx9YXK9lU/qQP10r+ayNcy0mPuAP/c0g9vs7lT1DNVV ulj7CzWEIWqQPa/VX1Fy+VMTBJVkoOSUpXODKzNMtRWsn9q8abvZc0MJrAnVyxbEgu4i Vlh7CfTlbkbPDhdf54CGgLOJ1laZKP6s7Eu7m4vOnOWXpggbiG0KIRLzVxeJrGp4OfcH m1mB9TW0NgbHBQdPWctIXmMUmjv1oVkpYk9u8rye7I09+pDjb5Hgo+2Kn9H+My5/Ko8e N2mxNLDcFIE+GmzNKEsXq56IOHomQfZRnr56Afohzl7xqAa4Whdlum1frCl7CJeExCRY BnGg== X-Forwarded-Encrypted: i=1; AJvYcCWeTdWHyWsuIwhanw4tMljmBqGaWEcf/HIdLFOE5GZfn/UEnFXNKgH6emU2acp5McVxxVlcbJmP+2d8KSg=@vger.kernel.org X-Gm-Message-State: AOJu0YyGwrRAfhP9t0yJgYoK47Bk/MU1XaV6+NBDurXgokYUaRcE90qA dbSTrD+kQNCLs0QGAyWbJIXdMq6Utiqe3QdQZVlp4c+BcZLkJ2RRhAQR X-Gm-Gg: ATEYQzxW5kChJH12zNZfBsM92BMP8OJ/KePcg7tR0Jd4J+AnFX4Gj+uGaisIEY38cEH 8QNhBrsREzOiuFesIAX9O2IsHr2qaizlsbiALPZTQeFmYJS+HWMiMHvrB2z0T2YxoWMfeYqUgta mERHHIwyeJFGQ2tYAe+ld3AhZ8galmB9kivHv0UDsDmPA7OsLlTDhaYMVmzQyf0nanGqNNGRPWg AVWPL9Y3ngIXQQUfDbEG+2PB1BdXWmyUJ1PRt+JvVd2NB7ggaVI4RwaFILwBjjxVYzS3LL4PF++ UIQBXWKKpwzRHl3ENcYax2W/hvgZkpbSkSGI0QWH5PvLuHfLC4Jn/+u0j1PV7LOrgX0maKFOLp/ c2YnbclO6yyQwamqIIei4F4Dr1yBY9QufhBhAvUc3/bKxRFShEb4fCeNOOweAANldi31tpcrUJK 0gPzdq7/q6hjT+me6XV3nTPIZjI6YUwTpIMU71EYpl4xJWwNAS X-Received: by 2002:a05:6a00:3d4e:b0:81c:6ca8:7ff8 with SMTP id d2e1a72fcca58-829f71c43f1mr119633b3a.61.1773173174414; Tue, 10 Mar 2026 13:06:14 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-829f6dc2d0asm101660b3a.13.2026.03.10.13.06.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Mar 2026 13:06:14 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org, m.tretter@pengutronix.de, mchehab@kernel.org, p.zabel@pengutronix.de, tiffany.lin@mediatek.com, andrew-ct.chen@mediatek.com, yunfei.dong@mediatek.com, matthias.bgg@gmail.com, angelogioacchino.delregno@collabora.com, johan@kernel.org, elder@kernel.org, gregkh@linuxfoundation.org, pure.logic@nexus-software.ie Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, kernel@pengutronix.de, kees@kernel.org, nabijaczleweli@nabijaczleweli.xyz, marcelo.schmitt1@gmail.com, maudspierings@gocontroll.com, hverkuil+cisco@kernel.org, ribalda@chromium.org, straube.linux@gmail.com, dan.carpenter@linaro.org, lukagejak5@gmail.com, ethantidmore06@gmail.com, samasth.norway.ananda@oracle.com, karanja99erick@gmail.com, s9430939@naver.com, tglx@kernel.org, mingo@kernel.org, sun.jian.kdev@gmail.com, weibu@redadmin.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, greybus-dev@lists.linaro.org, linux-staging@lists.linux.dev, sanjayembeddedse@gmail.com, skhan@linuxfoundation.org Subject: [PATCH 4/7] media: mediatek: vcodec: simplify cleanup using __free Date: Wed, 11 Mar 2026 01:35:10 +0530 Message-Id: <20260310200513.2162018-5-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260310200513.2162018-1-sanjayembedded@gmail.com> References: <20260310200513.2162018-1-sanjayembedded@gmail.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 Content-Type: text/plain; charset="utf-8" From: Sanjay Chitroda Replace manual cleanup logic with __free attribute from cleanup.h. This removes explicit kfree() calls and simplifies the error handling paths. No functional change intended for kmalloc(). Signed-off-by: Sanjay Chitroda --- .../media/platform/mediatek/vcodec/common/mtk_vcodec_dbgfs.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/media/platform/mediatek/vcodec/common/mtk_vcodec_dbgfs= .c b/drivers/media/platform/mediatek/vcodec/common/mtk_vcodec_dbgfs.c index 2da11521fc7b..3184939f793a 100644 --- a/drivers/media/platform/mediatek/vcodec/common/mtk_vcodec_dbgfs.c +++ b/drivers/media/platform/mediatek/vcodec/common/mtk_vcodec_dbgfs.c @@ -96,7 +96,7 @@ static ssize_t mtk_vdec_dbgfs_read(struct file *filp, cha= r __user *ubuf, int total_len =3D 200 * (dbgfs->inst_count =3D=3D 0 ? 1 : dbgfs->inst_cou= nt); int used_len =3D 0, curr_len, ret; bool dbgfs_index[MTK_VDEC_DBGFS_MAX] =3D {0}; - char *buf =3D kmalloc(total_len, GFP_KERNEL); + char *buf __free(kfree) =3D kmalloc(total_len, GFP_KERNEL); =20 if (!buf) return -ENOMEM; @@ -134,7 +134,6 @@ static ssize_t mtk_vdec_dbgfs_read(struct file *filp, c= har __user *ubuf, mutex_unlock(&dbgfs->dbgfs_lock); read_buffer: ret =3D simple_read_from_buffer(ubuf, count, ppos, buf, used_len); - kfree(buf); return ret; } =20 --=20 2.34.1 From nobody Wed Apr 8 03:07:02 2026 Received: from mail-pf1-f173.google.com (mail-pf1-f173.google.com [209.85.210.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BB13B3E8C44 for ; Tue, 10 Mar 2026 20:06:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173187; cv=none; b=m9oAXd+Ppu3SQklpa8Z3K3kquJJ9aRAr5Xq1DuiGtlwBLT75nE4eB88yg7URBuMACrTfo85byTYmNS9vsUMRvRKs6w+rmYxNvZZ76OV8xv+1nwb6Wd38EDd0hdTy9J4xsN7Gok2FRoIGgohlCf/LtEP0/GmmGnpZ7g9LqWwWXSw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173187; c=relaxed/simple; bh=T2a2fDI+lpfSbpuOM83tDaRUsM8l7LwGUzwFcjl1mvQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=RZdE/TJwSP7SvA4jd4yzDDJJUIV5f5uvfiWK1X7tuM7Fl+1Qy3gIUgnFqf9FBOdKOxx//7dF6tmayhUIKro3wgA2Y6kyQaHhAsjlfQVXaU4TA0MgFd4fKG2s5G/Q+gXB7vkpbqu1olmq8oF+qK78rOkvymsy+UdCJP+8ID74p7g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=EY1ZSqZV; arc=none smtp.client-ip=209.85.210.173 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="EY1ZSqZV" Received: by mail-pf1-f173.google.com with SMTP id d2e1a72fcca58-829ac4670c4so2908513b3a.0 for ; Tue, 10 Mar 2026 13:06:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773173186; x=1773777986; 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=7Cqt8CNmVHlobpg7w55yWqsOaWHWtGYPmo0BwNs9xzs=; b=EY1ZSqZVsBCAb8yoTv5Ro9tbbJ85U8wJ7rMaYZN6RFEv44YiQZ8MnnSeQBFiV4jjyL kFMmZf33bS1P+gg5/bs9gzWzsv6soRyNNHZr4yS9ZMpLCZCdzMqtfeC/Hgpy4X3fJUQN kdvCDyTvs8NmC+qUPElxzg3pkNLJ7wlnyARHjCvYaQcL95wb2bQQCeHJQR+V08I6ExGO BoOkC78d3OTqWbFvUjxbI2RlaV1qRHovEfgn7Xv/OdOFbStjruIodWOIypjZKsD65eM+ wRQlxOsUQ56vcGsRLoqNF3S5ku1Q8JfNeqSWwM6e/CIBqWSxC+gpPK3mKIb84vE4/iVR IGag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773173186; x=1773777986; 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=7Cqt8CNmVHlobpg7w55yWqsOaWHWtGYPmo0BwNs9xzs=; b=SQCwZgi0fKdjrG0fWrvXavZgTLfBjHJgX/5M3SIOTHHIcFssuzP2PI7sZve/O0M1Im V5V62i8PMWJ0h3EgjDd1Z9zwm5VsxWdgSB2vmrXpPerH8rmFy03mvJ0u0PNHSjQKNDDn +hUmJ7TctUAxNMakY7eoUibrN3n4GU/zjqde2ov0wmpNO6bvptNaMe21Oafi9NQtpsom MaoLqhMxnmQH+mTBSzoAKjowlNrMZv+swkbwS9F5eXETxNNjI5qdbYNeGBIWEVkCg6lq ES5sJk74kAxmy/xk5OAqC+4TVklM+8/aUnjhMxSOS4Ee3TBUwHRgzkAJZJWObhHnid5F Kdig== X-Forwarded-Encrypted: i=1; AJvYcCUJVn/KnoWI3rV/7RtJe2ltKgAdYx08dcvj66HrVKLF6oToKebljboSg5WWwKn3ELhhNKi6u/DmQdtB1tI=@vger.kernel.org X-Gm-Message-State: AOJu0YxQyGZ69fDY+6gU6geO+iawj8Ff6UbE1l3+36Nw7oBP71AXbc/J cmIwAGA4MB5fhTiqeF3IlRcUTHKfFvZz8VhrKSdIFz1NLzcJ4l2wtlS8 X-Gm-Gg: ATEYQzyp7uPpN4OdZ3kBZzkbuuOfM54tnonbSkZoDbV9T6HGZCTrTw9GSjyjgLQPV/2 lagNQwVJ1jmPIh/1yo6RTMZKkn1gD5EIxKngE5bud9zqE18KibWKBMlpckHY2wCyxYhWfKckKzx etsNWhCnRQ1Boq97cZh4ITYuPA2EVEF4siaCaqejWyunsmcr4SlcK1IhXb+q+/PYzUET3S5fzv+ 3wfy0ze2CkRWCba44+LD7/ud9B667+alHV9M+TohwZY0aiKMHLbvGvpoNOsPFqL2YyCLw+4svmU xMeAZB4NV0VL/5UhiBWtawCTBeLSAbHF4jB7dAISlBUg2wju0ovY/AhSv+qPaawYbIJWkfkmZeP 1BOabAVHEPPiadLCE7ebTbBBJYIeF1+F2bBP+reFPCE2LHOzR19RtsPbilV7NmFUARJgMf7wBIV /y1UfdcXBEYexC6ziJ5iHnqiOx/FvbIaPHrqHDyBGSiA8BKNgV X-Received: by 2002:a05:6a00:13a5:b0:824:374a:1424 with SMTP id d2e1a72fcca58-829f71b3f03mr122810b3a.58.1773173186006; Tue, 10 Mar 2026 13:06:26 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-829f6dc2d0asm101660b3a.13.2026.03.10.13.06.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Mar 2026 13:06:25 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org, m.tretter@pengutronix.de, mchehab@kernel.org, p.zabel@pengutronix.de, tiffany.lin@mediatek.com, andrew-ct.chen@mediatek.com, yunfei.dong@mediatek.com, matthias.bgg@gmail.com, angelogioacchino.delregno@collabora.com, johan@kernel.org, elder@kernel.org, gregkh@linuxfoundation.org, pure.logic@nexus-software.ie Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, kernel@pengutronix.de, kees@kernel.org, nabijaczleweli@nabijaczleweli.xyz, marcelo.schmitt1@gmail.com, maudspierings@gocontroll.com, hverkuil+cisco@kernel.org, ribalda@chromium.org, straube.linux@gmail.com, dan.carpenter@linaro.org, lukagejak5@gmail.com, ethantidmore06@gmail.com, samasth.norway.ananda@oracle.com, karanja99erick@gmail.com, s9430939@naver.com, tglx@kernel.org, mingo@kernel.org, sun.jian.kdev@gmail.com, weibu@redadmin.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, greybus-dev@lists.linaro.org, linux-staging@lists.linux.dev, sanjayembeddedse@gmail.com, skhan@linuxfoundation.org Subject: [PATCH 5/7] media: chips-media: coda: simplify cleanup using __free Date: Wed, 11 Mar 2026 01:35:11 +0530 Message-Id: <20260310200513.2162018-6-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260310200513.2162018-1-sanjayembedded@gmail.com> References: <20260310200513.2162018-1-sanjayembedded@gmail.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 Content-Type: text/plain; charset="utf-8" From: Sanjay Chitroda Replace manual cleanup logic with __free attribute from cleanup.h. This removes explicit kfree() calls and simplifies the error handling paths. No functional change intended for kmalloc()/kzalloc_obj(). Signed-off-by: Sanjay Chitroda --- .../platform/chips-media/coda/coda-bit.c | 4 +- .../platform/chips-media/coda/coda-jpeg.c | 39 +++++++------------ 2 files changed, 16 insertions(+), 27 deletions(-) diff --git a/drivers/media/platform/chips-media/coda/coda-bit.c b/drivers/m= edia/platform/chips-media/coda/coda-bit.c index b0559303c40f..958e245d0698 100644 --- a/drivers/media/platform/chips-media/coda/coda-bit.c +++ b/drivers/media/platform/chips-media/coda/coda-bit.c @@ -183,19 +183,17 @@ static void coda_kfifo_sync_to_device_write(struct co= da_ctx *ctx) =20 static int coda_h264_bitstream_pad(struct coda_ctx *ctx, u32 size) { - unsigned char *buf; u32 n; =20 if (size < 6) size =3D 6; =20 - buf =3D kmalloc(size, GFP_KERNEL); + unsigned char *buf __free(kfree) =3D kmalloc(size, GFP_KERNEL); if (!buf) return -ENOMEM; =20 coda_h264_filler_nal(size, buf); n =3D kfifo_in(&ctx->bitstream_fifo, buf, size); - kfree(buf); =20 return (n < size) ? -ENOSPC : 0; } diff --git a/drivers/media/platform/chips-media/coda/coda-jpeg.c b/drivers/= media/platform/chips-media/coda/coda-jpeg.c index 835225383aa1..11f2800014e5 100644 --- a/drivers/media/platform/chips-media/coda/coda-jpeg.c +++ b/drivers/media/platform/chips-media/coda/coda-jpeg.c @@ -584,16 +584,15 @@ static int coda9_jpeg_gen_enc_huff_tab(struct coda_ct= x *ctx, int tab_num, { int i, j, k, lastk, si, code, maxsymbol; const u8 *bits, *huffval; - struct { - int size[256]; - int code[256]; - } *huff; static const unsigned char *huff_tabs[4] =3D { luma_dc, luma_ac, chroma_dc, chroma_ac, }; int ret =3D -EINVAL; =20 - huff =3D kzalloc_obj(*huff); + struct { + int size[256]; + int code[256]; + } *huff __free(kfree) =3D kzalloc_obj(*huff); if (!huff) return -ENOMEM; =20 @@ -607,7 +606,7 @@ static int coda9_jpeg_gen_enc_huff_tab(struct coda_ctx = *ctx, int tab_num, for (i =3D 1; i <=3D 16; i++) { j =3D bits[i - 1]; if (k + j > maxsymbol) - goto out; + return ret; while (j--) huff->size[k++] =3D i; } @@ -623,7 +622,7 @@ static int coda9_jpeg_gen_enc_huff_tab(struct coda_ctx = *ctx, int tab_num, code++; } if (code >=3D (1 << si)) - goto out; + return ret; code <<=3D 1; si++; } @@ -632,15 +631,12 @@ static int coda9_jpeg_gen_enc_huff_tab(struct coda_ct= x *ctx, int tab_num, for (k =3D 0; k < lastk; k++) { i =3D huffval[k]; if (i >=3D maxsymbol || ehufsi[i]) - goto out; + return ret; ehufco[i] =3D huff->code[k]; ehufsi[i] =3D huff->size[k]; } =20 - ret =3D 0; -out: - kfree(huff); - return ret; + return 0; } =20 #define DC_TABLE_INDEX0 0 @@ -715,15 +711,14 @@ static int coda9_jpeg_gen_dec_huff_tab(struct coda_ct= x *ctx, int tab_num) =20 static int coda9_jpeg_load_huff_tab(struct coda_ctx *ctx) { - struct { - int size[4][256]; - int code[4][256]; - } *huff; u32 *huff_data; int i, j; int ret; =20 - huff =3D kzalloc_obj(*huff); + struct { + int size[4][256]; + int code[4][256]; + } *huff __free(kfree) =3D kzalloc_obj(*huff); if (!huff) return -ENOMEM; =20 @@ -732,7 +727,7 @@ static int coda9_jpeg_load_huff_tab(struct coda_ctx *ct= x) ret =3D coda9_jpeg_gen_enc_huff_tab(ctx, i, huff->size[i], huff->code[i]); if (ret) - goto out; + return ret; } =20 if (!ctx->params.jpeg_huff_data) { @@ -740,8 +735,7 @@ static int coda9_jpeg_load_huff_tab(struct coda_ctx *ct= x) kzalloc(sizeof(u32) * CODA9_JPEG_ENC_HUFF_DATA_SIZE, GFP_KERNEL); if (!ctx->params.jpeg_huff_data) { - ret =3D -ENOMEM; - goto out; + return -ENOMEM; } } huff_data =3D ctx->params.jpeg_huff_data; @@ -765,10 +759,7 @@ static int coda9_jpeg_load_huff_tab(struct coda_ctx *c= tx) } } =20 - ret =3D 0; -out: - kfree(huff); - return ret; + return 0; } =20 static void coda9_jpeg_write_huff_tab(struct coda_ctx *ctx) --=20 2.34.1 From nobody Wed Apr 8 03:07:02 2026 Received: from mail-pf1-f172.google.com (mail-pf1-f172.google.com [209.85.210.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 559B23E8C66 for ; Tue, 10 Mar 2026 20:06:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.172 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173199; cv=none; b=IO7bud6IDF1cCrMfyq6funG/SDSBoZ7vkoDPGR/g/HZcV+qZJ8eZWs+9XYNfHvgyUabfm7rMzyYXXVu+Jo+4HhnKyehfUZz0zOuWnTT0Y4h7hBEysjtclKCpP0mFMUkYGbIOj8rYxuZ5h8FuIeMuD/yBPiaKa3kL3CEp1/fciU8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173199; c=relaxed/simple; bh=/7JruJpa7ywq82KD85xOZTvhatrgKy0BagtYB7uZ79g=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version:Content-Type; b=eJ8tU3Jgy6CRkUjyvOxhv9hugMYJUy8gfNyoLAcx9pYeBNlU6AN6BzvDo4/JXiYlfSbw5bnmN3gR66NDYN3prqQjpJpccBsbcExRtlYtBneCmVvXxTgrNQ+YcHFkalCotarW3jyY2qVpeKumNaXuAQ0H9c1U0d4ffweTgMVpBeY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=naTXuOfZ; arc=none smtp.client-ip=209.85.210.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="naTXuOfZ" Received: by mail-pf1-f172.google.com with SMTP id d2e1a72fcca58-8296dabef74so6714147b3a.1 for ; Tue, 10 Mar 2026 13:06:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773173198; x=1773777998; 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=qPe88jYT4Koj6mAx2acbFPR53xRU3O301fVKhXPrOjk=; b=naTXuOfZDLAAIoPTkTaHvY+bAxgT0YHcZI5xzbV0WGkhqrAtqzzuoKj5Db/gNeChYX x1wivouGjkattpZz6PoJEKg7kmF1QXbG1m3I8HktZ9NjJSyFlH5qmGScAwNiy2//XhVc j6x+kOKjhv278n7eOQ42Cofn4hCkDCMFYF4qm6dT8KOzYpfg/jfPHixIZSuJxz2kCiYM YszjZ7soDEiXutKyPBeeuVBK1uvNG61U2YmXmttSP/dY13JiFn9zzbLsFRyog3NiC9vm m4mwzmvC8mlD67OCBIaBiQGdxBz5Qr2OmhhtUG353ULbTSRDyd9P0Jx3G0kcXLegXQd6 zOlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773173198; x=1773777998; 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=qPe88jYT4Koj6mAx2acbFPR53xRU3O301fVKhXPrOjk=; b=MqCPALBw1hUIiGOcQbnE1bt3/gGXj6e2Y7UKmEcZE/9g3Y2acAO8ZKlYpNZpVbNDhM l7Q6NKzy7watJNk4/LqLEIhIxyVLANdhq/I8cOCsVNTs+JT4dWiGESRKuOrOOyCz4REa Fp7EqDvEQaPQI/YQH0iYjJ7rHYgFO5wda7F06LcdNGiDjiBagjcWXe6EfyThb/MxrAWW ONA1H2HrMTVV7mpqcb/6oQsAjG/vMc2RVtlkU2IcvbYvsoBavaIFJOYkR9Mo+gjUR9ky MI9mTdr5yKmtBsZWUpsiAHFFYizIYUw9O88chOo/5pwLfgX4M39MIMp66uQWUdvq2IbT +Alw== X-Forwarded-Encrypted: i=1; AJvYcCWg3JXoaTcIrCVYfuGc2pJfw1VFmC6rCE2HxE1Kx+pxA+6OjO14PbYtyreDEJWam1S/Kcse8PpZV8sPuzo=@vger.kernel.org X-Gm-Message-State: AOJu0YxtGDDW4tJmmbtW+dUzMNtNRBowCuGDDzN7bhd58CyUileQeFae dZa0lRdMZ6KwrxQ9s+I1CSXmXRM6+4JT5zsIdP5xmMgyo/H7/rqWV9tR X-Gm-Gg: ATEYQzxwcqBuAleddbqnGSEP0iTsTLSmKtTjAmvEexPbaIfmwjFLQudq9m3vkL8G6MI /kB2BK5yM+2kVzEn0akl6DAzgpExh5CdjMXpqY51+2WP5BqPAnH/Pyp/UQ+QyMPaunDBEnLt5+0 H+wlVphaKbwXOM/XswJpiLdY/oJgONuXgDLso0FWqCWSBQ+fFDxzHz0X8hzcLGd1NolcoAIseVx DaVLad0ixF0tTF1i1+vcLEMODutad5rGIyRyNTVbYNOeTKzPY5dXtmops1OspOe+aD4nk0kj4sB htqpRlefNRtKAzEWZ11qdp9/o0aviHKYYGhCd1+h9dDE9s2MaR8JMFGGA9x0brgKWR6A1NwBLVx 4N5/nfgo+GraJ9uustR2dHqXKQJLU6d8KFS9236XQTmkgxS/p1EoAPGMwexBS5xhUh7TVCXrLN2 qfTOgKM2AsceYhMFI32nwtULLZeu4FVMa5bHS28g9ch2GWUbPe X-Received: by 2002:a05:6a00:2d8f:b0:829:af4a:5ebc with SMTP id d2e1a72fcca58-829f6eed76dmr146730b3a.7.1773173197615; Tue, 10 Mar 2026 13:06:37 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-829f6dc2d0asm101660b3a.13.2026.03.10.13.06.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Mar 2026 13:06:37 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org, m.tretter@pengutronix.de, mchehab@kernel.org, p.zabel@pengutronix.de, tiffany.lin@mediatek.com, andrew-ct.chen@mediatek.com, yunfei.dong@mediatek.com, matthias.bgg@gmail.com, angelogioacchino.delregno@collabora.com, johan@kernel.org, elder@kernel.org, gregkh@linuxfoundation.org, pure.logic@nexus-software.ie Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, kernel@pengutronix.de, kees@kernel.org, nabijaczleweli@nabijaczleweli.xyz, marcelo.schmitt1@gmail.com, maudspierings@gocontroll.com, hverkuil+cisco@kernel.org, ribalda@chromium.org, straube.linux@gmail.com, dan.carpenter@linaro.org, lukagejak5@gmail.com, ethantidmore06@gmail.com, samasth.norway.ananda@oracle.com, karanja99erick@gmail.com, s9430939@naver.com, tglx@kernel.org, mingo@kernel.org, sun.jian.kdev@gmail.com, weibu@redadmin.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, greybus-dev@lists.linaro.org, linux-staging@lists.linux.dev, sanjayembeddedse@gmail.com, skhan@linuxfoundation.org Subject: [PATCH 6/7] media: allegro: simplify cleanup using __free Date: Wed, 11 Mar 2026 01:35:12 +0530 Message-Id: <20260310200513.2162018-7-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260310200513.2162018-1-sanjayembedded@gmail.com> References: <20260310200513.2162018-1-sanjayembedded@gmail.com> 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="utf-8" Content-Transfer-Encoding: quoted-printable From: Sanjay Chitroda Replace manual cleanup logic with __free attribute from cleanup.h. This removes explicit kfree() calls and simplifies the error handling paths. Remove unused variable e.g. =E2=80=98size=E2=80=99 after usage of cleanup A= PI. No functional change intended for kernel memory allocation. Signed-off-by: Sanjay Chitroda --- .../media/platform/allegro-dvt/allegro-core.c | 95 +++++-------------- 1 file changed, 24 insertions(+), 71 deletions(-) diff --git a/drivers/media/platform/allegro-dvt/allegro-core.c b/drivers/me= dia/platform/allegro-dvt/allegro-core.c index eac3bc9af990..197a368fcb57 100644 --- a/drivers/media/platform/allegro-dvt/allegro-core.c +++ b/drivers/media/platform/allegro-dvt/allegro-core.c @@ -934,25 +934,20 @@ static int allegro_mbox_send(struct allegro_mbox *mbo= x, void *msg) { struct allegro_dev *dev =3D mbox->dev; ssize_t size; - int err; - u32 *tmp; + int err =3D 0; =20 - tmp =3D kzalloc(mbox->size, GFP_KERNEL); - if (!tmp) { - err =3D -ENOMEM; - goto out; - } + u32 *tmp __free(kfree) =3D kzalloc(mbox->size, GFP_KERNEL); + if (!tmp) + return -ENOMEM; =20 size =3D allegro_encode_mail(tmp, msg); =20 err =3D allegro_mbox_write(mbox, tmp, size); - kfree(tmp); if (err) - goto out; + return err; =20 allegro_mcu_interrupt(dev); =20 -out: return err; } =20 @@ -963,36 +958,29 @@ static int allegro_mbox_send(struct allegro_mbox *mbo= x, void *msg) static int allegro_mbox_notify(struct allegro_mbox *mbox) { struct allegro_dev *dev =3D mbox->dev; - union mcu_msg_response *msg; - u32 *tmp; - int err; + int err =3D 0; =20 - msg =3D kmalloc_obj(*msg); + union mcu_msg_response *msg __free(kfree) =3D kmalloc_obj(*msg); if (!msg) return -ENOMEM; =20 msg->header.version =3D dev->fw_info->mailbox_version; =20 - tmp =3D kmalloc(mbox->size, GFP_KERNEL); + u32 *tmp __free(kfree) =3D kmalloc(mbox->size, GFP_KERNEL); if (!tmp) { - err =3D -ENOMEM; - goto out; + return -ENOMEM; } =20 err =3D allegro_mbox_read(mbox, tmp, mbox->size); if (err < 0) - goto out; + return err; =20 err =3D allegro_decode_mail(msg, tmp); if (err) - goto out; + return err; =20 allegro_handle_message(dev, msg); =20 -out: - kfree(tmp); - kfree(msg); - return err; } =20 @@ -1480,13 +1468,11 @@ static int allegro_mcu_push_buffer_internal(struct = allegro_channel *channel, enum mcu_msg_type type) { struct allegro_dev *dev =3D channel->dev; - struct mcu_msg_push_buffers_internal *msg; struct mcu_msg_push_buffers_internal_buffer *buffer; unsigned int num_buffers =3D 0; size_t size; struct allegro_buffer *al_buffer; struct list_head *list; - int err; =20 switch (type) { case MCU_MSG_TYPE_PUSH_BUFFER_REFERENCE: @@ -1501,9 +1487,9 @@ static int allegro_mcu_push_buffer_internal(struct al= legro_channel *channel, =20 list_for_each_entry(al_buffer, list, head) num_buffers++; - size =3D struct_size(msg, buffer, num_buffers); + size =3D struct_size((struct mcu_msg_push_buffers_internal *)NULL, buffer= , num_buffers); =20 - msg =3D kmalloc(size, GFP_KERNEL); + struct mcu_msg_push_buffers_internal *msg __free(kfree) =3D kmalloc(size,= GFP_KERNEL); if (!msg) return -ENOMEM; =20 @@ -1521,10 +1507,7 @@ static int allegro_mcu_push_buffer_internal(struct a= llegro_channel *channel, buffer++; } =20 - err =3D allegro_mbox_send(dev->mbox_command, msg); - - kfree(msg); - return err; + return allegro_mbox_send(dev->mbox_command, msg); } =20 static int allegro_mcu_push_buffer_intermediate(struct allegro_channel *ch= annel) @@ -1621,8 +1604,6 @@ static ssize_t allegro_h264_write_sps(struct allegro_= channel *channel, void *dest, size_t n) { struct allegro_dev *dev =3D channel->dev; - struct nal_h264_sps *sps; - ssize_t size; unsigned int size_mb =3D SIZE_MACROBLOCK; /* Calculation of crop units in Rec. ITU-T H.264 (04/2017) p. 76 */ unsigned int crop_unit_x =3D 2; @@ -1632,7 +1613,7 @@ static ssize_t allegro_h264_write_sps(struct allegro_= channel *channel, unsigned int cpb_size; unsigned int cpb_size_scale; =20 - sps =3D kzalloc_obj(*sps); + struct nal_h264_sps *sps __free(kfree) =3D kzalloc_obj(*sps); if (!sps) return -ENOMEM; =20 @@ -1715,21 +1696,15 @@ static ssize_t allegro_h264_write_sps(struct allegr= o_channel *channel, sps->vui.pic_struct_present_flag =3D 1; sps->vui.bitstream_restriction_flag =3D 0; =20 - size =3D nal_h264_write_sps(&dev->plat_dev->dev, dest, n, sps); - - kfree(sps); - - return size; + return nal_h264_write_sps(&dev->plat_dev->dev, dest, n, sps); } =20 static ssize_t allegro_h264_write_pps(struct allegro_channel *channel, void *dest, size_t n) { struct allegro_dev *dev =3D channel->dev; - struct nal_h264_pps *pps; - ssize_t size; =20 - pps =3D kzalloc_obj(*pps); + struct nal_h264_pps *pps __free(kfree) =3D kzalloc_obj(*pps); if (!pps) return -ENOMEM; =20 @@ -1752,11 +1727,7 @@ static ssize_t allegro_h264_write_pps(struct allegro= _channel *channel, pps->pic_scaling_matrix_present_flag =3D 0; pps->second_chroma_qp_index_offset =3D 0; =20 - size =3D nal_h264_write_pps(&dev->plat_dev->dev, dest, n, pps); - - kfree(pps); - - return size; + return nal_h264_write_pps(&dev->plat_dev->dev, dest, n, pps); } =20 static void allegro_channel_eos_event(struct allegro_channel *channel) @@ -1772,15 +1743,13 @@ static ssize_t allegro_hevc_write_vps(struct allegr= o_channel *channel, void *dest, size_t n) { struct allegro_dev *dev =3D channel->dev; - struct nal_hevc_vps *vps; struct nal_hevc_profile_tier_level *ptl; - ssize_t size; unsigned int num_ref_frames =3D channel->num_ref_idx_l0; s32 profile =3D v4l2_ctrl_g_ctrl(channel->mpeg_video_hevc_profile); s32 level =3D v4l2_ctrl_g_ctrl(channel->mpeg_video_hevc_level); s32 tier =3D v4l2_ctrl_g_ctrl(channel->mpeg_video_hevc_tier); =20 - vps =3D kzalloc_obj(*vps); + struct nal_hevc_vps *vps __free(kfree) =3D kzalloc_obj(*vps); if (!vps) return -ENOMEM; =20 @@ -1800,29 +1769,23 @@ static ssize_t allegro_hevc_write_vps(struct allegr= o_channel *channel, vps->max_dec_pic_buffering_minus1[0] =3D num_ref_frames; vps->max_num_reorder_pics[0] =3D num_ref_frames; =20 - size =3D nal_hevc_write_vps(&dev->plat_dev->dev, dest, n, vps); - - kfree(vps); - - return size; + return nal_hevc_write_vps(&dev->plat_dev->dev, dest, n, vps); } =20 static ssize_t allegro_hevc_write_sps(struct allegro_channel *channel, void *dest, size_t n) { struct allegro_dev *dev =3D channel->dev; - struct nal_hevc_sps *sps; struct nal_hevc_profile_tier_level *ptl; struct nal_hevc_vui_parameters *vui; struct nal_hevc_hrd_parameters *hrd; - ssize_t size; unsigned int cpb_size; unsigned int num_ref_frames =3D channel->num_ref_idx_l0; s32 profile =3D v4l2_ctrl_g_ctrl(channel->mpeg_video_hevc_profile); s32 level =3D v4l2_ctrl_g_ctrl(channel->mpeg_video_hevc_level); s32 tier =3D v4l2_ctrl_g_ctrl(channel->mpeg_video_hevc_tier); =20 - sps =3D kzalloc_obj(*sps); + struct nal_hevc_sps *sps __free(kfree) =3D kzalloc_obj(*sps); if (!sps) return -ENOMEM; =20 @@ -1913,11 +1876,7 @@ static ssize_t allegro_hevc_write_sps(struct allegro= _channel *channel, =20 hrd->vcl_hrd[0].cbr_flag[0] =3D !v4l2_ctrl_g_ctrl(channel->mpeg_video_fra= me_rc_enable); =20 - size =3D nal_hevc_write_sps(&dev->plat_dev->dev, dest, n, sps); - - kfree(sps); - - return size; + return nal_hevc_write_sps(&dev->plat_dev->dev, dest, n, sps); } =20 static ssize_t allegro_hevc_write_pps(struct allegro_channel *channel, @@ -1925,11 +1884,9 @@ static ssize_t allegro_hevc_write_pps(struct allegro= _channel *channel, void *dest, size_t n) { struct allegro_dev *dev =3D channel->dev; - struct nal_hevc_pps *pps; - ssize_t size; int i; =20 - pps =3D kzalloc_obj(*pps); + struct nal_hevc_pps *pps =3D kzalloc_obj(*pps); if (!pps) return -ENOMEM; =20 @@ -1960,11 +1917,7 @@ static ssize_t allegro_hevc_write_pps(struct allegro= _channel *channel, =20 pps->lists_modification_present_flag =3D channel->enable_reordering; =20 - size =3D nal_hevc_write_pps(&dev->plat_dev->dev, dest, n, pps); - - kfree(pps); - - return size; + return nal_hevc_write_pps(&dev->plat_dev->dev, dest, n, pps); } =20 static u64 allegro_put_buffer(struct allegro_channel *channel, --=20 2.34.1 From nobody Wed Apr 8 03:07:02 2026 Received: from mail-pf1-f177.google.com (mail-pf1-f177.google.com [209.85.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0126A3E8C5E for ; Tue, 10 Mar 2026 20:06:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.177 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173212; cv=none; b=B5HmhNd1AkFq3mxNrkO1NYSqHgcpNjC879q5oH3xwhFGmr2p20q/nBjZMN3Ul9B95EcwF7IuCbDgP+BI8JOkKsCjZ898KGbXr3ee5WwjGyy1b2PP/T3YTxmNZ8Kil+AOHg4vmIuJ10bZ7rSJ2barOhKvAurFPYXZ7bk2+2pD1hM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773173212; c=relaxed/simple; bh=BAEAEao8zGcfEPk3ro9fqvnx7VdR1iceehL4mhJX3gE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=pOZoKsqqudzdWDuo7OD4feOjKAUcnitM0Z2+GJBewyublVvG4ArvV3KiUAyMdoPuB/r38T0JYsXixuWv9sV4InB2n1SzHYnckxqKgjOCkBDBhVYmUsswPXidkY1OJLyDGnIQdZIa0WGmWRfIpDQsM9seg+W44g8p1yW/0unvQIk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=EigOO2GA; arc=none smtp.client-ip=209.85.210.177 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="EigOO2GA" Received: by mail-pf1-f177.google.com with SMTP id d2e1a72fcca58-823c56765fdso6679892b3a.1 for ; Tue, 10 Mar 2026 13:06:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773173209; x=1773778009; 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=maRFdwFBItYsUxmd+9t8qBnRnOAkqFEhAXgbmQcZeFE=; b=EigOO2GAx+kVSZimumtEPDu4LKmq2DjuZInKvZEiWrNgyNxGtxYewUQpkhw5N857iF kRClGOzhUZJYqu3f0tJINcNxLx9pYBrOBIywdBeslV0fbKsAE2pABBtcN/JVV14IHsk5 SE0lgBA1e9Ewj8hIzppr77j+AgdyRjkJYcEhRfhpTU3MMaNF11xTUquCaKk4oEWjb8Ik AKQ/Et6KMDWVWdM/7qfJA3gYRDCIsiDlg/WsWf3qMhMtrjwqsUKAbQPYfSOEYewfOdeO odJ3zuMoRbdENb0NlUBLZIhIngOPnnN/6Yu3tTL0b4CZsa+Iu+AazNCXAtBskxUFbvnj 3lGA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773173209; x=1773778009; 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=maRFdwFBItYsUxmd+9t8qBnRnOAkqFEhAXgbmQcZeFE=; b=AZPr9f3Ig6HaEDcJptKC/XSYIimrQDu0YN3yYHAf8Y8lRvhwhwnN/B24CAwkXQ6bR9 IFUX/mec/b2ubVI/byGh2POuNgPBQ+AIRscOen+KrX/cRK1bjgVBXnv9BN3eemcwZPwz 65MqcE2Jg/Ah7kWJtnoclwTfZJJBKHHWbCtYX4qqWAUxEE2zr0xwuDxjH+a+K7ersoRi zLg3V66AbQUNfF1yA6mJ4rMMHLcgm2hJshCx1deJmVAbaK2gpqwOy5/D0VuCLGHVMpCv hEJHIQXutPtXuCxZq2BMh34lfRiRpyTfLj5AX71BfZFAhDmuoOOqjd30ADCWjDTKG/yy BaKg== X-Forwarded-Encrypted: i=1; AJvYcCWgT3TGOkw62PMC9YE0mfqKma0Zt4TlXGVTKkOTWn22bncQkERfTwnqusjAtRpWtMYjhh+O53lggEzIaEM=@vger.kernel.org X-Gm-Message-State: AOJu0YziEVefTcCTbDDwtqm9vztxXkqMkD5U8i3F0t7YPuBYEgbN/t8q ch1GKZ8gehsxCCN7JjzVD+jbK+iQgpYUAkex+kbnY52VzPciFBW0OCrq X-Gm-Gg: ATEYQzzcxxCKGvfQ0hC+oCZK42Qi5irEs7HhmAZcPF40Ea65fCcJgS3tw5FNqhacDij ZLYyIU/5QyH+cfjX+ttghfG0LuluYNGVefIrbTsK6Edjl1vn+HEck+x1FC3hHZrnDgv0RMwIrnd QCYNqITsheDM4F7s2aeUq9fMpUexGWhiQFT/bioGmCDhcrvjYdi6xrGiC4Hl+aN2R4IetstAH6R SUXkk7xrXTc9xw3pzTo0NDheDoCfL+2otwpm3D3jXWnMN7aGzj9kzSBdArXQ8jsCfj9ciBPo8y5 PyvF614O2VnnyDE3yF2MHL0Czn8H22/30ANEpWRJj5VNCmCBwDz3V5+CXXLON5kXYRXZq/GIOcN srVGpxeE2lWGwVdDAOvscW5sUkf1QFNnoB00RzG8bDT3rbxZ9duPvHdT5aXTT4AXrQ6DDTUyszD ddLWqW5nN5WL5dYcrQ5BmSH54/Yjw5GGeFEhHMFqCpx4V4ahWe X-Received: by 2002:a05:6a00:ac0f:b0:829:7e6d:cf1f with SMTP id d2e1a72fcca58-829f721be36mr107593b3a.51.1773173209251; Tue, 10 Mar 2026 13:06:49 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-829f6dc2d0asm101660b3a.13.2026.03.10.13.06.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Mar 2026 13:06:48 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org, m.tretter@pengutronix.de, mchehab@kernel.org, p.zabel@pengutronix.de, tiffany.lin@mediatek.com, andrew-ct.chen@mediatek.com, yunfei.dong@mediatek.com, matthias.bgg@gmail.com, angelogioacchino.delregno@collabora.com, johan@kernel.org, elder@kernel.org, gregkh@linuxfoundation.org, pure.logic@nexus-software.ie Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org, kernel@pengutronix.de, kees@kernel.org, nabijaczleweli@nabijaczleweli.xyz, marcelo.schmitt1@gmail.com, maudspierings@gocontroll.com, hverkuil+cisco@kernel.org, ribalda@chromium.org, straube.linux@gmail.com, dan.carpenter@linaro.org, lukagejak5@gmail.com, ethantidmore06@gmail.com, samasth.norway.ananda@oracle.com, karanja99erick@gmail.com, s9430939@naver.com, tglx@kernel.org, mingo@kernel.org, sun.jian.kdev@gmail.com, weibu@redadmin.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, greybus-dev@lists.linaro.org, linux-staging@lists.linux.dev, sanjayembeddedse@gmail.com, skhan@linuxfoundation.org Subject: [PATCH 7/7] staging: rtl8723bs: simplify cleanup using __free Date: Wed, 11 Mar 2026 01:35:13 +0530 Message-Id: <20260310200513.2162018-8-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260310200513.2162018-1-sanjayembedded@gmail.com> References: <20260310200513.2162018-1-sanjayembedded@gmail.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 Content-Type: text/plain; charset="utf-8" From: Sanjay Chitroda Replace manual cleanup logic with __free attribute from cleanup.h. This removes explicit kfree() calls and simplifies the error handling paths. No functional change intended for kmalloc(). Signed-off-by: Sanjay Chitroda --- .../staging/rtl8723bs/hal/rtl8723b_hal_init.c | 13 ++----- drivers/staging/rtl8723bs/hal/sdio_ops.c | 37 ++++--------------- 2 files changed, 11 insertions(+), 39 deletions(-) diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c b/drivers/st= aging/rtl8723bs/hal/rtl8723b_hal_init.c index 8d259820f103..2badf7d1aec4 100644 --- a/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +++ b/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c @@ -627,7 +627,6 @@ static void hal_ReadEFuse_WiFi( u8 *pbuf ) { - u8 *efuseTbl =3D NULL; u16 eFuse_Addr =3D 0; u8 offset, wden; u8 efuseHeader, efuseExtHdr, efuseData; @@ -640,7 +639,7 @@ static void hal_ReadEFuse_WiFi( if ((_offset + _size_byte) > EFUSE_MAX_MAP_LEN) return; =20 - efuseTbl =3D kmalloc(EFUSE_MAX_MAP_LEN, GFP_ATOMIC); + u8 *efuseTbl __free(kfree) =3D kmalloc(EFUSE_MAX_MAP_LEN, GFP_ATOMIC); if (!efuseTbl) return; =20 @@ -702,8 +701,6 @@ static void hal_ReadEFuse_WiFi( =20 rtw_hal_set_hwreg(padapter, HW_VAR_EFUSE_BYTES, (u8 *)&used); rtw_hal_set_hwreg(padapter, HW_VAR_EFUSE_USAGE, (u8 *)&efuse_usage); - - kfree(efuseTbl); } =20 static void hal_ReadEFuse_BT( @@ -713,7 +710,6 @@ static void hal_ReadEFuse_BT( u8 *pbuf ) { - u8 *efuseTbl; u8 bank; u16 eFuse_Addr; u8 efuseHeader, efuseExtHdr, efuseData; @@ -728,7 +724,7 @@ static void hal_ReadEFuse_BT( if ((_offset + _size_byte) > EFUSE_BT_MAP_LEN) return; =20 - efuseTbl =3D kmalloc(EFUSE_BT_MAP_LEN, GFP_ATOMIC); + u8 *efuseTbl __free(kfree) =3D kmalloc(EFUSE_BT_MAP_LEN, GFP_ATOMIC); if (!efuseTbl) return; =20 @@ -739,7 +735,7 @@ static void hal_ReadEFuse_BT( =20 for (bank =3D 1; bank < 3; bank++) { /* 8723b Max bake 0~2 */ if (hal_EfuseSwitchToBank(padapter, bank) =3D=3D false) - goto exit; + return; =20 eFuse_Addr =3D 0; =20 @@ -804,9 +800,6 @@ static void hal_ReadEFuse_BT( =20 rtw_hal_set_hwreg(padapter, HW_VAR_EFUSE_BT_BYTES, (u8 *)&used); rtw_hal_set_hwreg(padapter, HW_VAR_EFUSE_BT_USAGE, (u8 *)&efuse_usage); - -exit: - kfree(efuseTbl); } =20 void Hal_ReadEFuse( diff --git a/drivers/staging/rtl8723bs/hal/sdio_ops.c b/drivers/staging/rtl= 8723bs/hal/sdio_ops.c index c9cb20c61a2b..303139a75551 100644 --- a/drivers/staging/rtl8723bs/hal/sdio_ops.c +++ b/drivers/staging/rtl8723bs/hal/sdio_ops.c @@ -179,9 +179,7 @@ static u32 sdio_read32(struct intf_hdl *intfhdl, u32 ad= dr) if (shift =3D=3D 0) { val =3D sd_read32(intfhdl, ftaddr, NULL); } else { - u8 *tmpbuf; - - tmpbuf =3D kmalloc(8, GFP_ATOMIC); + u8 *tmpbuf __free(kfree) =3D kmalloc(8, GFP_ATOMIC); if (!tmpbuf) return SDIO_ERR_VAL32; =20 @@ -189,8 +187,6 @@ static u32 sdio_read32(struct intf_hdl *intfhdl, u32 ad= dr) sd_read(intfhdl, ftaddr, 8, tmpbuf); memcpy(&le_tmp, tmpbuf + shift, 4); val =3D le32_to_cpu(le_tmp); - - kfree(tmpbuf); } return val; } @@ -223,19 +219,17 @@ static s32 sdio_readN(struct intf_hdl *intfhdl, u32 a= ddr, u32 cnt, u8 *buf) if (shift =3D=3D 0) { err =3D sd_read(intfhdl, ftaddr, cnt, buf); } else { - u8 *tmpbuf; u32 n; =20 ftaddr &=3D ~(u16)0x3; n =3D cnt + shift; - tmpbuf =3D kmalloc(n, GFP_ATOMIC); + u8 *tmpbuf __free(kfree) =3D kmalloc(n, GFP_ATOMIC); if (!tmpbuf) return -ENOMEM; =20 err =3D sd_read(intfhdl, ftaddr, n, tmpbuf); if (!err) memcpy(buf, tmpbuf + shift, cnt); - kfree(tmpbuf); } return err; } @@ -326,22 +320,18 @@ static s32 sdio_writeN(struct intf_hdl *intfhdl, u32 = addr, u32 cnt, u8 *buf) if (shift =3D=3D 0) { err =3D sd_write(intfhdl, ftaddr, cnt, buf); } else { - u8 *tmpbuf; u32 n; =20 ftaddr &=3D ~(u16)0x3; n =3D cnt + shift; - tmpbuf =3D kmalloc(n, GFP_ATOMIC); + u8 *tmpbuf __free(kfree) =3D kmalloc(n, GFP_ATOMIC); if (!tmpbuf) return -ENOMEM; err =3D sd_read(intfhdl, ftaddr, 4, tmpbuf); - if (err) { - kfree(tmpbuf); + if (err) return err; - } memcpy(tmpbuf + shift, buf, cnt); err =3D sd_write(intfhdl, ftaddr, n, tmpbuf); - kfree(tmpbuf); } return err; } @@ -491,7 +481,6 @@ static s32 _sdio_local_read( struct intf_hdl *intfhdl; u8 mac_pwr_ctrl_on; s32 err; - u8 *tmpbuf; u32 n; =20 intfhdl =3D &adapter->iopriv.intf; @@ -503,7 +492,7 @@ static s32 _sdio_local_read( return _sd_cmd52_read(intfhdl, addr, cnt, buf); =20 n =3D round_up(cnt, 4); - tmpbuf =3D kmalloc(n, GFP_ATOMIC); + u8 *tmpbuf __free(kfree) =3D kmalloc(n, GFP_ATOMIC); if (!tmpbuf) return -ENOMEM; =20 @@ -511,8 +500,6 @@ static s32 _sdio_local_read( if (!err) memcpy(buf, tmpbuf, cnt); =20 - kfree(tmpbuf); - return err; } =20 @@ -529,7 +516,6 @@ s32 sdio_local_read( struct intf_hdl *intfhdl; u8 mac_pwr_ctrl_on; s32 err; - u8 *tmpbuf; u32 n; =20 intfhdl =3D &adapter->iopriv.intf; @@ -544,7 +530,7 @@ s32 sdio_local_read( return sd_cmd52_read(intfhdl, addr, cnt, buf); =20 n =3D round_up(cnt, 4); - tmpbuf =3D kmalloc(n, GFP_ATOMIC); + u8 *tmpbuf __free(kfree) =3D kmalloc(n, GFP_ATOMIC); if (!tmpbuf) return -ENOMEM; =20 @@ -552,8 +538,6 @@ s32 sdio_local_read( if (!err) memcpy(buf, tmpbuf, cnt); =20 - kfree(tmpbuf); - return err; } =20 @@ -570,7 +554,6 @@ s32 sdio_local_write( struct intf_hdl *intfhdl; u8 mac_pwr_ctrl_on; s32 err; - u8 *tmpbuf; =20 intfhdl =3D &adapter->iopriv.intf; =20 @@ -583,7 +566,7 @@ s32 sdio_local_write( ) return sd_cmd52_write(intfhdl, addr, cnt, buf); =20 - tmpbuf =3D kmalloc(cnt, GFP_ATOMIC); + u8 *tmpbuf __free(kfree) =3D kmalloc(cnt, GFP_ATOMIC); if (!tmpbuf) return -ENOMEM; =20 @@ -591,8 +574,6 @@ s32 sdio_local_write( =20 err =3D sd_write(intfhdl, addr, cnt, tmpbuf); =20 - kfree(tmpbuf); - return err; } =20 @@ -880,16 +861,14 @@ void sd_int_dpc(struct adapter *adapter) } =20 if (hal->sdio_hisr & SDIO_HISR_TXERR) { - u8 *status; u32 addr; =20 - status =3D kmalloc(4, GFP_ATOMIC); + u8 *status __free(kfree) =3D kmalloc(4, GFP_ATOMIC); if (status) { addr =3D REG_TXDMA_STATUS; hal_sdio_get_cmd_addr_8723b(adapter, WLAN_IOREG_DEVICE_ID, addr, &addr); _sd_read(intfhdl, addr, 4, status); _sd_write(intfhdl, addr, 4, status); - kfree(status); } } =20 --=20 2.34.1