From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f48.google.com (mail-pj1-f48.google.com [209.85.216.48]) (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 EA0CD303C8A for ; Mon, 6 Apr 2026 08:08:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.48 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775462940; cv=none; b=FIe1qMoTiyn6Hn76AJkuallqJvhyesSURaZ8icaRdkf+QatJn5HwikAqivn7PFKwRMX3DkPXA4sA64JjUiuKLGPaY0+9PY/PIWxAoDb/Zk75Z0M6o8qK7Q82fwf7smdfhGnJntcj5hc1BoODObMGcKizKbW2IEEDIEhL9HoHVAc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775462940; c=relaxed/simple; bh=y+miQhyfleVT/QglzDlFnG37vcecfD/Kg1w1h8wolGw=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Content-Type; b=F43u46J9PAU4ZcOMQ4G5LeayuU2PrEm0oZ6XkDCUYEA0ZqxbiWUJKTKnL/qxkkc2hJZaK0YANe6kDxeTOjOh5n94cI5jZjY3tIotrhEcyeziRdY9hPvYKEcGuAh190r/oayfByWY7oaVemGcTM2EdlE1pKX2m8OvARsCFj/Ume0= 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=J/b6PFTG; arc=none smtp.client-ip=209.85.216.48 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="J/b6PFTG" Received: by mail-pj1-f48.google.com with SMTP id 98e67ed59e1d1-3585ec417f6so1702297a91.1 for ; Mon, 06 Apr 2026 01:08:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775462938; x=1776067738; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=Ig1TReV+u6rJrOh3GodDEdZe+CeQGVyzjtit5wuoEZg=; b=J/b6PFTGAw+K4NTeymyIBJYliYvQWVe5r8kxoFGwpNUXuQxSsH5m8vJqrWmSVlf7EA BMra8MDCjtUnPU88UhpxJAL1TX7FrYbYYPGGAalOVTkOsk8PLZgyIt4ritQhvB79QMIO OTOPCKot1M8Dc6u+tbc97ZroYGqt21aibdHq237lWkLRHLvvFZhigOb4UkE3LQr9+oMI IhfTNRmWcFZzQWXqnXubFE23pj0MUfISCCDGvSt81Bf5okPb7UdQvuNZ12vPm+mXJPMv Wkja6UxD9v0Dh1aj6LAqsFPWkUsqJRh42+HxYczRHCQEW7eEkKwRhu6Av0rMh91yejn3 eY5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775462938; x=1776067738; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Ig1TReV+u6rJrOh3GodDEdZe+CeQGVyzjtit5wuoEZg=; b=BKrSJt//cnKGTFmI3PAXt/Lt2AHfJoJ1UUdlbDY2sUP2nxbejv8E9NelLnIJD8mUKP j5HGoUpIQdyF6fdWgZEOb8MWh65C0OmnD3YzvvVJaonhvsHWC97Q1E1E9UPJ7D5WQad+ E7omk5D46jzRKk5ziergzkTxkqpGDguRrnfOfq3FFKc8ljzvVLfG5cmUnjOBM8Qr935W 5BsvcvgvIQQReXTrvZIqZXNzz2y33bnK2KsPnLubAjqQTrhzMinEPa8MH8pS0tKJZEuO E+XibaRWPJ84NRwg/Y21eskMmp4TRE5oFJWN9HJJ7feQscEpDPuVqfTCHk57VSj/HUD/ 81KA== X-Forwarded-Encrypted: i=1; AJvYcCUXBIEEFwaeyWIvPz1yCIgXHe20i7r0Z4/vJT0qxsfXyPTLOOCNRlKcdEezIMm/rbExQ9iM3yQmlVc+me8=@vger.kernel.org X-Gm-Message-State: AOJu0YyxqFcjYCQkc18rrfrCHAn3TTrYNQGEhVcRNYQTz99fvJjWEE/j YLm1ZRgkZxc3JXOQozuz3KLNg6IJRmMQ5Cm1j/RD3HLKPagsB6ukbyRE X-Gm-Gg: AeBDietcrnzwJ/CXlZwNfucTCtgTC1TlUkof05xtetf5ms//VgfPjmzD8pSbRl+QKl2 5J9UcF4ONonGbl5Uz+fQeC8AOz5TMLtU74dwgqb9j1iMsXmeGu2b/ufbaJanswE+18jF8q571HE StbZF+vKP0WymL/4RBxU9i1hEF1QbJOIGIwAK7e/6w19veXc6V+xoWcKYIPf+H6UrJpmyhaxoEK T9kknUHYPSNyf3DE/ppSu9ZCn4NgaR/Lu4TYSFrmZkU+CpGZv0llhcXP9tRPzyEGZBHadYq91OT Ru10AxLn/JsyGe3iGAXKk8aqoLvh8R9yyWHb492B52VzSxYc7pdyE9RxFh361+2gBcP3BXAEwvY dTkPa4h4AlNvCVsq4yMxZcbVZBrTm2wsa0P1wY6qK5OlpU4MmdIr4gKusso3Yxp+UGQCafbkQsN 35eV76oOHdruXpjaLvbqDMAqPa7arn097ZP+bEnQmH5XVK0ClVWxsuFOWxlFI= X-Received: by 2002:a17:902:db04:b0:2ae:5346:d4e6 with SMTP id d9443c01a7336-2b277e8072cmr137327115ad.28.1775462938205; Mon, 06 Apr 2026 01:08:58 -0700 (PDT) Received: from hu-ckantibh-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2b27497af19sm127961835ad.50.2026.04.06.01.08.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Apr 2026 01:08:57 -0700 (PDT) From: Sanjay Chitroda X-Google-Original-From: Sanjay Chitroda To: jic23@kernel.org, dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org Cc: kees@kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, sanjayembeddedse@gmail.com Subject: [PATCH v5 0/5] iio: ssp_sensors: improve resource cleanup Date: Mon, 6 Apr 2026 13:38:47 +0530 Message-Id: <20260406080852.2727453-1-sanjayembedded@gmail.com> X-Mailer: git-send-email 2.34.1 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: 8bit From: Sanjay Chitroda Hi all, This patch series improves resource cleanup and error handling in the SSP IIO SPI driver by adopting the recently introduced cleanup helpers. The changes focus on making probe/remove paths more robust and easier to reason about by reducing manual unwind logic and ensuring that locks and dynamically allocated resources are released consistently across all exit paths. Key highlights of this series: - Reuse preallocate rx buffer for SPI transfer instead of allocating new DMA memory in interrupt context for write transaction between AP <-> HUB. - Replace dynamic resource lifetime management with device‑managed (devm_) APIs to simplify cleanup and error paths. - Refactor common helper API, improving readability and reducing duplicatation. - Address minor codestyle warnings introduced or exposed by the cleanup refactoring. Changes in v5: - Drop usage of guard() helpers to avoid mixing mutex_lock() with guard()(), based on reviewer feedback. - 0003: Refactor shared helper API, reducing duplication. - 0004: Convert resource allocation and teardown to devm_ managed APIs to simplify error handling and probe/remove paths. Changes in v4: - Update sequence and make checkpatch style fix in base change - Split WARNING and CHECK change with input of Andy as 0001 and 0002 - 0003: Use guard() instead of scoped_guard() - 0004: Use preallocated buffer to stash memory allocation No functional behavior changes are intended. Testing: - Compiled with W=1 - Build-tested on QEMU x86_64 Based on: Feedback and reviews are very welcome. Thanks, Sanjay Chitroda Sanjay Chitroda (5): iio: ssp_sensors: cleanup codestyle warning iio: ssp_sensors: cleanup codestyle check iio: ssp_sensors: factor out pending list add/remove helpers iio: ssp_sensors: use devm APIs for mutex and IRQ resources iio: ssp_sensors: reuse preallocated RX buffer for SPI transfers drivers/iio/common/ssp_sensors/ssp.h | 5 ++ drivers/iio/common/ssp_sensors/ssp_dev.c | 48 +++++++++++-------- drivers/iio/common/ssp_sensors/ssp_spi.c | 61 +++++++++++------------- 3 files changed, 62 insertions(+), 52 deletions(-) -- 2.34.1