lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <fa4a7e17-ad33-4eb6-bfd3-c3e6bae13cec@mail.ustc.edu.cn>
Date: Mon, 24 Jun 2024 16:22:36 +0800
From: lcx <lichunxiaona@...l.ustc.edu.cn>
To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc: Jiri Slaby <jirislaby@...nel.org>, linux-kernel@...r.kernel.org,
 linux-serial@...r.kernel.org
Subject: INFO: rcu detected stall in tty_ioctl

Dear Linux maintainers and reviewers:

We would like to report a linux kernel bug, found by a modified version of syzkaller.

Kernel Version: a3e18a540541325a8c8848171f71e0d45ad30b2c(6.10-rc3)

Kernel Config: see attach, config

reproducing program: see attach, repro.c

Feel free to email us if any other information is needed. Hope the provided materials will help finding and fixing the bug.

-------------------------

The full log crash log are as follows:

Syzkaller hit 'INFO: rcu detected stall in tty_ioctl' bug.

clocksource: Long readout interval, skipping watchdog check: cs_nsec: 50948383321 wd_nsec: 50948381278
rcu: INFO: rcu_preempt self-detected stall on CPU
rcu: 	0-...!: (1 ticks this GP) idle=33e4/0/0x1 softirq=9805/9805 fqs=0
rcu: 	(t=23064 jiffies g=7205 q=11 ncpus=2)
rcu: rcu_preempt kthread timer wakeup didn't happen for 23063 jiffies! g7205 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402
rcu: 	Possible timer handling issue on cpu=0 timer-softirq=13942
rcu: rcu_preempt kthread starved for 23064 jiffies! g7205 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 ->cpu=0
rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
rcu: RCU grace-period kthread stack dump:
task:rcu_preempt     state:I stack:28896 pid:17    tgid:17    ppid:2      flags:0x00004000
Call Trace:
  <TASK>
  context_switch kernel/sched/core.c:5408 [inline]
  __schedule+0xf06/0x5cb0 kernel/sched/core.c:6745
  __schedule_loop kernel/sched/core.c:6822 [inline]
  schedule+0xe7/0x350 kernel/sched/core.c:6837
  schedule_timeout+0x121/0x280 kernel/time/timer.c:2581
  rcu_gp_fqs_loop+0x1ab/0xbd0 kernel/rcu/tree.c:2000
  rcu_gp_kthread+0x271/0x380 kernel/rcu/tree.c:2202
  kthread+0x2ab/0x390 kernel/kthread.c:389
  ret_from_fork+0x48/0x80 arch/x86/kernel/process.c:147
  ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
  </TASK>
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 6.10.0-rc3-00021-g2ef5971ff345-dirty #4
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.12.1-0-ga5cab58e9a3f-prebuilt.qemu.org 04/01/2014
RIP: 0010:native_irq_disable arch/x86/include/asm/irqflags.h:37 [inline]
RIP: 0010:arch_local_irq_disable arch/x86/include/asm/irqflags.h:72 [inline]
RIP: 0010:default_idle+0xf/0x20 arch/x86/kernel/process.c:743
Code: 4c 01 c7 4c 29 c2 e9 72 ff ff ff 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa eb 07 0f 00 2d 43 f4 48 00 fb f4 <fa> c3 cc cc cc cc 66 66 2e 0f 1f 84 00 00 00 00 00 90 90 90 90 90
RSP: 0018:ffffffff8cc07e28 EFLAGS: 00000202
RAX: 00000000000e11bf RBX: 0000000000000000 RCX: ffffffff8a3cfa59
RDX: 0000000000000000 RSI: ffffffff8a8be820 RDI: ffffffff8aead4e0
RBP: fffffbfff1992b08 R08: 0000000000000001 R09: ffffed1005906fe5
R10: ffff88802c837f2b R11: 0000000000000000 R12: 0000000000000000
R13: ffffffff8cc95840 R14: ffffffff8f1210d0 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff88802c800000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007ffe35094bf8 CR3: 0000000018198000 CR4: 00000000000006f0
Call Trace:
  <IRQ>
  </IRQ>
  <TASK>
  default_idle_call+0x6d/0xb0 kernel/sched/idle.c:117
  cpuidle_idle_call kernel/sched/idle.c:191 [inline]
  do_idle+0x32c/0x3f0 kernel/sched/idle.c:332
  cpu_startup_entry+0x4f/0x60 kernel/sched/idle.c:430
  rest_init+0x155/0x250 init/main.c:747
  start_kernel+0x38e/0x450 init/main.c:1103
  x86_64_start_reservations+0x18/0x30 arch/x86/kernel/head64.c:507
  x86_64_start_kernel+0xb2/0xc0 arch/x86/kernel/head64.c:488
  common_startup_64+0x13e/0x148
  </TASK>
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 8662 Comm: syz-executor375 Not tainted 6.10.0-rc3-00021-g2ef5971ff345-dirty #4
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.12.1-0-ga5cab58e9a3f-prebuilt.qemu.org 04/01/2014
RIP: 0010:lookup_object lib/debugobjects.c:195 [inline]
RIP: 0010:debug_object_deactivate+0x1ac/0x380 lib/debugobjects.c:765
Code: 48 8b 1b 48 85 db 0f 84 34 01 00 00 48 8d 7b 18 41 83 c4 01 48 89 f8 48 c1 e8 03 42 80 3c 28 00 0f 85 50 01 00 00 4c 3b 73 18 <75> c2 48 8d 7b 10 48 b8 00 00 00 00 00 fc ff df 48 89 fe 48 c1 ee
RSP: 0018:ffffc900004d8c70 EFLAGS: 00000046
RAX: 1ffff110092f92ea RBX: ffff8880497c9738 RCX: 0000000000000006
RDX: 1ffffffff27942a7 RSI: 0000000000000004 RDI: ffff8880497c9750
RBP: ffffc900004d8d50 R08: 0000000000000001 R09: fffff5200009b17c
R10: 0000000000000003 R11: 0000000000000008 R12: 0000000000000002
R13: dffffc0000000000 R14: ffffffff93d7adc8 R15: 1ffff9200009b190
FS:  00005555682b8880(0000) GS:ffff88807ec00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020000040 CR3: 000000001703c000 CR4: 00000000000006f0
Call Trace:
  <NMI>
  </NMI>
  <IRQ>
  debug_timer_deactivate kernel/time/timer.c:841 [inline]
  debug_deactivate kernel/time/timer.c:885 [inline]
  detach_timer kernel/time/timer.c:932 [inline]
  expire_timers kernel/time/timer.c:1826 [inline]
  __run_timers+0x547/0x9f0 kernel/time/timer.c:2417
  __run_timer_base kernel/time/timer.c:2428 [inline]
  __run_timer_base kernel/time/timer.c:2421 [inline]
  run_timer_base+0x104/0x180 kernel/time/timer.c:2437
  run_timer_softirq+0x1a/0x40 kernel/time/timer.c:2447
  handle_softirqs+0x2d7/0x8f0 kernel/softirq.c:554
  __do_softirq kernel/softirq.c:588 [inline]
  invoke_softirq kernel/softirq.c:428 [inline]
  __irq_exit_rcu kernel/softirq.c:637 [inline]
  irq_exit_rcu+0xbb/0x120 kernel/softirq.c:649
  instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1043 [inline]
  sysvec_apic_timer_interrupt+0x95/0xb0 arch/x86/kernel/apic/apic.c:1043
  </IRQ>
  <TASK>
  asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702
