From: Eric Biggers <ebiggers@kernel.org>
To: linux-kernel@vger.kernel.org
Cc: linux-crypto@vger.kernel.org, "Ard Biesheuvel" <ardb@kernel.org>,
"Rafał Miłecki" <rafal@milecki.pl>,
"Srinivas Kandagatla" <srini@kernel.org>,
"Eric Biggers" <ebiggers@kernel.org>
Subject: [PATCH] nvmem: layouts: Switch from crc32() to crc32_le()
Date: Fri, 20 Jun 2025 13:50:27 -0700 [thread overview]
Message-ID: <20250620205027.23403-1-ebiggers@kernel.org> (raw)
u_boot_env_parse() calls crc32() from within a scope that has a uint32_t
variable named crc32. This works only because crc32() is actually a
macro that expands to crc32_le(). I'm planning to make it an inline
function instead, which will make the usual C scoping rules apply to it.
Therefore, update u_boot_env_parse() to be compatible with that. To do
so, just call crc32_le() directly instead of using the crc32() alias.
(An alternative would be to rename the local variable.)
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
---
I'm planning to apply this patch to crc-next, since my patch
https://lore.kernel.org/r/20250619183414.100082-3-ebiggers@kernel.org/
depends on this.
drivers/nvmem/layouts/u-boot-env.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/nvmem/layouts/u-boot-env.c b/drivers/nvmem/layouts/u-boot-env.c
index 436426d4e8f91..274e8a456e8c1 100644
--- a/drivers/nvmem/layouts/u-boot-env.c
+++ b/drivers/nvmem/layouts/u-boot-env.c
@@ -146,11 +146,11 @@ int u_boot_env_parse(struct device *dev, struct nvmem_device *nvmem,
crc32_addr = (__le32 *)(buf + crc32_offset);
crc32 = le32_to_cpu(*crc32_addr);
crc32_data_len = dev_size - crc32_data_offset;
data_len = dev_size - data_offset;
- calc = crc32(~0, buf + crc32_data_offset, crc32_data_len) ^ ~0L;
+ calc = crc32_le(~0, buf + crc32_data_offset, crc32_data_len) ^ ~0L;
if (calc != crc32) {
dev_err(dev, "Invalid calculated CRC32: 0x%08x (expected: 0x%08x)\n", calc, crc32);
err = -EINVAL;
goto err_kfree;
}
base-commit: e04c78d86a9699d136910cfc0bdcf01087e3267e
--
2.50.0
next reply other threads:[~2025-06-20 20:51 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-20 20:50 Eric Biggers [this message]
2025-06-27 10:57 ` [PATCH] nvmem: layouts: Switch from crc32() to crc32_le() Srinivas Kandagatla
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=20250620205027.23403-1-ebiggers@kernel.org \
--to=ebiggers@kernel.org \
--cc=ardb@kernel.org \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rafal@milecki.pl \
--cc=srini@kernel.org \
/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.