2023-07-05 23:20:14

by syzbot

[permalink] [raw]
Subject: [syzbot] [serial?] general protection fault in serial8250_tx_chars

Hello,

syzbot found the following issue on:

HEAD commit: 6cd06ab12d1a gup: make the stack expansion warning a bit m..
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=13fdf29ca80000
kernel config: https://syzkaller.appspot.com/x/.config?x=9b64180aaf312512
dashboard link: https://syzkaller.appspot.com/bug?extid=837b8c9032c053262db8
compiler: Debian clang version 15.0.7, GNU ld (GNU Binutils for Debian) 2.35.2

Unfortunately, I don't have any reproducer for this issue yet.

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/6b9ac6b68fe1/disk-6cd06ab1.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/694d14350cd9/vmlinux-6cd06ab1.xz
kernel image: https://storage.googleapis.com/syzbot-assets/0344e65f0f1c/bzImage-6cd06ab1.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: [email protected]

general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]
CPU: 1 PID: 12722 Comm: kworker/1:25 Not tainted 6.4.0-syzkaller-11479-g6cd06ab12d1a #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/27/2023
Workqueue: pm pm_runtime_work
RIP: 0010:serial8250_tx_chars+0x299/0x8b0 drivers/tty/serial/8250/8250_port.c:1813
Code: 5d 36 26 fd 48 8b 2b 48 8b 44 24 20 42 0f b6 04 38 84 c0 0f 85 8f 02 00 00 48 8b 04 24 48 63 00 48 01 c5 48 89 e8 48 c1 e8 03 <42> 0f b6 04 38 84 c0 0f 85 91 02 00 00 0f b6 6d 00 48 8b 44 24 60
RSP: 0018:ffffc9000abdf8d0 EFLAGS: 00010046
RAX: 0000000000000000 RBX: ffff88801f1c0fd0 RCX: 1ffffffff246560f
RDX: 1ffffffff2465659 RSI: 0000000000000000 RDI: ffffffff9232b2d0
RBP: 0000000000000000 R08: ffffffff84be7c90 R09: fffff5200157bf14
R10: dffffc0000000000 R11: fffff5200157bf14 R12: 0000000000000010
R13: ffffffff9232b120 R14: ffffffff9232b020 R15: dffffc0000000000
FS: 0000000000000000(0000) GS:ffff8880b9900000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020404030 CR3: 000000000d130000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<TASK>
__start_tx+0x312/0x450 drivers/tty/serial/8250/8250_port.c:1547
serial_port_runtime_resume+0x1ec/0x2a0 drivers/tty/serial/serial_port.c:40
__rpm_callback+0x2b9/0x7a0 drivers/base/power/runtime.c:392
rpm_callback drivers/base/power/runtime.c:446 [inline]
rpm_resume+0x10b1/0x1af0 drivers/base/power/runtime.c:912
pm_runtime_work+0x147/0x210 drivers/base/power/runtime.c:977
process_one_work+0x92c/0x12c0 kernel/workqueue.c:2597
worker_thread+0xa63/0x1210 kernel/workqueue.c:2748
kthread+0x2b8/0x350 kernel/kthread.c:389
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:308
</TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:serial8250_tx_chars+0x299/0x8b0 drivers/tty/serial/8250/8250_port.c:1813
Code: 5d 36 26 fd 48 8b 2b 48 8b 44 24 20 42 0f b6 04 38 84 c0 0f 85 8f 02 00 00 48 8b 04 24 48 63 00 48 01 c5 48 89 e8 48 c1 e8 03 <42> 0f b6 04 38 84 c0 0f 85 91 02 00 00 0f b6 6d 00 48 8b 44 24 60
RSP: 0018:ffffc9000abdf8d0 EFLAGS: 00010046
RAX: 0000000000000000 RBX: ffff88801f1c0fd0 RCX: 1ffffffff246560f
RDX: 1ffffffff2465659 RSI: 0000000000000000 RDI: ffffffff9232b2d0
RBP: 0000000000000000 R08: ffffffff84be7c90 R09: fffff5200157bf14
R10: dffffc0000000000 R11: fffff5200157bf14 R12: 0000000000000010
R13: ffffffff9232b120 R14: ffffffff9232b020 R15: dffffc0000000000
FS: 0000000000000000(0000) GS:ffff8880b9900000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020404030 CR3: 000000000d130000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
0: 5d pop %rbp
1: 36 26 fd ss es std
4: 48 8b 2b mov (%rbx),%rbp
7: 48 8b 44 24 20 mov 0x20(%rsp),%rax
c: 42 0f b6 04 38 movzbl (%rax,%r15,1),%eax
11: 84 c0 test %al,%al
13: 0f 85 8f 02 00 00 jne 0x2a8
19: 48 8b 04 24 mov (%rsp),%rax
1d: 48 63 00 movslq (%rax),%rax
20: 48 01 c5 add %rax,%rbp
23: 48 89 e8 mov %rbp,%rax
26: 48 c1 e8 03 shr $0x3,%rax
* 2a: 42 0f b6 04 38 movzbl (%rax,%r15,1),%eax <-- trapping instruction
2f: 84 c0 test %al,%al
31: 0f 85 91 02 00 00 jne 0x2c8
37: 0f b6 6d 00 movzbl 0x0(%rbp),%ebp
3b: 48 8b 44 24 60 mov 0x60(%rsp),%rax


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at [email protected].

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the bug is already fixed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want to change bug's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the bug is a duplicate of another bug, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup


