[PATCH 1/1] ARM: entry: add __irq_svc to irqentry section

Maninder Singh maninder1.s at samsung.com
Mon Sep 14 21:06:22 PDT 2026


Stackdepot usage is growing exponentially because current irq filter
is not removing trace after __irq_svc frame, so adding __irq_svc in
irqentry text section.

     stacktrace 1                        stacktrace 2

  kmem_cache_free+0x148/0x398        kmem_cache_free+0x148/0x398
  mt_free_rcu+0x20/0x24              mt_free_rcu+0x20/0x24
  rcu_core+0x338/0x9fc               rcu_core+0x338/0x9fc
  rcu_core_si+0x18/0x1c              rcu_core_si+0x18/0x1c
  handle_softirqs+0x194/0x47c        handle_softirqs+0x194/0x47c
  irq_exit+0xb0/0xdc                 irq_exit+0xb0/0xdc
  generic_handle_arch_irq+0x48/0x4c  generic_handle_arch_irq+0x48/0x4c
  call_with_stack+0x1c/0x20          call_with_stack+0x1c/0x20
  __irq_svc+0x128/0x154              __irq_svc+0x128/0x154
  _raw_spin_unlock_irq+0x30/0x64     stack_trace_consume_entry+0x58/0x74
  __vma_link_file+0x4c/0x70          arch_stack_walk+0x88/0x120
  vma_link_file+0x40/0x4c            stack_trace_save+0x48/0x54
  __mmap_region+0x660/0x99c          save_stack+0x5c/0x14c
  mmap_region+0x6c/0x108             __set_page_owner+0x38/0x254
  do_mmap+0x3c4/0x4d8                get_page_from_freelist+0x1714/0x1938
  vm_mmap_pgoff+0xd0/0x16c           __alloc_pages_noprof+0x120/0x1204

Co-developed-by: Hariom Panthi <hariom1.p at samsung.com> 
Signed-off-by: Hariom Panthi <hariom1.p at samsung.com>
Signed-off-by: Maninder Singh <maninder1.s at samsung.com>
---
 arch/arm/kernel/entry-armv.S | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S
index 2d2ea3ca880c..38696256d997 100644
--- a/arch/arm/kernel/entry-armv.S
+++ b/arch/arm/kernel/entry-armv.S
@@ -223,6 +223,7 @@ __dabt_svc:
 ENDPROC(__dabt_svc)
 
 	.align	5
+.pushsection   .irqentry.text, "ax"
 __irq_svc:
 	svc_entry
 	irq_handler from_user=0
@@ -239,6 +240,7 @@ __irq_svc:
 	svc_exit r5, irq = 1			@ return from exception
  UNWIND(.fnend		)
 ENDPROC(__irq_svc)
+.popsection
 
 	.ltorg
 
-- 
2.34.1




More information about the linux-arm-kernel mailing list