syzbot


BUG: unable to handle kernel paging request in percpu_ref_get_many (2)

Status: upstream: reported on 2025/05/25 00:43
Subsystems: cgroups mm
[Documentation on labels]
Reported-by: syzbot+3109abc43c8fcf15212b@syzkaller.appspotmail.com
First crash: 21d, last: 10h33m
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [cgroups?] [mm?] BUG: unable to handle kernel paging request in percpu_ref_get_many (2) 1 (2) 2025/05/25 04:35
Similar bugs (2)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream BUG: unable to handle kernel paging request in percpu_ref_get_many cgroups mm 3 870d 941d 0/28 auto-obsoleted due to no activity on 2023/04/06 05:44
upstream general protection fault in percpu_ref_get_many cgroups mm 1 82d 82d 0/28 closed as invalid on 2025/03/30 10:14

Sample crash report:
Unable to handle kernel paging request at virtual address fffe8001ffe7cc00
KASAN: maybe wild-memory-access in range [0xfff8000fff3e6000-0xfff8000fff3e6007]
Mem abort info:
  ESR = 0x0000000096000004
  EC = 0x25: DABT (current EL), IL = 32 bits
  SET = 0, FnV = 0
  EA = 0, S1PTW = 0
  FSC = 0x04: level 0 translation fault
Data abort info:
  ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000
  CM = 0, WnR = 0, TnD = 0, TagAccess = 0
  GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
swapper pgtable: 4k pages, 48-bit VAs, pgdp=00000002079fa000
[fffe8001ffe7cc00] pgd=0000000000000000, p4d=1000000210124003, pud=0000000000000000
Internal error: Oops: 0000000096000004 [#1]  SMP
Modules linked in:
CPU: 0 UID: 0 PID: 6597 Comm: udevd Not tainted 6.15.0-rc7-syzkaller-gd7fa1af5b33e #0 PREEMPT 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
pstate: 404000c5 (nZcv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : __percpu_add_case_64 arch/arm64/include/asm/percpu.h:127 [inline]
pc : percpu_ref_get_many+0xc4/0x1f4 include/linux/percpu-refcount.h:205
lr : rcu_read_lock include/linux/rcupdate.h:842 [inline]
lr : percpu_ref_get_many+0x3c/0x1f4 include/linux/percpu-refcount.h:202
sp : ffff8000a42973a0
x29: ffff8000a42973b0 x28: 0000000000000000 x27: 0000000000000000
x26: dfff800000000000 x25: ffff8000a42974e0 x24: ffff00019c365780
x23: ffff00019c365738 x22: 1fffe000193557a1 x21: dfff800000000000
x20: ffff0000c9aabd08 x19: 0000000000000001 x18: 0000000000000000
x17: 0000000000000000 x16: ffff80008adbe9e4 x15: 0000000000000001
x14: 1fffe00019b16b33 x13: 0000000000000000 x12: 0000000000000000
x11: 0000000087fac5b3 x10: 0000000000000003 x9 : ffff80010d0e8000
x8 : fffe8001ffe7cc00 x7 : ffff800080c9fbbc x6 : 0000000000000000
x5 : 0000000000000001 x4 : 0000000000000000 x3 : 0000000000000002
x2 : 0000000000000008 x1 : ffff80008b3ebc40 x0 : 0000000000000001
Call trace:
 percpu_ref_get_many+0xc4/0x1f4 include/linux/percpu-refcount.h:205 (P)
 percpu_ref_get include/linux/percpu-refcount.h:222 [inline]
 obj_cgroup_get include/linux/memcontrol.h:760 [inline]
 replace_stock_objcg mm/memcontrol.c:2774 [inline]
 refill_obj_stock+0x150/0x470 mm/memcontrol.c:2952
 obj_cgroup_uncharge mm/memcontrol.c:3015 [inline]
 __memcg_slab_free_hook+0x110/0x228 mm/memcontrol.c:3102
 memcg_slab_free_hook mm/slub.c:2205 [inline]
 slab_free mm/slub.c:4639 [inline]
 kmem_cache_free+0x270/0x550 mm/slub.c:4744
 anon_vma_chain_free mm/rmap.c:147 [inline]
 unlink_anon_vmas+0x224/0x520 mm/rmap.c:421
 free_pgtables+0x200/0x63c mm/memory.c:370
 vms_clear_ptes+0x358/0x45c mm/vma.c:1189
 vms_complete_munmap_vmas+0x1d4/0x7e4 mm/vma.c:1233
 do_vmi_align_munmap+0x2c4/0x310 mm/vma.c:1492
 do_vmi_munmap+0x1dc/0x260 mm/vma.c:1540
 __vm_munmap+0x218/0x390 mm/vma.c:3013
 __do_sys_munmap mm/mmap.c:1084 [inline]
 __se_sys_munmap mm/mmap.c:1081 [inline]
 __arm64_sys_munmap+0x64/0x7c mm/mmap.c:1081
 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]
 invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49
 el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132
 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151
 el0_svc+0x58/0x17c arch/arm64/kernel/entry-common.c:767
 el0t_64_sync_handler+0x78/0x108 arch/arm64/kernel/entry-common.c:786
 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600
Code: 11000529 b9000289 d538d089 8b080128 (f833011f) 
---[ end trace 0000000000000000 ]---
----------------
Code disassembly (best guess):
   0:	11000529 	add	w9, w9, #0x1
   4:	b9000289 	str	w9, [x20]
   8:	d538d089 	mrs	x9, tpidr_el1
   c:	8b080128 	add	x8, x9, x8
* 10:	f833011f 	stadd	x19, [x8] <-- trapping instruction

Crashes (5):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/05/25 00:42 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci d7fa1af5b33e ed351ea7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in percpu_ref_get_many
2025/05/03 20:51 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci e0f4c8dd9d2d b0714e37 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in percpu_ref_get_many
2025/05/23 13:46 upstream 94305e83eccb fa44301a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs general protection fault in percpu_ref_get_many
2025/05/06 19:59 net e8716b5b0dff ae98e6b9 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-net-this-kasan-gce general protection fault in percpu_ref_get_many
2025/05/06 18:10 net e8716b5b0dff ae98e6b9 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-net-this-kasan-gce general protection fault in percpu_ref_get_many
* Struck through repros no longer work on HEAD.