Greeting,
FYI, we noticed the following commit (built with gcc-9):
commit: ea40d7857d5250e5400f38c69ef9e17321e9c4a2 ("drm/vkms: fbdev emulation support")
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git master
in testcase: boot
on test machine: qemu-system-i386 -enable-kvm -cpu SandyBridge -smp 2 -m 16G
caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace):
+-------------------------------------------------------------------------------+------------+------------+
| | 23fae9cf97 | ea40d7857d |
+-------------------------------------------------------------------------------+------------+------------+
| WARNING:at_drivers/gpu/drm/vkms/vkms_crtc.c:#vkms_vblank_simulate | 0 | 6 |
| EIP:vkms_vblank_simulate | 0 | 6 |
+-------------------------------------------------------------------------------+------------+------------+
If you fix the issue, kindly add following tag
Reported-by: kernel test robot <[email protected]>
[ 16.115582] WARNING: CPU: 0 PID: 0 at drivers/gpu/drm/vkms/vkms_crtc.c:21 vkms_vblank_simulate (kbuild/src/consumer/drivers/gpu/drm/vkms/vkms_crtc.c:21 (discriminator 1))
[ 16.115593] Modules linked in:
[ 16.117865] testing the IO APIC.......................
[ 16.120871] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.9.0-rc5-01227-gea40d7857d525 #1
[ 16.120871] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014
[ 16.120871] EIP: vkms_vblank_simulate (kbuild/src/consumer/drivers/gpu/drm/vkms/vkms_crtc.c:21 (discriminator 1))
[ 16.120871] Code: 51 8b 75 ec 56 8b 87 58 01 00 00 50 8b 87 54 01 00 00 50 68 3c be 78 d4 6a 02 e8 1b d7 fd ff 83 c4 18 8b 45 e8 e9 77 ff ff ff <0f> 0b e9 e9 fe ff ff 8d b4 26 00 00 00 00 66 90 66 66 66 66 90 55
All code
========
0: 51 push %rcx
1: 8b 75 ec mov -0x14(%rbp),%esi
4: 56 push %rsi
5: 8b 87 58 01 00 00 mov 0x158(%rdi),%eax
b: 50 push %rax
c: 8b 87 54 01 00 00 mov 0x154(%rdi),%eax
12: 50 push %rax
13: 68 3c be 78 d4 pushq $0xffffffffd478be3c
18: 6a 02 pushq $0x2
1a: e8 1b d7 fd ff callq 0xfffffffffffdd73a
1f: 83 c4 18 add $0x18,%esp
22: 8b 45 e8 mov -0x18(%rbp),%eax
25: e9 77 ff ff ff jmpq 0xffffffffffffffa1
2a:* 0f 0b ud2 <-- trapping instruction
2c: e9 e9 fe ff ff jmpq 0xffffffffffffff1a
31: 8d b4 26 00 00 00 00 lea 0x0(%rsi,%riz,1),%esi
38: 66 90 xchg %ax,%ax
3a: 66 66 66 66 90 data16 data16 data16 xchg %ax,%ax
3f: 55 push %rbp
Code starting with the faulting instruction
===========================================
0: 0f 0b ud2
2: e9 e9 fe ff ff jmpq 0xfffffffffffffef0
7: 8d b4 26 00 00 00 00 lea 0x0(%rsi,%riz,1),%esi
e: 66 90 xchg %ax,%ax
10: 66 66 66 66 90 data16 data16 data16 xchg %ax,%ax
15: 55 push %rbp
[ 16.120871] EAX: 00000000 EBX: d79bb594 ECX: 00000000 EDX: 00000001
[ 16.120871] ESI: 00000003 EDI: 00000000 EBP: d48e3df0 ESP: d48e3dd8
[ 16.131633] IO APIC #0......
[ 16.120871] DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 EFLAGS: 00210006
[ 16.120871] CR0: 80050033 CR2: b7f93104 CR3: 14e70000 CR4: 000406d0
[ 16.120871] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
[ 16.120871] DR6: fffe0ff0 DR7: 00000400
[ 16.120871] Call Trace:
[ 16.120871] __hrtimer_run_queues (kbuild/src/consumer/kernel/time/hrtimer.c:1524 kbuild/src/consumer/kernel/time/hrtimer.c:1588)
[ 16.120871] ? vkms_disable_vblank (kbuild/src/consumer/drivers/gpu/drm/vkms/vkms_crtc.c:11)
[ 16.137585] .... register #00: 00000000
[ 16.137596] ....... : physical APIC id: 00
[ 16.120871] hrtimer_run_queues (kbuild/src/consumer/kernel/time/hrtimer.c:1764)
[ 16.120871] run_local_timers (kbuild/src/consumer/kernel/time/timer.c:1782)
[ 16.143445] ....... : Delivery Type: 0
[ 16.120871] update_process_times (kbuild/src/consumer/kernel/time/timer.c:1710)
[ 16.120871] tick_nohz_handler (kbuild/src/consumer/kernel/time/tick-sched.c:177 kbuild/src/consumer/kernel/time/tick-sched.c:1227)
[ 16.152915] ....... : LTS : 0
[ 16.120871] ? sysvec_call_function_single (kbuild/src/consumer/arch/x86/kernel/apic/apic.c:1091)
[ 16.120871] __sysvec_apic_timer_interrupt (kbuild/src/consumer/arch/x86/include/asm/jump_label.h:25 kbuild/src/consumer/include/linux/jump_label.h:200 kbuild/src/consumer/arch/x86/include/asm/trace/irq_vectors.h:41 kbuild/src/consumer/arch/x86/kernel/apic/apic.c:1098)
[ 16.158114] .... register #01: 00170011
[ 16.120871] ? sysvec_call_function (kbuild/src/consumer/arch/x86/include/asm/irq_stack.h:45 kbuild/src/consumer/arch/x86/kernel/smp.c:234)
[ 16.120871] sysvec_apic_timer_interrupt (kbuild/src/consumer/arch/x86/kernel/apic/apic.c:1091)
[ 16.163998] ....... : max redirection entries: 17
[ 16.120871] handle_exception (kbuild/src/consumer/arch/x86/entry/entry_32.S:1172)
[ 16.169113] ....... : PRQ implemented: 0
[ 16.120871] EIP: default_idle (kbuild/src/consumer/arch/x86/kernel/process.c:688)
[ 16.120871] Code: e8 43 6f f9 fe e9 2e 00 00 00 6a 01 b9 01 00 00 00 ba 01 00 00 00 b8 40 f6 ac d4 e8 58 8c f9 fe 0f 00 2d 04 14 01 d4 5a fb f4 <c9> c3 8d b4 26 00 00 00 00 8d 74 26 00 90 6a 01 b9 01 00 00 00 31
All code
========
0: e8 43 6f f9 fe callq 0xfffffffffef96f48
5: e9 2e 00 00 00 jmpq 0x38
a: 6a 01 pushq $0x1
c: b9 01 00 00 00 mov $0x1,%ecx
11: ba 01 00 00 00 mov $0x1,%edx
16: b8 40 f6 ac d4 mov $0xd4acf640,%eax
1b: e8 58 8c f9 fe callq 0xfffffffffef98c78
20: 0f 00 2d 04 14 01 d4 verw -0x2bfeebfc(%rip) # 0xffffffffd401142b
27: 5a pop %rdx
28: fb sti
29: f4 hlt
2a:* c9 leaveq <-- trapping instruction
2b: c3 retq
2c: 8d b4 26 00 00 00 00 lea 0x0(%rsi,%riz,1),%esi
33: 8d 74 26 00 lea 0x0(%rsi,%riz,1),%esi
37: 90 nop
38: 6a 01 pushq $0x1
3a: b9 01 00 00 00 mov $0x1,%ecx
3f: 31 .byte 0x31
Code starting with the faulting instruction
===========================================
0: c9 leaveq
1: c3 retq
2: 8d b4 26 00 00 00 00 lea 0x0(%rsi,%riz,1),%esi
9: 8d 74 26 00 lea 0x0(%rsi,%riz,1),%esi
d: 90 nop
e: 6a 01 pushq $0x1
10: b9 01 00 00 00 mov $0x1,%ecx
15: 31 .byte 0x31
[ 16.173749] ....... : IO APIC version: 11
[ 16.120871] EAX: 00000001 EBX: 00000000 ECX: 00000001 EDX: 00000000
[ 16.120871] ESI: d491f440 EDI: 00000000 EBP: d48e3f0c ESP: d48e3f0c
[ 16.178496] .... register #02: 00000000
[ 16.120871] DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 EFLAGS: 00200206
[ 16.120871] ? sysvec_call_function_single (kbuild/src/consumer/arch/x86/kernel/apic/apic.c:1091)
[ 16.183355] ....... : arbitration: 00
[ 16.120871] ? sysvec_call_function_single (kbuild/src/consumer/arch/x86/kernel/apic/apic.c:1091)
[ 16.187845] .... IRQ redirection table:
[ 16.187856] IOAPIC 0:
[ 16.120871] ? default_idle (kbuild/src/consumer/arch/x86/kernel/process.c:688)
[ 16.120871] arch_cpu_idle (kbuild/src/consumer/arch/x86/kernel/process.c:680)
[ 16.192421] pin00, disabled, edge , high, V(00), IRR(0), S(0), physical, D(00), M(0)
[ 16.120871] default_idle_call (kbuild/src/consumer/kernel/sched/idle.c:99)
[ 16.197198] pin01, enabled , edge , high, V(22), IRR(0), S(0), logical , D(01), M(0)
[ 16.120871] do_idle (kbuild/src/consumer/kernel/sched/idle.c:169 kbuild/src/consumer/kernel/sched/idle.c:273)
[ 16.120871] ? schedule_preempt_disabled (kbuild/src/consumer/arch/x86/include/asm/preempt.h:79 kbuild/src/consumer/kernel/sched/core.c:4182 kbuild/src/consumer/kernel/sched/core.c:4662)
[ 16.201782] pin02, enabled , edge , high, V(30), IRR(0), S(0), logical , D(01), M(0)
[ 16.120871] cpu_startup_entry (kbuild/src/consumer/kernel/sched/idle.c:368 (discriminator 1))
[ 16.120871] rest_init (kbuild/src/consumer/init/main.c:709)
[ 16.120871] arch_call_rest_init+0xd/0x19
[ 16.120871] start_kernel (kbuild/src/consumer/init/main.c:1050)
[ 16.120871] i386_start_kernel (kbuild/src/consumer/arch/x86/kernel/head32.c:57)
[ 16.120871] startup_32_smp (kbuild/src/consumer/arch/x86/kernel/head_32.S:328)
[ 16.120871] irq event stamp: 25184
[ 16.120871] hardirqs last enabled at (25181): sysvec_call_function_single (kbuild/src/consumer/arch/x86/kernel/smp.c:243)
[ 16.120871] hardirqs last disabled at (25182): sysvec_apic_timer_interrupt (kbuild/src/consumer/arch/x86/kernel/apic/apic.c:1091)
[ 16.206523] pin03, disabled, edge , high, V(00), IRR(0), S(0), physical, D(00), M(0)
[ 16.120871] softirqs last enabled at (25184): _local_bh_enable (kbuild/src/consumer/kernel/softirq.c:169 (discriminator 3))
[ 16.120871] softirqs last disabled at (25183): irq_enter_rcu (kbuild/src/consumer/include/linux/bottom_half.h:19 kbuild/src/consumer/kernel/softirq.c:358)
[ 16.211417] pin04, disabled, edge , high, V(00), IRR(0), S(0), physical, D(00), M(0)
[ 16.120871] ---[ end trace 285b8d419add692b ]---
[ 16.222084] ------------[ cut here ]------------
[ 16.222471] pin05, disabled, edge , high, V(00), IRR(0), S(0), physical, D(00), M(0)
To reproduce:
# build kernel
cd linux
cp config-5.9.0-rc5-01227-gea40d7857d525 .config
make HOSTCC=gcc-9 CC=gcc-9 ARCH=i386 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/[email protected] Intel Corporation
Thanks,
Oliver Sang