2023-07-22 12:28:31

by syzbot

[permalink] [raw]
Subject: Re: [syzbot] [serial?] general protection fault in serial8250_tx_chars

syzbot has found a reproducer for the following issue on:

HEAD commit: d192f5382581 Merge tag 'arm64-fixes' of git://git.kernel.o..
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=12d03ff4a80000
kernel config: https://syzkaller.appspot.com/x/.config?x=a4507c291b5ab5d4
dashboard link: https://syzkaller.appspot.com/bug?extid=837b8c9032c053262db8
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=17e4fe52a80000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/517e5a5be15c/disk-d192f538.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/59d41b43c30c/vmlinux-d192f538.xz
kernel image: https://storage.googleapis.com/syzbot-assets/99ed26179ccf/bzImage-d192f538.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: [email protected]

general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]
CPU: 0 PID: 5137 Comm: kworker/0:4 Not tainted 6.5.0-rc2-syzkaller-00307-gd192f5382581 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2023
Workqueue: pm pm_runtime_work
RIP: 0010:serial8250_tx_chars+0x299/0x8b0 drivers/tty/serial/8250/8250_port.c:1813
Code: 8d cc 25 fd 48 8b 2b 48 8b 44 24 20 42 0f b6 04 38 84 c0 0f 85 8f 02 00 00 48 8b 04 24 48 63 00 48 01 c5 48 89 e8 48 c1 e8 03 <42> 0f b6 04 38 84 c0 0f 85 91 02 00 00 0f b6 6d 00 48 8b 44 24 60
RSP: 0018:ffffc9000432f8b0 EFLAGS: 00010046
RAX: 0000000000000000 RBX: ffff88801f490fd0 RCX: 1ffffffff246641b
RDX: 1ffffffff2466465 RSI: 0000000000000000 RDI: ffffffff92332330
RBP: 0000000000000000 R08: ffffffff84bef450 R09: fffff52000865f10
R10: dffffc0000000000 R11: fffff52000865f10 R12: 0000000000000010
R13: ffffffff92332180 R14: ffffffff92332080 R15: dffffc0000000000
FS: 0000000000000000(0000) GS:ffff8880b9800000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000555555c2f938 CR3: 000000002b259000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<TASK>
__start_tx+0x312/0x450 drivers/tty/serial/8250/8250_port.c:1547
serial_port_runtime_resume+0x1ec/0x2a0 drivers/tty/serial/serial_port.c:40
__rpm_callback+0x2b9/0x7a0 drivers/base/power/runtime.c:392
rpm_callback drivers/base/power/runtime.c:446 [inline]
rpm_resume+0x10b1/0x1af0 drivers/base/power/runtime.c:912
pm_runtime_work+0x147/0x210 drivers/base/power/runtime.c:977
process_one_work+0x92c/0x12c0 kernel/workqueue.c:2597
worker_thread+0xa63/0x1210 kernel/workqueue.c:2748
kthread+0x2b8/0x350 kernel/kthread.c:389
ret_from_fork+0x2e/0x60 arch/x86/kernel/process.c:145
ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:296
RIP: 0000:0x0
Code: Unable to access opcode bytes at 0xffffffffffffffd6.
RSP: 0000:0000000000000000 EFLAGS: 00000000 ORIG_RAX: 0000000000000000
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
</TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:serial8250_tx_chars+0x299/0x8b0 drivers/tty/serial/8250/8250_port.c:1813
Code: 8d cc 25 fd 48 8b 2b 48 8b 44 24 20 42 0f b6 04 38 84 c0 0f 85 8f 02 00 00 48 8b 04 24 48 63 00 48 01 c5 48 89 e8 48 c1 e8 03 <42> 0f b6 04 38 84 c0 0f 85 91 02 00 00 0f b6 6d 00 48 8b 44 24 60
RSP: 0018:ffffc9000432f8b0 EFLAGS: 00010046
RAX: 0000000000000000 RBX: ffff88801f490fd0 RCX: 1ffffffff246641b
RDX: 1ffffffff2466465 RSI: 0000000000000000 RDI: ffffffff92332330
RBP: 0000000000000000 R08: ffffffff84bef450 R09: fffff52000865f10
R10: dffffc0000000000 R11: fffff52000865f10 R12: 0000000000000010
R13: ffffffff92332180 R14: ffffffff92332080 R15: dffffc0000000000
FS: 0000000000000000(0000) GS:ffff8880b9800000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: ffffffffffffffd6 CR3: 000000002b259000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess), 1 bytes skipped:
0: cc int3
1: 25 fd 48 8b 2b and $0x2b8b48fd,%eax
6: 48 8b 44 24 20 mov 0x20(%rsp),%rax
b: 42 0f b6 04 38 movzbl (%rax,%r15,1),%eax
10: 84 c0 test %al,%al
12: 0f 85 8f 02 00 00 jne 0x2a7
18: 48 8b 04 24 mov (%rsp),%rax
1c: 48 63 00 movslq (%rax),%rax
1f: 48 01 c5 add %rax,%rbp
22: 48 89 e8 mov %rbp,%rax
25: 48 c1 e8 03 shr $0x3,%rax
* 29: 42 0f b6 04 38 movzbl (%rax,%r15,1),%eax <-- trapping instruction
2e: 84 c0 test %al,%al
30: 0f 85 91 02 00 00 jne 0x2c7
36: 0f b6 6d 00 movzbl 0x0(%rbp),%ebp
3a: 48 8b 44 24 60 mov 0x60(%rsp),%rax


