lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f802959f58865371ba1b10081bced98e3784c5e4.1763796152.git.chandna.sahil@gmail.com>
Date: Sun, 23 Nov 2025 08:34:16 +0530
From: Sahil Chandna <chandna.sahil@...il.com>
To: akpm@...ux-foundation.org,
	david@...hat.com,
	lorenzo.stoakes@...cle.com,
	mhocko@...e.com,
	vbabka@...e.cz,
	rppt@...nel.org,
	surenb@...gle.com,
	hannes@...xchg.org,
	shakeel.butt@...ux.dev,
	zhengqi.arch@...edance.com,
	Liam.Howlett@...cle.com,
	weixugc@...gle.com,
	axelrasmussen@...gle.com,
	yuanchu@...gle.com,
	yosry.ahmed@...ux.dev,
	nphamcs@...il.com,
	chengming.zhou@...ux.dev,
	linux-mm@...ck.org,
	linux-kernel@...r.kernel.org
Cc: Sahil Chandna <chandna.sahil@...il.com>,
	Matthew Wilcox <willy@...radead.org>,
	David Laight <david.laight.linux@...il.com>
Subject: [PATCH v2 1/3] mm: pagewalk: simplify hugepage boundary calculation using min()

Use the kernel-provided min() macro to compute the minimum value instead
of an explicit ternary expression. This improves readability and matches
common kernel style. Also change the return hugepage boundary expression
by using bitmask for better clarity.

This was flagged by Coccinelle
(misc/minmax.cocci) as an opportunity to use min().

Found by: make coccicheck MODE=report M=mm/
No functional change intended.

Suggested-by: Matthew Wilcox <willy@...radead.org>
Suggested-by: David Laight <david.laight.linux@...il.com>
Signed-off-by: Sahil Chandna <chandna.sahil@...il.com>
---
changes since v1:
- Updated boundary calculation of huge page range for better clarity.
- No Functional changes intended.
link to v1: https://lore.kernel.org/all/ff24b3c573b766b187b55a38497fbad0a319b9f8.1763227530.git.chandna.sahil@gmail.com/
---
 mm/pagewalk.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/mm/pagewalk.c b/mm/pagewalk.c
index 9f91cf85a5be..1d38763a502a 100644
--- a/mm/pagewalk.c
+++ b/mm/pagewalk.c
@@ -312,8 +312,7 @@ static int walk_pgd_range(unsigned long addr, unsigned long end,
 static unsigned long hugetlb_entry_end(struct hstate *h, unsigned long addr,
 				       unsigned long end)
 {
-	unsigned long boundary = (addr & huge_page_mask(h)) + huge_page_size(h);
-	return boundary < end ? boundary : end;
+	return min((addr | ~huge_page_mask(h)) + 1, end);
 }
 
 static int walk_hugetlb_range(unsigned long addr, unsigned long end,
-- 
2.50.1


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