From: Richard Lyu <richard.lyu@suse.com>
To: jarkko@kernel.org
Cc: fourier.thomas@gmail.com, jgg@ziepe.ca,
linux-integrity@vger.kernel.org, linux-kernel@vger.kernel.org,
peterhuewe@gmx.de, richard.lyu@suse.com
Subject: [PATCH v2] tpm: Remove ineffective wmb() from tpm_pm_resume()
Date: Thu, 10 Sep 2026 10:44:31 +0800 [thread overview]
Message-ID: <20260910024430.40418-1-richard.lyu@suse.com> (raw)
In-Reply-To: <aqIVn0cDBvIYKggE@r1chard>
The comment above the wmb() in tpm_pm_resume() states that the barrier
guarantees TPM_CHIP_FLAG_SUSPENDED is written last, so that hwrng does
not activate before the chip has been fully resumed. It cannot do so:
it is placed after the store that clears the flag, and therefore does
not order the preceding resume work before that store. It also has
nothing to pair with, as tpm_try_get_ops() contains no matching read
barrier.
Drop the barrier along with the comment rather than leave a no-op
behind. Should such ordering turn out to be needed, it would require
paired barriers or locking.
Link: https://lore.kernel.org/all/a62fc816-259a-4d28-a265-e425bc17ed50@gmail.com/
Signed-off-by: Richard Lyu <richard.lyu@suse.com>
---
v2:
- Drop the Fixes tag: this is a cleanup, not a bug fix.
- Link to v1: https://lore.kernel.org/all/aqIVn0cDBvIYKggE@r1chard/
---
drivers/char/tpm/tpm-interface.c | 6 ------
1 file changed, 6 deletions(-)
diff --git a/drivers/char/tpm/tpm-interface.c b/drivers/char/tpm/tpm-interface.c
index b4e749e70b02..0bab78c8767c 100644
--- a/drivers/char/tpm/tpm-interface.c
+++ b/drivers/char/tpm/tpm-interface.c
@@ -497,12 +497,6 @@ int tpm_pm_resume(struct device *dev)
chip->flags &= ~TPM_CHIP_FLAG_SUSPENDED;
- /*
- * Guarantee that SUSPENDED is written last, so that hwrng does not
- * activate before the chip has been fully resumed.
- */
- wmb();
-
return 0;
}
EXPORT_SYMBOL_GPL(tpm_pm_resume);
--
2.51.0
next prev parent reply other threads:[~2026-09-10 2:44 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-08 9:58 [PATCH] tpm: Remove ineffective wmb() from tpm_pm_resume() Richard Lyu
2026-09-09 22:51 ` Jarkko Sakkinen
2026-09-10 2:27 ` Richard Lyu
2026-09-10 2:44 ` Richard Lyu [this message]
-- strict thread matches above, loose matches on Subject: below --
2026-09-10 2:46 [PATCH v2] " Richard Lyu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260910024430.40418-1-richard.lyu@suse.com \
--to=richard.lyu@suse.com \
--cc=fourier.thomas@gmail.com \
--cc=jarkko@kernel.org \
--cc=jgg@ziepe.ca \
--cc=linux-integrity@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=peterhuewe@gmx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.