Greeting,
FYI, we noticed the following commit (built with gcc-9):
commit: cb1c81467af355829a4a9d8fa3f92ffab355d93c ("drm/ttm: flip the switch for
driver allocated resources v2")
git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
in testcase: rcutorture
version:
with following parameters:
runtime: 300s
test: cpuhotplug
torture_type: srcu
test-description: rcutorture is rcutorture kernel module load/unload test.
test-url:
https://www.kernel.org/doc/Documentation/RCU/torture.txt
on test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G
caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace):
+---------------------------------------------+------------+------------+
| | d3bcb4b02f | cb1c81467a |
+---------------------------------------------+------------+------------+
| boot_successes | 6 | 0 |
| boot_failures | 0 | 6 |
| BUG:unable_to_handle_page_fault_for_address | 0 | 6 |
| Oops:#[##] | 0 | 6 |
| RIP:ttm_bo_handle_move_mem[ttm] | 0 | 6 |
| Kernel_panic-not_syncing:Fatal_exception | 0 | 6 |
+---------------------------------------------+------------+------------+
If you fix the issue, kindly add following tag
Reported-by: kernel test robot <oliver.sang(a)intel.com>
[ 9.007194] BUG: unable to handle page fault for address: 0000030000000410
[ 9.007197] #PF: supervisor read access in kernel mode
[ 9.007199] #PF: error_code(0x0000) - not-present page
[ 9.007201] PGD 0 P4D 0
[ 9.007205] Oops: 0000 [#1] SMP PTI
[ 9.007209] CPU: 0 PID: 174 Comm: systemd-udevd Not tainted
5.13.0-rc3-00848-gcb1c81467af3 #1
[ 9.007212] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1
04/01/2014
[ 9.007214] RIP: 0010:ttm_bo_handle_move_mem
(kbuild/src/consumer/include/drm/ttm/ttm_device.h:287
kbuild/src/consumer/drivers/gpu/drm/ttm/ttm_bo.c:171) ttm
[ 9.007225] Code: 48 89 fb 48 83 ec 10 48 8b 87 68 01 00 00 4c 8b af 48 01 00 00 89 54 24
04 48 63 40 10 49 8b 84 c5 80 00 00 00 48 89 44 24 08 <48> 63 46 10 49 8b ac c5 80
00 00 00 e8 ad fe ff ff 80 7d 01 00 0f
All code
========
0: 48 89 fb mov %rdi,%rbx
3: 48 83 ec 10 sub $0x10,%rsp
7: 48 8b 87 68 01 00 00 mov 0x168(%rdi),%rax
e: 4c 8b af 48 01 00 00 mov 0x148(%rdi),%r13
15: 89 54 24 04 mov %edx,0x4(%rsp)
19: 48 63 40 10 movslq 0x10(%rax),%rax
1d: 49 8b 84 c5 80 00 00 mov 0x80(%r13,%rax,8),%rax
24: 00
25: 48 89 44 24 08 mov %rax,0x8(%rsp)
2a:* 48 63 46 10 movslq 0x10(%rsi),%rax <-- trapping instruction
2e: 49 8b ac c5 80 00 00 mov 0x80(%r13,%rax,8),%rbp
35: 00
36: e8 ad fe ff ff callq 0xfffffffffffffee8
3b: 80 7d 01 00 cmpb $0x0,0x1(%rbp)
3f: 0f .byte 0xf
Code starting with the faulting instruction
===========================================
0: 48 63 46 10 movslq 0x10(%rsi),%rax
4: 49 8b ac c5 80 00 00 mov 0x80(%r13,%rax,8),%rbp
b: 00
c: e8 ad fe ff ff callq 0xfffffffffffffebe
11: 80 7d 01 00 cmpb $0x0,0x1(%rbp)
15: 0f .byte 0xf
[ 9.007228] RSP: 0018:ffffba428019f690 EFLAGS: 00010286
[ 9.007230] RAX: ffff9682d2205028 RBX: ffff9684f7ea2000 RCX: ffffba428019f750
[ 9.007232] RDX: 0000000000000000 RSI: 0000030000000400 RDI: ffff9684f7ea2000
[ 9.007234] RBP: ffffba428019f6f8 R08: ffffba428019f6f8 R09: ffff9684f90eac70
[ 9.007235] R10: ffff9684f90eacf0 R11: 0000000000000006 R12: ffffba428019f750
[ 9.007237] R13: ffff9682d2205010 R14: ffffba428019f6f8 R15: 0000030000000400
[ 9.007239] FS: 00007fc0f709ed40(0000) GS:ffff9685afc00000(0000)
knlGS:0000000000000000
[ 9.007241] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 9.007243] CR2: 0000030000000410 CR3: 0000000378520000 CR4: 00000000000406f0
[ 9.007251] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 9.007253] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[ 9.007254] Call Trace:
[ 9.007260] ttm_bo_validate (kbuild/src/consumer/drivers/gpu/drm/ttm/ttm_bo.c:883
kbuild/src/consumer/drivers/gpu/drm/ttm/ttm_bo.c:962) ttm
[ 9.007268] drm_gem_vram_pin_locked
(kbuild/src/consumer/drivers/gpu/drm/drm_gem_vram_helper.c:293) drm_vram_helper
[ 9.007275] drm_gem_vram_pin
(kbuild/src/consumer/drivers/gpu/drm/drm_gem_vram_helper.c:332) drm_vram_helper
[ 9.007279] drm_gem_vram_plane_helper_prepare_fb
(kbuild/src/consumer/drivers/gpu/drm/drm_gem_vram_helper.c:679) drm_vram_helper
[ 9.007284] drm_atomic_helper_prepare_planes
(kbuild/src/consumer/drivers/gpu/drm/drm_atomic_helper.c:2414
kbuild/src/consumer/drivers/gpu/drm/drm_atomic_helper.c:2381) drm_kms_helper
[ 9.007313] drm_atomic_helper_commit
(kbuild/src/consumer/drivers/gpu/drm/drm_atomic_helper.c:1839
kbuild/src/consumer/drivers/gpu/drm/drm_atomic_helper.c:1816) drm_kms_helper
[ 9.007336] drm_client_modeset_commit_atomic
(kbuild/src/consumer/drivers/gpu/drm/drm_client_modeset.c:1043) drm
[ 9.007386] drm_client_modeset_commit_locked
(kbuild/src/consumer/drivers/gpu/drm/drm_client_modeset.c:1146) drm
[ 9.007416] drm_client_modeset_commit
(kbuild/src/consumer/drivers/gpu/drm/drm_client_modeset.c:1174) drm
[ 9.007465] __drm_fb_helper_restore_fbdev_mode_unlocked
(kbuild/src/consumer/drivers/gpu/drm/drm_fb_helper.c:256
kbuild/src/consumer/drivers/gpu/drm/drm_fb_helper.c:231) drm_kms_helper
[ 9.007484] drm_fb_helper_set_par
(kbuild/src/consumer/drivers/gpu/drm/drm_fb_helper.c:1405) drm_kms_helper
[ 9.007504] fbcon_init (kbuild/src/consumer/drivers/video/fbdev/core/fbcon.c:1127)
[ 9.007532] visual_init (kbuild/src/consumer/drivers/tty/vt/vt.c:1075)
[ 9.007539] do_bind_con_driver (kbuild/src/consumer/drivers/tty/vt/vt.c:3664)
[ 9.007542] do_take_over_console (kbuild/src/consumer/drivers/tty/vt/vt.c:4242)
[ 9.007546] do_fbcon_takeover
(kbuild/src/consumer/drivers/video/fbdev/core/fbcon.c:555)
[ 9.007549] register_framebuffer (kbuild/src/consumer/include/linux/fb.h:641
kbuild/src/consumer/drivers/video/fbdev/core/fbmem.c:1650
kbuild/src/consumer/drivers/video/fbdev/core/fbmem.c:1817)
[ 9.007555] __drm_fb_helper_initial_config_and_unlock
(kbuild/src/consumer/drivers/gpu/drm/drm_fb_helper.c:1855) drm_kms_helper
[ 9.007574] drm_fbdev_client_hotplug
(kbuild/src/consumer/drivers/gpu/drm/drm_fb_helper.c:1921
kbuild/src/consumer/drivers/gpu/drm/drm_fb_helper.c:1913
kbuild/src/consumer/drivers/gpu/drm/drm_fb_helper.c:2423) drm_kms_helper
[ 9.007592] drm_fbdev_generic_setup
(kbuild/src/consumer/drivers/gpu/drm/drm_fb_helper.c:2510) drm_kms_helper
[ 9.007610] bochs_pci_probe (kbuild/src/consumer/drivers/gpu/drm/bochs/bochs_drv.c:136
kbuild/src/consumer/drivers/gpu/drm/bochs/bochs_drv.c:100) bochs_drm
[ 9.007616] local_pci_probe (kbuild/src/consumer/drivers/pci/pci-driver.c:309)
[ 9.007622] ? __cond_resched (kbuild/src/consumer/kernel/sched/core.c:6994)
[ 9.007628] pci_device_probe (kbuild/src/consumer/drivers/pci/pci-driver.c:366
kbuild/src/consumer/drivers/pci/pci-driver.c:391
kbuild/src/consumer/drivers/pci/pci-driver.c:434)
[ 9.007631] really_probe (kbuild/src/consumer/drivers/base/dd.c:576)
[ 9.007638] driver_probe_device (kbuild/src/consumer/drivers/base/dd.c:763)
[ 9.007643] device_driver_attach (kbuild/src/consumer/drivers/base/dd.c:1039)
[ 9.007647] __driver_attach (kbuild/src/consumer/drivers/base/dd.c:1119)
[ 9.007651] ? device_driver_attach (kbuild/src/consumer/drivers/base/dd.c:1071)
[ 9.007654] ? device_driver_attach (kbuild/src/consumer/drivers/base/dd.c:1071)
[ 9.007658] bus_for_each_dev (kbuild/src/consumer/drivers/base/bus.c:305)
[ 9.007663] bus_add_driver (kbuild/src/consumer/drivers/base/bus.c:623)
[ 9.007667] driver_register (kbuild/src/consumer/drivers/base/driver.c:171)
[ 9.007671] ? 0xffffffffc067e000
[ 9.007673] do_one_initcall (kbuild/src/consumer/init/main.c:1249)
[ 9.007681] ? __cond_resched (kbuild/src/consumer/kernel/sched/core.c:6994)
[ 9.007684] ? kmem_cache_alloc_trace (kbuild/src/consumer/mm/slab.h:499
kbuild/src/consumer/mm/slub.c:2834 kbuild/src/consumer/mm/slub.c:2921
kbuild/src/consumer/mm/slub.c:2938)
[ 9.007690] do_init_module (kbuild/src/consumer/kernel/module.c:3664)
[ 9.007697] load_module (kbuild/src/consumer/kernel/module.c:4064)
[ 9.007701] ? __kernel_read (kbuild/src/consumer/fs/read_write.c:454 (discriminator 1))
[ 9.007708] ? __do_sys_finit_module (kbuild/src/consumer/kernel/module.c:4155)
[ 9.007711] __do_sys_finit_module (kbuild/src/consumer/kernel/module.c:4155)
[ 9.007717] do_syscall_64 (kbuild/src/consumer/arch/x86/entry/common.c:47)
[ 9.007722] entry_SYSCALL_64_after_hwframe
(kbuild/src/consumer/arch/x86/entry/entry_64.S:112)
[ 9.007726] RIP: 0033:0x7fc0f7888f59
[ 9.007729] Code: 00 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 89 f8 48 89 f7 48
89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3
48 8b 0d 07 6f 0c 00 f7 d8 64 89 01 48
All code
========
0: 00 c3 add %al,%bl
2: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1)
9: 00 00 00
c: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
11: 48 89 f8 mov %rdi,%rax
14: 48 89 f7 mov %rsi,%rdi
17: 48 89 d6 mov %rdx,%rsi
1a: 48 89 ca mov %rcx,%rdx
1d: 4d 89 c2 mov %r8,%r10
20: 4d 89 c8 mov %r9,%r8
23: 4c 8b 4c 24 08 mov 0x8(%rsp),%r9
28: 0f 05 syscall
2a:* 48 3d 01 f0 ff ff cmp $0xfffffffffffff001,%rax <-- trapping instruction
30: 73 01 jae 0x33
32: c3 retq
33: 48 8b 0d 07 6f 0c 00 mov 0xc6f07(%rip),%rcx # 0xc6f41
3a: f7 d8 neg %eax
3c: 64 89 01 mov %eax,%fs:(%rcx)
3f: 48 rex.W
Code starting with the faulting instruction
===========================================
0: 48 3d 01 f0 ff ff cmp $0xfffffffffffff001,%rax
6: 73 01 jae 0x9
8: c3 retq
9: 48 8b 0d 07 6f 0c 00 mov 0xc6f07(%rip),%rcx # 0xc6f17
10: f7 d8 neg %eax
12: 64 89 01 mov %eax,%fs:(%rcx)
15: 48 rex.W
To reproduce:
# build kernel
cd linux
cp config-5.13.0-rc3-00848-gcb1c81467af3 .config
make HOSTCC=gcc-9 CC=gcc-9 ARCH=x86_64 olddefconfig prepare modules_prepare bzImage
git clone
https://github.com/intel/lkp-tests.git
cd lkp-tests
bin/lkp qemu -k <bzImage> job-script # job-script is attached in this email
---
0DAY/LKP+ Test Infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/lkp@lists.01.org Intel Corporation
Thanks,
Oliver Sang