From: kernel test robot <oliver.sang@intel.com>
To: Jinjie Ruan <ruanjinjie@huawei.com>
Cc: <oe-lkp@lists.linux.dev>, <lkp@intel.com>,
<linux-kernel@vger.kernel.org>, <tglx@linutronix.de>,
<ruanjinjie@huawei.com>, <oliver.sang@intel.com>
Subject: Re: [PATCH] genirq: Refactor the irq_chip_xxx_parent()
Date: Thu, 16 May 2024 23:07:01 +0800 [thread overview]
Message-ID: <202405162230.b806f460-oliver.sang@intel.com> (raw)
In-Reply-To: <20240514131910.2614027-1-ruanjinjie@huawei.com>
Hello,
kernel test robot noticed "BUG:kernel_NULL_pointer_dereference,address" on:
commit: d3e17411835053b9cd90e3ec2a3cff4e9eea55fa ("[PATCH] genirq: Refactor the irq_chip_xxx_parent()")
url: https://github.com/intel-lab-lkp/linux/commits/Jinjie-Ruan/genirq-Refactor-the-irq_chip_xxx_parent/20240514-213011
base: https://git.kernel.org/cgit/linux/kernel/git/tip/tip.git 382d2ffe86efb1e2fa803d2cf17e5bfc34e574f3
patch link: https://lore.kernel.org/all/20240514131910.2614027-1-ruanjinjie@huawei.com/
patch subject: [PATCH] genirq: Refactor the irq_chip_xxx_parent()
in testcase: boot
compiler: gcc-13
test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G
(please refer to attached dmesg/kmsg for entire log/backtrace)
+-------------------------------------------------------+------------+------------+
| | 382d2ffe86 | d3e1741183 |
+-------------------------------------------------------+------------+------------+
| boot_successes | 18 | 0 |
| boot_failures | 0 | 18 |
| BUG:kernel_NULL_pointer_dereference,address | 0 | 18 |
| Oops:#[##] | 0 | 18 |
| RIP:apic_ack_edge | 0 | 18 |
| Kernel_panic-not_syncing:Fatal_exception_in_interrupt | 0 | 18 |
+-------------------------------------------------------+------------+------------+
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/202405162230.b806f460-oliver.sang@intel.com
[ 0.414620][ C0] BUG: kernel NULL pointer dereference, address: 0000000000000030
[ 0.414623][ C0] #PF: supervisor read access in kernel mode
[ 0.414625][ C0] #PF: error_code(0x0000) - not-present page
[ 0.414627][ C0] PGD 0 P4D 0
[ 0.414630][ C0] Oops: 0000 [#1] SMP PTI
[ 0.414633][ C0] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 6.9.0-rc1-00052-gd3e174118350 #1
[ 0.414637][ C0] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
[ 0.414639][ C0] RIP: 0010:apic_ack_edge (arch/x86/kernel/apic/vector.c:1058 (discriminator 1) arch/x86/kernel/apic/vector.c:915 (discriminator 1))
[ 0.414646][ C0] Code: 90 90 90 90 90 f3 0f 1e fa 0f 1f 44 00 00 53 48 89 fb 48 85 ff 74 4b 48 89 f8 48 89 c2 48 8b 40 28 48 85 c0 75 f4 48 8b 7a 30 <f6> 47 30 01 75 11 48 8b 43 10 8b 00 f6 c4 01 75 19 5b e9 04 12 01
All code
========
0: 90 nop
1: 90 nop
2: 90 nop
3: 90 nop
4: 90 nop
5: f3 0f 1e fa endbr64
9: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
e: 53 push %rbx
f: 48 89 fb mov %rdi,%rbx
12: 48 85 ff test %rdi,%rdi
15: 74 4b je 0x62
17: 48 89 f8 mov %rdi,%rax
1a: 48 89 c2 mov %rax,%rdx
1d: 48 8b 40 28 mov 0x28(%rax),%rax
21: 48 85 c0 test %rax,%rax
24: 75 f4 jne 0x1a
26: 48 8b 7a 30 mov 0x30(%rdx),%rdi
2a:* f6 47 30 01 testb $0x1,0x30(%rdi) <-- trapping instruction
2e: 75 11 jne 0x41
30: 48 8b 43 10 mov 0x10(%rbx),%rax
34: 8b 00 mov (%rax),%eax
36: f6 c4 01 test $0x1,%ah
39: 75 19 jne 0x54
3b: 5b pop %rbx
3c: e9 .byte 0xe9
3d: 04 12 add $0x12,%al
3f: 01 .byte 0x1
Code starting with the faulting instruction
===========================================
0: f6 47 30 01 testb $0x1,0x30(%rdi)
4: 75 11 jne 0x17
6: 48 8b 43 10 mov 0x10(%rbx),%rax
a: 8b 00 mov (%rax),%eax
c: f6 c4 01 test $0x1,%ah
f: 75 19 jne 0x2a
11: 5b pop %rbx
12: e9 .byte 0xe9
13: 04 12 add $0x12,%al
15: 01 .byte 0x1
[ 0.414649][ C0] RSP: 0000:ffffa39080003fa8 EFLAGS: 00010046
[ 0.414652][ C0] RAX: ffffffffb36738d0 RBX: 0000000000000000 RCX: 0000000046ebfda4
[ 0.414655][ C0] RDX: 0000000000000000 RSI: 0000000000000030 RDI: 0000000000000000
[ 0.414657][ C0] RBP: ffff961d001644a4 R08: 0000000000000001 R09: 0000000000000000
[ 0.414658][ C0] R10: 0000000000000000 R11: ffffa39080003ff8 R12: ffff961d00164428
[ 0.414660][ C0] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
[ 0.414664][ C0] FS: 0000000000000000(0000) GS:ffff96202fc00000(0000) knlGS:0000000000000000
[ 0.414667][ C0] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 0.414669][ C0] CR2: 0000000000000030 CR3: 00000001aba1c000 CR4: 00000000000000b0
[ 0.414671][ C0] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 0.414672][ C0] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[ 0.414674][ C0] Call Trace:
[ 0.414688][ C0] <IRQ>
[ 0.414690][ C0] ? __die (arch/x86/kernel/dumpstack.c:421 arch/x86/kernel/dumpstack.c:434)
[ 0.414696][ C0] ? page_fault_oops (arch/x86/mm/fault.c:713)
[ 0.414702][ C0] ? exc_page_fault (arch/x86/include/asm/irqflags.h:37 arch/x86/include/asm/irqflags.h:72 arch/x86/mm/fault.c:1513 arch/x86/mm/fault.c:1563)
[ 0.414707][ C0] ? asm_exc_page_fault (arch/x86/include/asm/idtentry.h:623)
[ 0.414712][ C0] ? __pfx_apic_ack_edge (arch/x86/kernel/apic/vector.c:914)
[ 0.414715][ C0] ? apic_ack_edge (arch/x86/kernel/apic/vector.c:1058 (discriminator 1) arch/x86/kernel/apic/vector.c:915 (discriminator 1))
[ 0.414718][ C0] handle_edge_irq (kernel/irq/chip.c:812)
[ 0.414724][ C0] __common_interrupt (include/asm-generic/irq_regs.h:29 (discriminator 5) arch/x86/kernel/irq.c:270 (discriminator 5))
[ 0.414730][ C0] common_interrupt (arch/x86/kernel/irq.c:247 (discriminator 35))
[ 0.414735][ C0] </IRQ>
[ 0.414736][ C0] <TASK>
[ 0.414737][ C0] asm_common_interrupt (arch/x86/include/asm/idtentry.h:693)
[ 0.414740][ C0] RIP: 0010:console_flush_all (kernel/printk/printk.c:2979)
[ 0.414744][ C0] Code: b5 88 54 24 07 e8 5c af 01 00 0f b6 54 24 07 41 88 14 24 e8 0e 1d 00 00 f7 c5 00 02 00 00 0f 84 da 00 00 00 fb 41 80 3c 24 00 <0f> 85 a3 00 00 00 49 8b 47 58 49 39 45 00 73 04 49 89 45 00 8b 05
All code
========
0: b5 88 mov $0x88,%ch
2: 54 push %rsp
3: 24 07 and $0x7,%al
5: e8 5c af 01 00 callq 0x1af66
a: 0f b6 54 24 07 movzbl 0x7(%rsp),%edx
f: 41 88 14 24 mov %dl,(%r12)
13: e8 0e 1d 00 00 callq 0x1d26
18: f7 c5 00 02 00 00 test $0x200,%ebp
1e: 0f 84 da 00 00 00 je 0xfe
24: fb sti
25: 41 80 3c 24 00 cmpb $0x0,(%r12)
2a:* 0f 85 a3 00 00 00 jne 0xd3 <-- trapping instruction
30: 49 8b 47 58 mov 0x58(%r15),%rax
34: 49 39 45 00 cmp %rax,0x0(%r13)
38: 73 04 jae 0x3e
3a: 49 89 45 00 mov %rax,0x0(%r13)
3e: 8b .byte 0x8b
3f: 05 .byte 0x5
Code starting with the faulting instruction
===========================================
0: 0f 85 a3 00 00 00 jne 0xa9
6: 49 8b 47 58 mov 0x58(%r15),%rax
a: 49 39 45 00 cmp %rax,0x0(%r13)
e: 73 04 jae 0x14
10: 49 89 45 00 mov %rax,0x0(%r13)
14: 8b .byte 0x8b
15: 05 .byte 0x5
[ 0.414747][ C0] RSP: 0000:ffffffffb5203d70 EFLAGS: 00000246
[ 0.414749][ C0] RAX: 0000000000000000 RBX: 0000000000000001 RCX: 0000000000000000
[ 0.414750][ C0] RDX: 0000000000000000 RSI: 0000000000000046 RDI: ffffffffb6214958
[ 0.414752][ C0] RBP: 0000000000000246 R08: 342e30202020205b R09: 205b5d3836303331
[ 0.414754][ C0] R10: 5b5d383630333134 R11: 205d305420202020 R12: ffffffffb5203ddf
[ 0.414756][ C0] R13: ffffffffb5203de0 R14: 0000000000000000 R15: ffffffffb56e53a0
[ 0.414761][ C0] console_unlock (kernel/printk/printk.c:3043)
[ 0.414764][ C0] vprintk_emit (kernel/printk/printk.c:3900 (discriminator 1) kernel/printk/printk.c:3935 (discriminator 1) kernel/printk/printk.c:2349 (discriminator 1))
[ 0.414767][ C0] _printk (kernel/printk/printk.c:2371)
[ 0.414773][ C0] __clocksource_register_scale (kernel/time/clocksource.c:1226)
[ 0.414778][ C0] tsc_init (arch/x86/kernel/tsc.c:1079 arch/x86/kernel/tsc.c:1620)
[ 0.414783][ C0] x86_late_time_init (arch/x86/include/asm/cpufeature.h:171 arch/x86/kernel/time.c:103)
[ 0.414787][ C0] start_kernel (init/main.c:1037)
[ 0.414792][ C0] x86_64_start_reservations (arch/x86/kernel/head64.c:495)
[ 0.414795][ C0] x86_64_start_kernel (arch/x86/kernel/head64.c:437 (discriminator 5))
[ 0.414798][ C0] common_startup_64 (arch/x86/kernel/head_64.S:421)
[ 0.414805][ C0] </TASK>
[ 0.414806][ C0] Modules linked in:
[ 0.414809][ C0] CR2: 0000000000000030
[ 0.414810][ C0] ---[ end trace 0000000000000000 ]---
[ 0.414812][ C0] RIP: 0010:apic_ack_edge (arch/x86/kernel/apic/vector.c:1058 (discriminator 1) arch/x86/kernel/apic/vector.c:915 (discriminator 1))
[ 0.414815][ C0] Code: 90 90 90 90 90 f3 0f 1e fa 0f 1f 44 00 00 53 48 89 fb 48 85 ff 74 4b 48 89 f8 48 89 c2 48 8b 40 28 48 85 c0 75 f4 48 8b 7a 30 <f6> 47 30 01 75 11 48 8b 43 10 8b 00 f6 c4 01 75 19 5b e9 04 12 01
All code
========
0: 90 nop
1: 90 nop
2: 90 nop
3: 90 nop
4: 90 nop
5: f3 0f 1e fa endbr64
9: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
e: 53 push %rbx
f: 48 89 fb mov %rdi,%rbx
12: 48 85 ff test %rdi,%rdi
15: 74 4b je 0x62
17: 48 89 f8 mov %rdi,%rax
1a: 48 89 c2 mov %rax,%rdx
1d: 48 8b 40 28 mov 0x28(%rax),%rax
21: 48 85 c0 test %rax,%rax
24: 75 f4 jne 0x1a
26: 48 8b 7a 30 mov 0x30(%rdx),%rdi
2a:* f6 47 30 01 testb $0x1,0x30(%rdi) <-- trapping instruction
2e: 75 11 jne 0x41
The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20240516/202405162230.b806f460-oliver.sang@intel.com
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
prev parent reply other threads:[~2024-05-16 15:07 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-14 13:19 [PATCH] genirq: Refactor the irq_chip_xxx_parent() Jinjie Ruan
2024-05-14 17:23 ` Thomas Gleixner
2024-05-16 15:07 ` kernel test robot [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202405162230.b806f460-oliver.sang@intel.com \
--to=oliver.sang@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lkp@intel.com \
--cc=oe-lkp@lists.linux.dev \
--cc=ruanjinjie@huawei.com \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.