From nobody Thu Apr 9 16:33:37 2026 Received: from mail-pg1-f173.google.com (mail-pg1-f173.google.com [209.85.215.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 63FCF33DEC8 for ; Tue, 3 Mar 2026 13:21:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772544094; cv=none; b=pE5Zwc8nO8dS+f/imtAy8XUc2IiUB93iYG3thjh164TUhjWzoEdA8/b4FLAUP67HT9t4P6VLEI5PPekv+n3etf6PfUc6XqlUO7EpKL+x8Eo3z0GHJZHoxHVe9xeSTXb/RwNaPn3jMkm6ijB957TBAxQhRB7WgMFCvNPceann+9Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772544094; c=relaxed/simple; bh=qQ8cVIgoJLxTfOYZEyEm9nD6RyTJa6yvfBv32MH0W6k=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:To:Cc; b=Azec1GSstPVGL2eB8WjdGxM7km3X3akpPBgZucVOR1DcUFbPS/aKQ1SUad2aXzg30JWN6lukYprOCAAv/puS9cu7P+XDpngDv1Sp/BkDO23UioSAdzn/MbEGnuxkQ5pQyIWUVJiKLqAuasYL0JuQXekLLsAknbMG7PZp50xi4ro= 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=RAF3xnKu; arc=none smtp.client-ip=209.85.215.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="RAF3xnKu" Received: by mail-pg1-f173.google.com with SMTP id 41be03b00d2f7-c70f191313cso2218574a12.3 for ; Tue, 03 Mar 2026 05:21:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772544093; x=1773148893; darn=vger.kernel.org; h=cc:to:message-id:content-transfer-encoding:mime-version:subject :date:from:from:to:cc:subject:date:message-id:reply-to; bh=rSgIttgxow4KdsVl0fAW0hH1qFQjzwhPA8Ucjoz0JJk=; b=RAF3xnKusSwaESx5bWUqt+M3PxT4xStVRsifVb/3sL8neXrkUPHAGYSwEwRNOZPEru g+2wmoRvo8sUj9/4nQk7Yh65xbDS7YaWQXY6jlXkWiFI0NNhYHiC/UqxUpj5IK3/Lh+u YuOy9jAFdBGu93Su2QUVXgG6w5CQV/Q4zyeSKpbr0QzPPVSqKzAfuuZ/U2YEaBS+I2lq 3AFMpHwJM0NlLMbBAAWAU/Q6gAQM/OINCq1A415bWX1N14exbH3R9kOj/90cXqxfXb4e EDqRC89AFOrz3Z9bnFIVaEj0hQ/rBhIgNtbvQUd5Asp17TUuJ4i0IA8xKKsaMnJ+yVlN RmzA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772544093; x=1773148893; h=cc:to:message-id:content-transfer-encoding:mime-version:subject :date:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=rSgIttgxow4KdsVl0fAW0hH1qFQjzwhPA8Ucjoz0JJk=; b=J2SJGmmKARHnrDciBgzLQ5kRYrx7fjXO0FQlXC+i+649NFw43XWo71yMq3b23drq0v 9iCNV0yfu/dKlTzL85kaxjL8F3Ix7TkrNPSaFFARN9vrYeZyh4ra873j31bP/nIV5/Or OD2OGawbgctJgAeInUHl47CgO+OsULfSXRqeWnnQPc4C/U5AkBDdB9/0UtI2Ueyotb/y +do/rVdWYfJFNG2TdJshozDIjhhv6qSDvg0xpD9hf91C+lq+7PehBO9EzoddMRe7ts/o CrBV0oipxwAE2bTYSP37UMsDrdVaCb8RjDCJpfsEjydqwoihC/eoese8KrfFRtNzKUQi LvTA== X-Forwarded-Encrypted: i=1; AJvYcCU6IfqUIrHdrgpOPBRDuYs6jLWX3vKiZiXBAGI5UkRaG47H/EpD1xbJjl0W7Y1Paqgt7m9c/EiYfIQcMFc=@vger.kernel.org X-Gm-Message-State: AOJu0Yw5li1HMRhWrPy2KfvuvL8PbuiFFaG1PNxF1mooBSY9N6gCjsN1 Dn0+TJDbSW2fWfDlQny/THlLsPI9DuDPfJ6K5wkTgVi3EvPaBOnFYV+E X-Gm-Gg: ATEYQzwGHf/Fh44hckLUcLhQ4hACJFZwOuwGfmjQAVGOJOBg9ZPXG3egD57JESKhGhW vA0Db0OMeIAGbdN+D0WgVdSK7l+q+4CyqdRetXWmPMwuxRwsi9txtGTgTBxy07Vzw1jGSU6GQP6 MI93rdaETqWwqlQv7caIChp2Ztpx0cYbuWpF7vD1TPLirOpIIu276UmwgeRsvSN53UVTe3G8Fh7 moRpI/eOAdj4sfln3J2vmTfIaVv5bGL/A/TKwM1MFT5AjI24v/GujuXgw1CSY8dEWVuyW2xTXbd x3NolF3buQdVF6GLCDbrNQ3Ca2yjJEniIXo/rr6R1i+DUNxxpi9tGukKNZY3ModJjG/yeK/t+uU ykW1C9msXWfwJgjJCIkGq7ifZXrs2RQaWf9PG8zmk1nWSq8VnrQkC7rYSja05PjNp9MvfB6YW4W SjLEOiDQjnEPz/Jr2dnBhM5BgRfXiPI56u42RpPWZlowxpluI= X-Received: by 2002:a17:902:cece:b0:2ae:3bb2:a8c0 with SMTP id d9443c01a7336-2ae3bb2ac50mr116402345ad.44.1772544092428; Tue, 03 Mar 2026 05:21:32 -0800 (PST) Received: from junjungu-PC.localdomain ([2408:820c:9009:3f2:f9d2:c148:3305:e3bf]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2adfb5b48f4sm168764255ad.13.2026.03.03.05.21.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 03 Mar 2026 05:21:32 -0800 (PST) From: Felix Gu Date: Tue, 03 Mar 2026 21:21:27 +0800 Subject: [PATCH] spi: nxp-xspi: Use reinit_completion() for repeated operations 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 Message-Id: <20260303-spi-nxp-v1-1-b78570db28ce@gmail.com> X-B4-Tracking: v=1; b=H4sIAFbgpmkC/6tWKk4tykwtVrJSqFYqSi3LLM7MzwNyDHUUlJIzE vPSU3UzU4B8JSMDIzMDYwNj3eKCTN28igLdFHODJEvzRIuUNAMLJaDqgqLUtMwKsEnRsbW1APj jibRZAAAA X-Change-ID: 20260303-spi-nxp-d70b97a8df08 To: Han Xu , Haibo Chen , Mark Brown , Frank Li Cc: linux-spi@vger.kernel.org, imx@lists.linux.dev, linux-kernel@vger.kernel.org, Felix Gu X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1772544089; l=1628; i=ustc.gu@gmail.com; h=from:subject:message-id; bh=qQ8cVIgoJLxTfOYZEyEm9nD6RyTJa6yvfBv32MH0W6k=; b=oGyL50RMeoOF6bnHxpZE3ErdeVNP2WcZc4Cs6okMYfM68WGQBmcJ5N9XO49DbR7IiA5uDhble q8S7hIWbPYDBP4jHV+uyQVjOJ0oA+8nZvG8rzmuJu+Zjme9oOvBtyNN X-Developer-Key: i=ustc.gu@gmail.com; a=ed25519; pk=fjUXwmjchVN7Ja6KGP55IXOzFeCl9edaHoQIEUA+/hw= The driver currently calls init_completion() during every spi_mem_op. Tchnically it may work, but it's not the recommended pattern. According to the kernel documentation: Calling init_completion() on the same completion object twice is most likely a bug as it re-initializes the queue to an empty queue and enqueued tasks could get "lost" - use reinit_completion() in that case, but be aware of other races. So moves the initial initialization to probe function and uses reinit_completion() for subsequent perations. Fixes: 29c8c00d9f9d ("spi: add driver for NXP XSPI controller") Signed-off-by: Felix Gu --- drivers/spi/spi-nxp-xspi.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-nxp-xspi.c b/drivers/spi/spi-nxp-xspi.c index 06fcdf22990b..7b2de5612964 100644 --- a/drivers/spi/spi-nxp-xspi.c +++ b/drivers/spi/spi-nxp-xspi.c @@ -958,7 +958,7 @@ static int nxp_xspi_do_op(struct nxp_xspi *xspi, const = struct spi_mem_op *op) writel(reg, base + XSPI_RBCT); } =20 - init_completion(&xspi->c); + reinit_completion(&xspi->c); =20 /* Config the data address */ writel(op->addr.val + xspi->memmap_phy, base + XSPI_SFP_TG_SFAR); @@ -1273,6 +1273,8 @@ static int nxp_xspi_probe(struct platform_device *pde= v) =20 nxp_xspi_default_setup(xspi); =20 + init_completion(&xspi->c); + ret =3D devm_request_irq(dev, irq, nxp_xspi_irq_handler, 0, pdev->name, xspi); if (ret) --- base-commit: d517cb8cea012f43b069617fc8179b45404f8018 change-id: 20260303-spi-nxp-d70b97a8df08 Best regards, --=20 Felix Gu