Re: [PATCH] cgroup/cpuset: Adjust exception handling in generate_sched_domains()

From: kernel test robot
Date: Wed Jan 10 2024 - 10:02:44 EST




Hello,

kernel test robot noticed "canonical_address#:#[##]" on:

commit: 85f67f5f644dba9e15b9fa957f4af4745a330157 ("[PATCH] cgroup/cpuset: Adjust exception handling in generate_sched_domains()")
url: https://github.com/intel-lab-lkp/linux/commits/Markus-Elfring/cgroup-cpuset-Adjust-exception-handling-in-generate_sched_domains/20231231-152941
base: https://git.kernel.org/cgit/linux/kernel/git/tj/cgroup.git for-next
patch link: https://lore.kernel.org/all/53be5f98-6359-48b5-955e-fd203d99d3cb@xxxxxx/
patch subject: [PATCH] cgroup/cpuset: Adjust exception handling in generate_sched_domains()

in testcase: cpu-hotplug
version:
with following parameters:




compiler: gcc-12
test machine: 8 threads 1 sockets Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz (Kaby Lake) with 32G memory

(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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-lkp/202401102216.c93598af-oliver.sang@xxxxxxxxx


[ 32.391748][ T310] RESULT_ROOT=/result/cpu-hotplug/defaults/lkp-kbl-d01/debian-11.1-x86_64-20220510.cgz/x86_64-rhel-8.3-func/gcc-12/85f67f5f644dba9e15b9fa957f4af4745a330157/0
[ 32.391787][ T310]
[ 32.412091][ T310] job=/lkp/jobs/scheduled/lkp-kbl-d01/cpu-hotplug-defaults-debian-11.1-x86_64-20220510.cgz-85f67f5f644d-20240110-32485-1y7a2hd-0.yaml
[ 32.412128][ T310]
[ 32.449795][ T8] smpboot: CPU 1 is now offline
[ 32.455650][ T230] general protection fault, probably for non-canonical address 0xdffffc0000000002: 0000 [#1] PREEMPT SMP KASAN PTI
[ 32.467476][ T230] KASAN: null-ptr-deref in range [0x0000000000000010-0x0000000000000017]
[ 32.475678][ T230] CPU: 0 PID: 230 Comm: kworker/1:2 Not tainted 6.7.0-rc1-00370-g85f67f5f644d #1
[ 32.484571][ T230] Hardware name: Dell Inc. OptiPlex 7050/062KRH, BIOS 1.2.0 12/22/2016
[ 32.492601][ T230] Workqueue: events cpuset_hotplug_workfn
[ 32.498139][ T230] RIP: 0010:generate_sched_domains (kbuild/src/consumer/kernel/cgroup/cpuset.c:985)
[ 32.504106][ T230] Code: b8 ff ff bf 05 00 00 00 e8 98 60 e6 ff 48 8b 54 24 20 4c 8b 25 64 fb 71 03 48 89 c3 48 b8 00 00 00 00 00 fc ff df 48 c1 ea 03 <80> 3c 02 00 0f 85 a1 08 00 00 48 ba 00 00 00 00 00 fc ff df 48 8b
All code
========
0: b8 ff ff bf 05 mov $0x5bfffff,%eax
5: 00 00 add %al,(%rax)
7: 00 e8 add %ch,%al
9: 98 cwtl
a: 60 (bad)
b: e6 ff out %al,$0xff
d: 48 8b 54 24 20 mov 0x20(%rsp),%rdx
12: 4c 8b 25 64 fb 71 03 mov 0x371fb64(%rip),%r12 # 0x371fb7d
19: 48 89 c3 mov %rax,%rbx
1c: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax
23: fc ff df
26: 48 c1 ea 03 shr $0x3,%rdx
2a:* 80 3c 02 00 cmpb $0x0,(%rdx,%rax,1) <-- trapping instruction
2e: 0f 85 a1 08 00 00 jne 0x8d5
34: 48 ba 00 00 00 00 00 movabs $0xdffffc0000000000,%rdx
3b: fc ff df
3e: 48 rex.W
3f: 8b .byte 0x8b

Code starting with the faulting instruction
===========================================
0: 80 3c 02 00 cmpb $0x0,(%rdx,%rax,1)
4: 0f 85 a1 08 00 00 jne 0x8ab
a: 48 ba 00 00 00 00 00 movabs $0xdffffc0000000000,%rdx
11: fc ff df
14: 48 rex.W
15: 8b .byte 0x8b
[ 32.523422][ T230] RSP: 0000:ffffc900009afb58 EFLAGS: 00010202
[ 32.529307][ T230] RAX: dffffc0000000000 RBX: ffffffff8546fa20 RCX: 0000000000000004
[ 32.537078][ T230] RDX: 0000000000000002 RSI: ffffffff84bd2ac0 RDI: 0000000000000005
[ 32.544847][ T230] RBP: ffff88810c9e4e10 R08: 0000000000000000 R09: fffffbfff097a571
[ 32.552619][ T230] R10: ffffffff84bd2b8f R11: ffffffff819c9c87 R12: ffff88810c9e4c30
[ 32.560388][ T230] R13: ffffffff85470010 R14: 1ffff92000135f84 R15: dffffc0000000000
[ 32.568159][ T230] FS: 0000000000000000(0000) GS:ffff8887a5600000(0000) knlGS:0000000000000000
[ 32.576877][ T230] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 32.583270][ T230] CR2: 000055eb6b0d5000 CR3: 000000081ac5a001 CR4: 00000000003706f0
[ 32.591040][ T230] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 32.598811][ T230] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[ 32.606583][ T230] Call Trace:
[ 32.609699][ T230] <TASK>
[ 32.612477][ T230] ? die_addr (kbuild/src/consumer/arch/x86/kernel/dumpstack.c:421 kbuild/src/consumer/arch/x86/kernel/dumpstack.c:460)
[ 32.616462][ T230] ? exc_general_protection (kbuild/src/consumer/arch/x86/kernel/traps.c:700 kbuild/src/consumer/arch/x86/kernel/traps.c:642)
[ 32.621824][ T230] ? asm_exc_general_protection (kbuild/src/consumer/arch/x86/include/asm/idtentry.h:564)
[ 32.627357][ T230] ? __kasan_kmalloc (kbuild/src/consumer/mm/kasan/common.c:374 kbuild/src/consumer/mm/kasan/common.c:383)


The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20240110/202401102216.c93598af-oliver.sang@xxxxxxxxx



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