oe-lkp.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [rgushchin:bpfoom.1.6] [mm]  2bdadc8e5c: WARNING:suspicious_RCU_usage
@ 2025-08-24 12:37 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-08-24 12:37 UTC (permalink / raw)
  To: Roman Gushchin; +Cc: oe-lkp, lkp, Roman Gushchin, oliver.sang



Hello,

kernel test robot noticed "WARNING:suspicious_RCU_usage" on:

commit: 2bdadc8e5ce6f6b23d63d28cfacb0882852401f9 ("mm: introduce a bpf hook for OOM handling")
https://github.com/rgushchin/linux.git bpfoom.1.6

in testcase: trinity
version: trinity-i386-abe9de86-1_20230429
with following parameters:

	runtime: 600s



config: x86_64-randconfig-101-20250522
compiler: gcc-12
test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G

(please refer to attached dmesg/kmsg for entire log/backtrace)



If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <oliver.sang@intel.com>
| Closes: https://lore.kernel.org/oe-lkp/202508242042.e9d8711f-lkp@intel.com


[  496.402237][T17289] WARNING: suspicious RCU usage
[  496.402834][T17289] 6.16.0-00002-g2bdadc8e5ce6 #1 Tainted: G                T
[  496.405807][T17289] -----------------------------
[  496.406337][T17289] mm/bpf_oom.c:32 RCU-list traversed without holding the required lock!!
[  496.407272][T17289]
[  496.407272][T17289] other info that might help us debug this:
[  496.407272][T17289]
[  496.411009][T17289]
[  496.411009][T17289] rcu_scheduler_active = 2, debug_locks = 1
[  496.411886][T17289] 4 locks held by trinity-c2/17289:
[496.414256][T17289] #0: ffff88839840ae30 (&type->i_mutex_dir_key#3){++++}-{4:4}, at: lookup_slow (fs/namei.c:1834) 
[496.415329][T17289] #1: ffff888100238188 (&root->kernfs_rwsem){++++}-{4:4}, at: kernfs_iop_lookup (include/linux/kernfs.h:399 fs/kernfs/dir.c:1223) 
[496.418735][T17289] #2: ffffffff9ecc1c08 (oom_lock){+.+.}-{4:4}, at: __alloc_pages_may_oom (mm/page_alloc.c:3785) 
[496.419781][T17289] #3: ffffffff9ed2ba70 (bpf_oom_srcu){.+.+}-{0:0}, at: srcu_read_lock (include/linux/srcu.h:161 include/linux/srcu.h:253) 
[  496.422883][T17289]
[  496.422883][T17289] stack backtrace:
[  496.423421][T17289] CPU: 1 UID: 65534 PID: 17289 Comm: trinity-c2 Tainted: G                T   6.16.0-00002-g2bdadc8e5ce6 #1 VOLUNTARY
[  496.423435][T17289] Tainted: [T]=RANDSTRUCT
[  496.423439][T17289] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
[  496.423444][T17289] Call Trace:
[  496.423449][T17289]  <TASK>
[496.423457][T17289] dump_stack_lvl (lib/dump_stack.c:123) 
[496.423475][T17289] dump_stack (lib/dump_stack.c:130) 
[496.423485][T17289] lockdep_rcu_suspicious (kernel/locking/lockdep.c:6872) 
[496.423506][T17289] bpf_handle_oom (mm/bpf_oom.c:32 (discriminator 11)) 
[496.423519][T17289] ? constrained_alloc (arch/x86/include/asm/atomic64_64.h:15 include/linux/atomic/atomic-arch-fallback.h:2583 include/linux/atomic/atomic-long.h:38 include/linux/atomic/atomic-instrumented.h:3189 include/linux/mm.h:52 mm/oom_kill.c:276) 
[496.423540][T17289] out_of_memory (mm/oom_kill.c:1179) 
[496.423557][T17289] ? oom_killer_disable (mm/oom_kill.c:1124) 
[496.423582][T17289] __alloc_pages_may_oom (mm/page_alloc.c:3837) 
[496.423599][T17289] ? __alloc_pages_cpuset_fallback (mm/page_alloc.c:3769) 
[496.423641][T17289] __alloc_pages_slowpath+0x760/0x87a 
[496.423668][T17289] ? warn_alloc (mm/page_alloc.c:4407) 
[496.423697][T17289] __alloc_frozen_pages_noprof (mm/page_alloc.c:4972) 
[496.423710][T17289] ? __alloc_pages_slowpath+0x87a/0x87a 
[496.423737][T17289] ? policy_nodemask (include/linux/nodemask.h:253 mm/mempolicy.c:2206) 
[496.423753][T17289] alloc_pages_mpol (mm/mempolicy.c:2421) 
[496.423760][T17289] ? lock_acquire (include/trace/events/lock.h:24 kernel/locking/lockdep.c:5834) 
[496.423773][T17289] ? policy_nodemask (mm/mempolicy.c:2376) 
[496.423796][T17289] alloc_frozen_pages_noprof (mm/mempolicy.c:2492) 
[496.423807][T17289] alloc_slab_page (mm/slub.c:2451) 
[496.423818][T17289] allocate_slab (mm/slub.c:2627) 
[496.423835][T17289] new_slab (mm/slub.c:2675 (discriminator 9)) 
[496.423846][T17289] ___slab_alloc (mm/slub.c:3859) 
[496.423859][T17289] ? alloc_inode (fs/inode.c:348) 
[496.423884][T17289] ? alloc_inode (fs/inode.c:348) 
[496.423893][T17289] ? __might_sleep (kernel/sched/core.c:8730 (discriminator 17)) 
[496.423911][T17289] ? alloc_inode (fs/inode.c:348) 
[496.423920][T17289] __slab_alloc+0x1e/0x39 
[496.423929][T17289] kmem_cache_alloc_lru_noprof (mm/slub.c:4088 mm/slub.c:4187 mm/slub.c:4216) 
[496.423949][T17289] alloc_inode (fs/inode.c:348) 
[496.423963][T17289] iget_locked (fs/inode.c:1439) 
[496.423980][T17289] kernfs_get_inode (fs/kernfs/inode.c:251) 
[496.423997][T17289] kernfs_iop_lookup (fs/kernfs/dir.c:1236) 
[496.424014][T17289] __lookup_slow (fs/namei.c:1817) 
[496.424029][T17289] ? lookup_dcache (fs/namei.c:1793) 
[496.424078][T17289] ? rwsem_down_read_slowpath (kernel/locking/rwsem.c:1522) 
[496.424103][T17289] lookup_slow (include/linux/fs.h:894 fs/namei.c:1835) 
[496.424119][T17289] walk_component (fs/namei.c:2138) 
[496.424135][T17289] path_lookupat (fs/namei.c:2639 fs/namei.c:2663) 
[496.424153][T17289] filename_lookup (fs/namei.c:2693) 
[496.424159][T17289] ? __might_fault (mm/memory.c:6971 mm/memory.c:6965) 
[496.424173][T17289] ? may_linkat (fs/namei.c:2686) 
[496.424234][T17289] ? __kasan_check_write (mm/kasan/shadow.c:38) 
[496.424247][T17289] ? getname_flags (arch/x86/include/asm/atomic.h:28 include/linux/atomic/atomic-arch-fallback.h:503 include/linux/atomic/atomic-instrumented.h:68 fs/namei.c:132 fs/namei.c:213) 
[496.424265][T17289] user_path_at (fs/namei.c:3138) 
[496.424279][T17289] do_fchownat (fs/open.c:815) 
[496.424294][T17289] ? chown_common (fs/open.c:803) 
[496.424318][T17289] __do_sys_lchown16 (kernel/uid16.c:31 (discriminator 8)) 
[496.424327][T17289] __ia32_sys_lchown16 (kernel/uid16.c:28) 
[496.424340][T17289] ia32_sys_call (kbuild/obj/consumer/x86_64-randconfig-101-20250522/./arch/x86/include/generated/asm/syscalls_32.h:17) 
[496.424352][T17289] __do_fast_syscall_32 (arch/x86/entry/syscall_32.c:83 arch/x86/entry/syscall_32.c:306) 
[496.424368][T17289] do_fast_syscall_32 (arch/x86/entry/syscall_32.c:331) 
[496.424380][T17289] do_SYSENTER_32 (arch/x86/entry/syscall_32.c:370) 
[496.424390][T17289] entry_SYSENTER_compat_after_hwframe (arch/x86/entry/entry_64_compat.S:127) 
[  496.424399][T17289] RIP: 0023:0xf7f15589
[ 496.424408][T17289] Code: 03 74 d8 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 51 52 55 89 e5 0f 34 cd 80 <5d> 5a 59 c3 cc 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90
All code
========
   0:	03 74 d8 01          	add    0x1(%rax,%rbx,8),%esi
	...
  20:*	00 51 52             	add    %dl,0x52(%rcx)		<-- trapping instruction
  23:	55                   	push   %rbp
  24:	89 e5                	mov    %esp,%ebp
  26:	0f 34                	sysenter
  28:	cd 80                	int    $0x80
  2a:	5d                   	pop    %rbp
  2b:	5a                   	pop    %rdx
  2c:	59                   	pop    %rcx
  2d:	c3                   	ret
  2e:	cc                   	int3
  2f:	90                   	nop
  30:	90                   	nop
  31:	90                   	nop
  32:	90                   	nop
  33:	90                   	nop
  34:	90                   	nop
  35:	90                   	nop
  36:	90                   	nop
  37:	90                   	nop
  38:	90                   	nop
  39:	90                   	nop
  3a:	90                   	nop
  3b:	90                   	nop
  3c:	90                   	nop
  3d:	90                   	nop
  3e:	90                   	nop
  3f:	90                   	nop

Code starting with the faulting instruction
===========================================
   0:	5d                   	pop    %rbp
   1:	5a                   	pop    %rdx
   2:	59                   	pop    %rcx
   3:	c3                   	ret
   4:	cc                   	int3
   5:	90                   	nop
   6:	90                   	nop
   7:	90                   	nop
   8:	90                   	nop
   9:	90                   	nop
   a:	90                   	nop
   b:	90                   	nop
   c:	90                   	nop
   d:	90                   	nop
   e:	90                   	nop
   f:	90                   	nop
  10:	90                   	nop
  11:	90                   	nop
  12:	90                   	nop
  13:	90                   	nop
  14:	90                   	nop
  15:	90                   	nop


The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20250824/202508242042.e9d8711f-lkp@intel.com



-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2025-08-24 12:37 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-24 12:37 [rgushchin:bpfoom.1.6] [mm] 2bdadc8e5c: WARNING:suspicious_RCU_usage kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).