* [PATCH v2 0/3] mm: Coccinelle-driven cleanups across memory management code
@ 2025-11-23 3:04 Sahil Chandna
2025-11-23 3:04 ` [PATCH v2 1/3] mm: pagewalk: simplify hugepage boundary calculation using min() Sahil Chandna
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Sahil Chandna @ 2025-11-23 3:04 UTC (permalink / raw)
To: akpm, david, lorenzo.stoakes, mhocko, vbabka, rppt, surenb,
hannes, shakeel.butt, zhengqi.arch, Liam.Howlett, weixugc,
axelrasmussen, yuanchu, yosry.ahmed, nphamcs, chengming.zhou,
linux-mm, linux-kernel
Cc: Sahil Chandna
This patch series contains three minor cleanups identified by
Coccinelle scripts under scripts/coccinelle/misc/:
* Replace manual ternary expression with the min() macro in pagewalk.c
and change return expression for clarity.
* Use the %pe printk format specifier for PTR_ERR() reporting
in vmscan.c and zswap.c
Found using:
make coccicheck MODE=report M=mm/
changes in v2:
- Patch 1/3: update return value as per review comments.
- patch 2/3 and 3/3: Add Acked-by and Reviewed-by tags.
link to v1: https://lore.kernel.org/all/cover.1763227530.git.chandna.sahil@gmail.com/
Sahil Chandna (3):
mm: pagewalk: simplify hugepage boundary calculation using min()
mm/vmscan: use %pe to print error pointers
mm/zswap: use %pe to print error pointers
mm/pagewalk.c | 3 +--
mm/vmscan.c | 4 ++--
mm/zswap.c | 4 ++--
3 files changed, 5 insertions(+), 6 deletions(-)
--
2.50.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 1/3] mm: pagewalk: simplify hugepage boundary calculation using min()
2025-11-23 3:04 [PATCH v2 0/3] mm: Coccinelle-driven cleanups across memory management code Sahil Chandna
@ 2025-11-23 3:04 ` Sahil Chandna
2025-11-24 10:53 ` David Hildenbrand (Red Hat)
2025-11-23 3:04 ` [PATCH v2 2/3] mm/vmscan: use %pe to print error pointers Sahil Chandna
2025-11-23 3:04 ` [PATCH v2 3/3] mm/zswap: " Sahil Chandna
2 siblings, 1 reply; 7+ messages in thread
From: Sahil Chandna @ 2025-11-23 3:04 UTC (permalink / raw)
To: akpm, david, lorenzo.stoakes, mhocko, vbabka, rppt, surenb,
hannes, shakeel.butt, zhengqi.arch, Liam.Howlett, weixugc,
axelrasmussen, yuanchu, yosry.ahmed, nphamcs, chengming.zhou,
linux-mm, linux-kernel
Cc: Sahil Chandna, Matthew Wilcox, David Laight
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@infradead.org>
Suggested-by: David Laight <david.laight.linux@gmail.com>
Signed-off-by: Sahil Chandna <chandna.sahil@gmail.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
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 2/3] mm/vmscan: use %pe to print error pointers
2025-11-23 3:04 [PATCH v2 0/3] mm: Coccinelle-driven cleanups across memory management code Sahil Chandna
2025-11-23 3:04 ` [PATCH v2 1/3] mm: pagewalk: simplify hugepage boundary calculation using min() Sahil Chandna
@ 2025-11-23 3:04 ` Sahil Chandna
2025-11-24 10:54 ` David Hildenbrand (Red Hat)
2025-11-23 3:04 ` [PATCH v2 3/3] mm/zswap: " Sahil Chandna
2 siblings, 1 reply; 7+ messages in thread
From: Sahil Chandna @ 2025-11-23 3:04 UTC (permalink / raw)
To: akpm, david, lorenzo.stoakes, mhocko, vbabka, rppt, surenb,
hannes, shakeel.butt, zhengqi.arch, Liam.Howlett, weixugc,
axelrasmussen, yuanchu, yosry.ahmed, nphamcs, chengming.zhou,
linux-mm, linux-kernel
Cc: Sahil Chandna, SeongJae Park
Use the %pe printk format specifier to report error pointers directly
instead of printing PTR_ERR() as a long value. This improves clarity,
produces more readable error messages.
This instance was flagged by the Coccinelle script
(misc/ptr_err_to_pe.cocci) as an opportunity to adopt %pe.
Found by: make coccicheck MODE=report M=mm/
No functional change intended
Reviewed-by: SeongJae Park <sj@kernel.org>
Signed-off-by: Sahil Chandna <chandna.sahil@gmail.com>
---
mm/vmscan.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mm/vmscan.c b/mm/vmscan.c
index b2fc8b626d3d..7d5b41696cc3 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -7500,8 +7500,8 @@ void __meminit kswapd_run(int nid)
pgdat->kswapd = kthread_create_on_node(kswapd, pgdat, nid, "kswapd%d", nid);
if (IS_ERR(pgdat->kswapd)) {
/* failure at boot is fatal */
- pr_err("Failed to start kswapd on node %d,ret=%ld\n",
- nid, PTR_ERR(pgdat->kswapd));
+ pr_err("Failed to start kswapd on node %d,ret=%pe\n",
+ nid, pgdat->kswapd);
BUG_ON(system_state < SYSTEM_RUNNING);
pgdat->kswapd = NULL;
} else {
--
2.50.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 3/3] mm/zswap: use %pe to print error pointers
2025-11-23 3:04 [PATCH v2 0/3] mm: Coccinelle-driven cleanups across memory management code Sahil Chandna
2025-11-23 3:04 ` [PATCH v2 1/3] mm: pagewalk: simplify hugepage boundary calculation using min() Sahil Chandna
2025-11-23 3:04 ` [PATCH v2 2/3] mm/vmscan: use %pe to print error pointers Sahil Chandna
@ 2025-11-23 3:04 ` Sahil Chandna
2025-11-24 10:54 ` David Hildenbrand (Red Hat)
2 siblings, 1 reply; 7+ messages in thread
From: Sahil Chandna @ 2025-11-23 3:04 UTC (permalink / raw)
To: akpm, david, lorenzo.stoakes, mhocko, vbabka, rppt, surenb,
hannes, shakeel.butt, zhengqi.arch, Liam.Howlett, weixugc,
axelrasmussen, yuanchu, yosry.ahmed, nphamcs, chengming.zhou,
linux-mm, linux-kernel
Cc: Sahil Chandna, SeongJae Park
Use the %pe printk format specifier to report error pointers directly
instead of printing PTR_ERR() as a long value. This improves clarity,
produces more readable error messages.
This instance was flagged by the Coccinelle script
(misc/ptr_err_to_pe.cocci) as an opportunity to adopt %pe.
Found by: make coccicheck MODE=report M=mm/
No functional change intended.
Acked-by: Yosry Ahmed <yosry.ahmed@linux.dev>
Acked-by: Nhat Pham <nphamcs@gmail.com>
Reviewed-by: SeongJae Park <sj@kernel.org>
Signed-off-by: Sahil Chandna <chandna.sahil@gmail.com>
---
mm/zswap.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mm/zswap.c b/mm/zswap.c
index c1af782e54ec..c35604db32ad 100644
--- a/mm/zswap.c
+++ b/mm/zswap.c
@@ -749,8 +749,8 @@ static int zswap_cpu_comp_prepare(unsigned int cpu, struct hlist_node *node)
acomp = crypto_alloc_acomp_node(pool->tfm_name, 0, 0, cpu_to_node(cpu));
if (IS_ERR(acomp)) {
- pr_err("could not alloc crypto acomp %s : %ld\n",
- pool->tfm_name, PTR_ERR(acomp));
+ pr_err("could not alloc crypto acomp %s : %pe\n",
+ pool->tfm_name, acomp);
ret = PTR_ERR(acomp);
goto fail;
}
--
2.50.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 1/3] mm: pagewalk: simplify hugepage boundary calculation using min()
2025-11-23 3:04 ` [PATCH v2 1/3] mm: pagewalk: simplify hugepage boundary calculation using min() Sahil Chandna
@ 2025-11-24 10:53 ` David Hildenbrand (Red Hat)
0 siblings, 0 replies; 7+ messages in thread
From: David Hildenbrand (Red Hat) @ 2025-11-24 10:53 UTC (permalink / raw)
To: Sahil Chandna, akpm, lorenzo.stoakes, mhocko, vbabka, rppt,
surenb, hannes, shakeel.butt, zhengqi.arch, Liam.Howlett,
weixugc, axelrasmussen, yuanchu, yosry.ahmed, nphamcs,
chengming.zhou, linux-mm, linux-kernel
Cc: Matthew Wilcox, David Laight
On 11/23/25 04:04, Sahil Chandna wrote:
> 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@infradead.org>
> Suggested-by: David Laight <david.laight.linux@gmail.com>
> Signed-off-by: Sahil Chandna <chandna.sahil@gmail.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);
I know Willy suggested that, but I wonder if we could simplify that to
something a bit easier to digest:
return min(ALIGN(addr, huge_page_size(h)), end);
At least I can make sense of that a bit faster.
(I don't think we're interested in micro-optimizations in this code here
in particular :) )
--
Cheers
David
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 2/3] mm/vmscan: use %pe to print error pointers
2025-11-23 3:04 ` [PATCH v2 2/3] mm/vmscan: use %pe to print error pointers Sahil Chandna
@ 2025-11-24 10:54 ` David Hildenbrand (Red Hat)
0 siblings, 0 replies; 7+ messages in thread
From: David Hildenbrand (Red Hat) @ 2025-11-24 10:54 UTC (permalink / raw)
To: Sahil Chandna, akpm, lorenzo.stoakes, mhocko, vbabka, rppt,
surenb, hannes, shakeel.butt, zhengqi.arch, Liam.Howlett,
weixugc, axelrasmussen, yuanchu, yosry.ahmed, nphamcs,
chengming.zhou, linux-mm, linux-kernel
Cc: SeongJae Park
On 11/23/25 04:04, Sahil Chandna wrote:
> Use the %pe printk format specifier to report error pointers directly
> instead of printing PTR_ERR() as a long value. This improves clarity,
> produces more readable error messages.
>
> This instance was flagged by the Coccinelle script
> (misc/ptr_err_to_pe.cocci) as an opportunity to adopt %pe.
>
> Found by: make coccicheck MODE=report M=mm/
> No functional change intended
>
> Reviewed-by: SeongJae Park <sj@kernel.org>
> Signed-off-by: Sahil Chandna <chandna.sahil@gmail.com>
> ---
Acked-by: David Hildenbrand (Red Hat) <david@kernel.org>
--
Cheers
David
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 3/3] mm/zswap: use %pe to print error pointers
2025-11-23 3:04 ` [PATCH v2 3/3] mm/zswap: " Sahil Chandna
@ 2025-11-24 10:54 ` David Hildenbrand (Red Hat)
0 siblings, 0 replies; 7+ messages in thread
From: David Hildenbrand (Red Hat) @ 2025-11-24 10:54 UTC (permalink / raw)
To: Sahil Chandna, akpm, lorenzo.stoakes, mhocko, vbabka, rppt,
surenb, hannes, shakeel.butt, zhengqi.arch, Liam.Howlett,
weixugc, axelrasmussen, yuanchu, yosry.ahmed, nphamcs,
chengming.zhou, linux-mm, linux-kernel
Cc: SeongJae Park
On 11/23/25 04:04, Sahil Chandna wrote:
> Use the %pe printk format specifier to report error pointers directly
> instead of printing PTR_ERR() as a long value. This improves clarity,
> produces more readable error messages.
>
> This instance was flagged by the Coccinelle script
> (misc/ptr_err_to_pe.cocci) as an opportunity to adopt %pe.
>
> Found by: make coccicheck MODE=report M=mm/
> No functional change intended.
>
> Acked-by: Yosry Ahmed <yosry.ahmed@linux.dev>
> Acked-by: Nhat Pham <nphamcs@gmail.com>
> Reviewed-by: SeongJae Park <sj@kernel.org>
> Signed-off-by: Sahil Chandna <chandna.sahil@gmail.com>
> ---
Acked-by: David Hildenbrand (Red Hat) <david@kernel.org>
--
Cheers
David
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2025-11-24 10:55 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-11-23 3:04 [PATCH v2 0/3] mm: Coccinelle-driven cleanups across memory management code Sahil Chandna
2025-11-23 3:04 ` [PATCH v2 1/3] mm: pagewalk: simplify hugepage boundary calculation using min() Sahil Chandna
2025-11-24 10:53 ` David Hildenbrand (Red Hat)
2025-11-23 3:04 ` [PATCH v2 2/3] mm/vmscan: use %pe to print error pointers Sahil Chandna
2025-11-24 10:54 ` David Hildenbrand (Red Hat)
2025-11-23 3:04 ` [PATCH v2 3/3] mm/zswap: " Sahil Chandna
2025-11-24 10:54 ` David Hildenbrand (Red Hat)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox