On 12/11/20 20:37, Qian Cai wrote: > On Thu, 2020-11-12 at 19:31 +0000, Valentin Schneider wrote: >> a) Do you also get this on CONFIG_PREEMPT=y? > > This also happens with: > > CONFIG_PREEMPT=y > CONFIG_PREEMPTION=y > CONFIG_PREEMPT_RCU=y > CONFIG_PREEMPT_NOTIFIERS=y > CONFIG_DEBUG_PREEMPT=y > CONFIG_PREEMPTIRQ_TRACEPOINTS=y >
Hmph, it should be much less likely to happen with PREEMPT=y, but isn't per se impossible. Thanks for giving it a shot. > [ 1235.044945][ T330] INFO: task trinity-c4:60050 blocked for more than 245 > seconds. > [ 1235.052540][ T330] Not tainted 5.10.0-rc3-next-20201112+ #2 > [ 1235.058774][ T330] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" > disables this message. > [ 1235.067392][ T330] task:trinity-c4 state:D stack:26880 pid:60050 > ppid: 1722 flags:0x00004000 > [ 1235.076505][ T330] Call Trace: > [ 1235.079680][ T330] __schedule (kernel/sched/core.c:4272 > kernel/sched/core.c:5019) > [ 1235.083971][ T330] ? __sched_text_start (kernel/sched/core.c:4901) > [ 1235.088721][ T330] schedule (kernel/sched/core.c:5099 (discriminator 1)) > [ 1235.092661][ T330] schedule_timeout (kernel/time/timer.c:1848) > [ 1235.097399][ T330] ? usleep_range (kernel/time/timer.c:1833) > [ 1235.101945][ T330] ? wait_for_completion (kernel/sched/completion.c:85 > kernel/sched/completion.c:106 kernel/sched/completion.c:117 > kernel/sched/completion.c:138) > [ 1235.107156][ T330] ? lock_downgrade (kernel/locking/lockdep.c:5443) > [ 1235.111883][ T330] ? rcu_read_unlock (./include/linux/rcupdate.h:692 > (discriminator 5)) > [ 1235.116561][ T330] ? do_raw_spin_lock (./arch/x86/include/asm/atomic.h:202 > ./include/asm-generic/atomic-instrumented.h:707 > ./include/asm-generic/qspinlock.h:82 kernel/locking/spinlock_debug.c:113) > [ 1235.121459][ T330] ? _raw_spin_unlock_irq > (./arch/x86/include/asm/irqflags.h:54 ./arch/x86/include/asm/irqflags.h:94 > ./include/linux/spinlock_api_smp.h:168 kernel/locking/spinlock.c:199) > [ 1235.126601][ T330] wait_for_completion (kernel/sched/completion.c:86 > kernel/sched/completion.c:106 kernel/sched/completion.c:117 > kernel/sched/completion.c:138) > [ 1235.131591][ T330] ? wait_for_completion_interruptible > (kernel/sched/completion.c:137) > [ 1235.138013][ T330] ? _raw_spin_unlock_irqrestore > (./include/linux/spinlock_api_smp.h:160 kernel/locking/spinlock.c:191) > [ 1235.143698][ T330] affine_move_task (./include/linux/instrumented.h:101 > ./include/asm-generic/atomic-instrumented.h:220 > ./include/linux/refcount.h:272 ./include/linux/refcount.h:315 > ./include/linux/refcount.h:333 kernel/sched/core.c:2263) > [ 1235.148451][ T330] ? move_queued_task (kernel/sched/core.c:2151) > [ 1235.153351][ T330] ? update_curr (kernel/sched/sched.h:1176 > kernel/sched/fair.c:845) > [ 1235.157848][ T330] ? enqueue_entity (kernel/sched/fair.c:4247) > [ 1235.162658][ T330] ? set_next_task_fair > (./arch/x86/include/asm/jump_label.h:25 (discriminator 2) > ./include/linux/jump_label.h:200 (discriminator 2) kernel/sched/fair.c:4567 > (discriminator 2) kernel/sched/fair.c:4683 (discriminator 2) > kernel/sched/fair.c:10953 (discriminator 2)) > [ 1235.167667][ T330] __set_cpus_allowed_ptr (kernel/sched/core.c:2353) > [ 1235.172905][ T330] ? affine_move_task (kernel/sched/core.c:2287) > [ 1235.177826][ T330] ? _raw_spin_unlock_irqrestore > (./include/linux/spinlock_api_smp.h:160 kernel/locking/spinlock.c:191) > [ 1235.183501][ T330] sched_setaffinity (kernel/sched/core.c:6460) > [ 1235.188345][ T330] ? __ia32_sys_sched_getattr (kernel/sched/core.c:6393) > [ 1235.193937][ T330] ? _copy_from_user > (./arch/x86/include/asm/uaccess_64.h:46 > ./arch/x86/include/asm/uaccess_64.h:52 lib/usercopy.c:16) > [ 1235.198605][ T330] __x64_sys_sched_setaffinity (kernel/sched/core.c:6511 > kernel/sched/core.c:6500 kernel/sched/core.c:6500) > [ 1235.204291][ T330] ? sched_setaffinity (kernel/sched/core.c:6500) > [ 1235.209324][ T330] ? syscall_enter_from_user_mode > (./arch/x86/include/asm/irqflags.h:54 ./arch/x86/include/asm/irqflags.h:94 > kernel/entry/common.c:98) > [ 1235.215133][ T330] do_syscall_64 (arch/x86/entry/common.c:46) > [ 1235.219431][ T330] entry_SYSCALL_64_after_hwframe > (arch/x86/entry/entry_64.S:127) > [ 1235.225251][ T330] RIP: 0033:0x7fb102b1178d > >> b) Could you try the below? > > It is running good so far on multiple systems. I'll keep it running and report > back if it happens again. Thanks! All of this is somewhat fragile, so I'll want to have another look with a fresher mind; if the diff makes a difference at least it'll mean I wasn't completely off.