All of lore.kernel.org
 help / color / mirror / Atom feed
From: Baoquan He <bhe@redhat.com>
To: mingo@kernel.org, thomas.lendacky@amd.com, bp@alien8.de,
	linux-kernel@vger.kernel.org
Cc: x86@kernel.org, Baoquan He <bhe@redhat.com>
Subject: [PATCH v3 2/3] x86/ioremap: Clean up size calculations in xxx_is_setup_data()
Date: Sat, 23 Nov 2024 19:42:20 +0800	[thread overview]
Message-ID: <20241123114221.149383-3-bhe@redhat.com> (raw)
In-Reply-To: <20241123114221.149383-1-bhe@redhat.com>

while *normally* we'd use the 'sizeof(*data)' pattern, this particular
size repeats a number of times and not all contexts are obvious - so
abstracting it out into a trivial define SD_SIZE looks like the proper
cleanup.

Signed-off-by: Baoquan He <bhe@redhat.com>
---
 arch/x86/mm/ioremap.c | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c
index aaf40a712b04..76be3d664e09 100644
--- a/arch/x86/mm/ioremap.c
+++ b/arch/x86/mm/ioremap.c
@@ -628,6 +628,7 @@ static bool memremap_is_efi_data(resource_size_t phys_addr,
 	return false;
 }
 
+#define SD_SIZE sizeof(struct setup_data)
 /*
  * Examine the physical address to determine if it is boot data by checking
  * it against the boot params setup_data chain.
@@ -647,24 +648,24 @@ static bool __ref __memremap_is_setup_data(resource_size_t phys_addr,
 			return true;
 
 		if (early)
-			data = early_memremap_decrypted(paddr, sizeof(*data));
+			data = early_memremap_decrypted(paddr, SD_SIZE);
 		else
-			data = memremap(paddr, sizeof(*data),
+			data = memremap(paddr, SD_SIZE,
 					MEMREMAP_WB | MEMREMAP_DEC);
 		if (!data) {
 			pr_warn("failed to memremap setup_data entry\n");
 			return false;
 		}
 
-		size = sizeof(*data);
+		size = SD_SIZE;
 
 		paddr_next = data->next;
 		len = data->len;
 
 		if ((phys_addr > paddr) &&
-		    (phys_addr < (paddr + sizeof(*data) + len))) {
+		    (phys_addr < (paddr + SD_SIZE + len))) {
 			if (early)
-				early_memunmap(data, sizeof(*data));
+				early_memunmap(data, SD_SIZE);
 			else
 				memunmap(data);
 			return true;
@@ -673,7 +674,7 @@ static bool __ref __memremap_is_setup_data(resource_size_t phys_addr,
 		if (data->type == SETUP_INDIRECT) {
 			size += len;
 			if (early) {
-				early_memunmap(data, sizeof(*data));
+				early_memunmap(data, SD_SIZE);
 				data = early_memremap_decrypted(paddr, size);
 			} else {
 				memunmap(data);
@@ -706,6 +707,7 @@ static bool __ref __memremap_is_setup_data(resource_size_t phys_addr,
 
 	return false;
 }
+#undef SD_SIZE
 
 static bool memremap_is_setup_data(resource_size_t phys_addr,
 				   unsigned long size)
-- 
2.41.0


  parent reply	other threads:[~2024-11-23 11:42 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-23 11:42 [PATCH v3 0/3] x86/ioremap: clean up the mess in xxx_is_setup_data Baoquan He
2024-11-23 11:42 ` [PATCH v3 1/3] x86/ioremap: introduce helper to implement xxx_is_setup_data() Baoquan He
2024-12-07 16:04   ` Borislav Petkov
2024-12-09  0:52     ` Baoquan He
2024-12-08 10:39   ` [tip: x86/cleanups] x86/ioremap: Simplify setup_data mapping variants tip-bot2 for Baoquan He
2024-11-23 11:42 ` Baoquan He [this message]
2024-11-23 11:42 ` [PATCH v3 3/3] x86/mm: clean up unused parameters of functions Baoquan He
2024-12-08 10:39   ` [tip: x86/cleanups] x86/ioremap: Remove unused size parameter in remapping functions tip-bot2 for Baoquan He

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=20241123114221.149383-3-bhe@redhat.com \
    --to=bhe@redhat.com \
    --cc=bp@alien8.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=thomas.lendacky@amd.com \
    --cc=x86@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.