RIP: 0010:bochs_dispi_write drivers/gpu/drm/tiny/bochs.c:146 [inline]
RIP: 0010:bochs_hw_setmode drivers/gpu/drm/tiny/bochs.c:340 [inline]
RIP: 0010:bochs_pipe_enable+0x370/0xa10 drivers/gpu/drm/tiny/bochs.c:445
Code: 89 f8 83 e0 07 83 c0 03 38 d0 7c 08 84 d2 0f 85 5e 04 00 00 48 8b 03 44 0f b7 7b 3c 48 85 c0 0f 84 d1 02 00 00 48 89 44 24 08 <e8> 0b ae 39 fc 48 8b 44 24 08 66 44 89 b8 06 05 00 00 48 b8 00 00
RSP: 0018:ffffc9000341f440 EFLAGS: 00000286
RAX: ffffc900003a4000 RBX: ffff888018bac028 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff854bcf02 RDI: 0000000000000000
RBP: ffff888018bac05c R08: 0000000000000300 R09: 0000000000000020
R10: ffffffff9315d31f R11: 0000000000000006 R12: 1ffff92000683e8c
R13: ffff88804a866400 R14: ffff888018bac05a R15: 0000000000000020
  drm_simple_kms_crtc_enable+0xc4/0x100 drivers/gpu/drm/drm_simple_kms_helper.c:127
  drm_atomic_helper_commit_modeset_enables+0x29a/0xa80 drivers/gpu/drm/drm_atomic_helper.c:1488
  drm_atomic_helper_commit_tail+0x72/0xe0 drivers/gpu/drm/drm_atomic_helper.c:1752
  commit_tail+0x2f7/0x3d0 drivers/gpu/drm/drm_atomic_helper.c:1835
  drm_atomic_helper_commit+0x28c/0x310 drivers/gpu/drm/drm_atomic_helper.c:2073
  drm_atomic_commit+0x20b/0x2e0 drivers/gpu/drm/drm_atomic.c:1514
  drm_client_modeset_commit_atomic+0x5d9/0x780 drivers/gpu/drm/drm_client_modeset.c:1063
  drm_client_modeset_dpms+0x156/0x1e0 drivers/gpu/drm/drm_client_modeset.c:1244
  drm_fb_helper_dpms drivers/gpu/drm/drm_fb_helper.c:323 [inline]
  drm_fb_helper_blank+0x1ef/0x250 drivers/gpu/drm/drm_fb_helper.c:340
  fb_blank+0xf3/0x170 drivers/video/fbdev/core/fbmem.c:355
  fbcon_blank+0x537/0xb90 drivers/video/fbdev/core/fbcon.c:2226
  do_unblank_screen+0x22f/0x450 drivers/tty/vt/vt.c:4563
  unblank_screen drivers/tty/vt/vt.c:4582 [inline]
  tioclinux+0x38f/0x550 drivers/tty/vt/vt.c:3357
  vt_ioctl+0x137f/0x2980 drivers/tty/vt/vt_ioctl.c:761
  tty_ioctl+0xa57/0x1420 drivers/tty/tty_io.c:2803
  vfs_ioctl fs/ioctl.c:51 [inline]
  __do_sys_ioctl fs/ioctl.c:907 [inline]
  __se_sys_ioctl fs/ioctl.c:893 [inline]
  __x64_sys_ioctl+0x165/0x1e0 fs/ioctl.c:893
  do_syscall_x64 arch/x86/entry/common.c:52 [inline]
  do_syscall_64+0xcd/0x250 arch/x86/entry/common.c:83
  entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f83fc5f2a3d
Code: c3 e8 07 2b 00 00 0f 1f 80 00 00 00 00 f3 0f 1e fa 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 c7 c1 c0 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffe35094c18 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00000000000cfa02 RCX: 00007f83fc5f2a3d
RDX: 0000000020000080 RSI: 000000000000541c RDI: 0000000000000003
RBP: 0000000000000000 R08: 00000000fc5aba90 R09: 00000000fc5aba90
R10: 000000000000000e R11: 0000000000000246 R12: 00007ffe35094c24
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
  </TASK>
INFO: NMI handler (nmi_cpu_backtrace_handler) took too long to run: 1.369 msecs

Content of type "text/html" skipped

View attachment "config" of type "text/plain" (260180 bytes)

View attachment "repro.c" of type "text/plain" (3665 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