---
If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.

2023-07-23 01:20:03

by syzbot

[permalink] [raw]
Subject: Re: [syzbot] [serial?] general protection fault in serial8250_tx_chars

Hello,

syzbot has tested the proposed patch and the reproducer did not trigger any issue:

Reported-and-tested-by: [email protected]

Tested on:

commit: d192f538 Merge tag 'arm64-fixes' of git://git.kernel.o..
git tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
console output: https://syzkaller.appspot.com/x/log.txt?x=123825e6a80000
kernel config: https://syzkaller.appspot.com/x/.config?x=a4507c291b5ab5d4
dashboard link: https://syzkaller.appspot.com/bug?extid=837b8c9032c053262db8
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
patch: https://syzkaller.appspot.com/x/patch.diff?x=16e80b9aa80000

Note: testing is done by a robot and is best-effort only.

2024-04-05 22:25:30

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [syzbot] [serial?] general protection fault in serial8250_tx_chars

Sat, Jul 22, 2023 at 05:16:21AM -0700, syzbot kirjoitti:
> syzbot has found a reproducer for the following issue on:
>
> HEAD commit: d192f5382581 Merge tag 'arm64-fixes' of git://git.kernel.o..
> git tree: upstream
> console output: https://syzkaller.appspot.com/x/log.txt?x=12d03ff4a80000
> kernel config: https://syzkaller.appspot.com/x/.config?x=a4507c291b5ab5d4
> dashboard link: https://syzkaller.appspot.com/bug?extid=837b8c9032c053262db8
> compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=17e4fe52a80000
>
> Downloadable assets:
> disk image: https://storage.googleapis.com/syzbot-assets/517e5a5be15c/disk-d192f538.raw.xz
> vmlinux: https://storage.googleapis.com/syzbot-assets/59d41b43c30c/vmlinux-d192f538.xz
> kernel image: https://storage.googleapis.com/syzbot-assets/99ed26179ccf/bzImage-d192f538.xz
>
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: [email protected]

#syz test [email protected]:andy-shev/linux.git test-8250-pm

--
With Best Regards,
Andy Shevchenko



2024-04-06 14:53:18

by syzbot

[permalink] [raw]
Subject: Re: [syzbot] [serial?] general protection fault in serial8250_tx_chars

Hello,

syzbot tried to test the proposed patch but the build/boot failed:

failed to checkout kernel repo [email protected]:andy-shev/linux.git/test-8250-pm: failed to run ["git" "fetch" "--force" "f7e55974102a831d64e9ca077790e9122f71f6c9" "test-8250-pm"]: exit status 128
Host key verification failed.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.



Tested on:

commit: [unknown
git tree: [email protected]:andy-shev/linux.git test-8250-pm
kernel config: https://syzkaller.appspot.com/x/.config?x=f3761490b734dc96
dashboard link: https://syzkaller.appspot.com/bug?extid=837b8c9032c053262db8
compiler:

Note: no patches were applied.