Linux-mm Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] mm/sparse: simplify the vmemmap alignment check
@ 2026-10-29 13:45 Kaitao Cheng
  2026-10-29 14:44 ` Kiryl Shutsemau
  0 siblings, 1 reply; 3+ messages in thread
From: Kaitao Cheng @ 2026-10-29 13:45 UTC (permalink / raw)
  To: Andrew Morton, David Hildenbrand
  Cc: Lorenzo Stoakes, Liam R. Howlett, Vlastimil Babka, Mike Rapoport,
	Suren Baghdasaryan, Michal Hocko, Muchun Song, linux-mm,
	linux-kernel, Kaitao Cheng

From: Kaitao Cheng <chengkaitao@kylinos.cn>

sparse_init() is called only once during boot, and the vmemmap alignment
check is outside any loop, so VM_WARN_ON_ONCE() provides no benefit over
VM_WARN_ON() here.

Use VM_WARN_ON() and fold compound_info_has_mask() into its condition,
preserving short-circuit evaluation.

Signed-off-by: Kaitao Cheng <chengkaitao@kylinos.cn>
---
 mm/sparse.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/mm/sparse.c b/mm/sparse.c
index 6acb628c8a73..759b85172adb 100644
--- a/mm/sparse.c
+++ b/mm/sparse.c
@@ -277,10 +277,8 @@ static void __init sparse_metadata_init(void)
  */
 void __init sparse_init(void)
 {
-	if (compound_info_has_mask()) {
-		VM_WARN_ON_ONCE(!IS_ALIGNED((unsigned long) pfn_to_page(0),
-				    MAX_FOLIO_VMEMMAP_ALIGN));
-	}
+	VM_WARN_ON(compound_info_has_mask() &&
+		   !IS_ALIGNED((unsigned long)pfn_to_page(0), MAX_FOLIO_VMEMMAP_ALIGN));
 
 	sparse_metadata_init();
 	sparse_init_subsection_map();
-- 
2.53.0



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] mm/sparse: simplify the vmemmap alignment check
  2026-10-29 13:45 [PATCH v2] mm/sparse: simplify the vmemmap alignment check Kaitao Cheng
@ 2026-10-29 14:44 ` Kiryl Shutsemau
  2026-10-29 15:37   ` David Hildenbrand (Arm)
  0 siblings, 1 reply; 3+ messages in thread
From: Kiryl Shutsemau @ 2026-10-29 14:44 UTC (permalink / raw)
  To: Kaitao Cheng
  Cc: Andrew Morton, David Hildenbrand, Lorenzo Stoakes,
	Liam R. Howlett, Vlastimil Babka, Mike Rapoport,
	Suren Baghdasaryan, Michal Hocko, Muchun Song, linux-mm,
	linux-kernel, Kaitao Cheng

On Thu, Oct 29, 2026 at 09:45:21PM +0800, Kaitao Cheng wrote:
> From: Kaitao Cheng <chengkaitao@kylinos.cn>
> 
> sparse_init() is called only once during boot, and the vmemmap alignment
> check is outside any loop, so VM_WARN_ON_ONCE() provides no benefit over
> VM_WARN_ON() here.

Okay, that's true. But who cares. __init section will be freed anyway.
I don't see downside in current code.

> Use VM_WARN_ON() and fold compound_info_has_mask() into its condition,
> preserving short-circuit evaluation.

Why? It only got harder to read, no?

-- 
  Kiryl Shutsemau / Kirill A. Shutemov


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] mm/sparse: simplify the vmemmap alignment check
  2026-10-29 14:44 ` Kiryl Shutsemau
@ 2026-10-29 15:37   ` David Hildenbrand (Arm)
  0 siblings, 0 replies; 3+ messages in thread
From: David Hildenbrand (Arm) @ 2026-10-29 15:37 UTC (permalink / raw)
  To: Kiryl Shutsemau, Kaitao Cheng
  Cc: Andrew Morton, Lorenzo Stoakes, Liam R. Howlett, Vlastimil Babka,
	Mike Rapoport, Suren Baghdasaryan, Michal Hocko, Muchun Song,
	linux-mm, linux-kernel, Kaitao Cheng

On 10/29/26 15:44, Kiryl Shutsemau wrote:
> On Thu, Oct 29, 2026 at 09:45:21PM +0800, Kaitao Cheng wrote:
>> From: Kaitao Cheng <chengkaitao@kylinos.cn>
>>
>> sparse_init() is called only once during boot, and the vmemmap alignment
>> check is outside any loop, so VM_WARN_ON_ONCE() provides no benefit over
>> VM_WARN_ON() here.
> 
> Okay, that's true. But who cares. __init section will be freed anyway.
> I don't see downside in current code.
> 
>> Use VM_WARN_ON() and fold compound_info_has_mask() into its condition,
>> preserving short-circuit evaluation.
> 
> Why? It only got harder to read, no?

This would be fine as part of some bigger rework, but standalone this cleanup is
not very attractive :)

-- 
Cheers,

David


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-10-29 15:47 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-29 13:45 [PATCH v2] mm/sparse: simplify the vmemmap alignment check Kaitao Cheng
2026-10-29 14:44 ` Kiryl Shutsemau
2026-10-29 15:37   ` David Hildenbrand (Arm)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox