Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp676000pxb; Thu, 12 Nov 2020 13:28:36 -0800 (PST) X-Google-Smtp-Source: ABdhPJx7U9AlEOqcwrF5kMjC/Vv6dXlVIhYfC9LiTtQ5zwrXZJ1UI8+dDTidVK8Hx1YwiQbV60Aq X-Received: by 2002:a50:cf45:: with SMTP id d5mr1955197edk.225.1605216516203; Thu, 12 Nov 2020 13:28:36 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1605216516; cv=none; d=google.com; s=arc-20160816; b=RiV45v6YVNrSWH2Ju8QaA9sskCeRqnYaBvxX/oDRjJCQLYWK+XevzdgYvT4kD8dSsk tzuMWkK8nXnW3g24C18pHS4ov+6QagqODxLDIYzpF54zCTfp01YQhuV+24sPYz24iViP 0kLvlVAllv9yJOJVmjn/A5gHuwyJj+ukKQ2d2fA3B31v2G9rSYxp927ttJyiSAKHV7v0 ZtHq/0xgLSU1THmyjQIccgV0DeEcbA/qXtyBpzzMWgzxKEpjOUAUNMtZYLgnRmdgxVvS a+nx9Q8Yr7Wu2uMWY50sROzA5oKgsV8C3Qe2do9CVZ3IbfUko6UVlxEX6AdSJtSBcxfF F9gA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:in-reply-to:subject :cc:to:from:user-agent:references; bh=juPqz68Z0XCGNtns9CRCFAm0inkOTbnwAvUuJAW8vK0=; b=qWLmAQLvdpYQ6QNPugJkEOeJKjuaTaLYnrMfHgrYsokTJJWlr26B9TYCsFNktvRi0u gP2gm4gRAMQHDBZ1DPDviUg8g0NwhOCUSYPG1V6v39uNdOpnuyKwf/PHgUJWzBts5Udc NAqxw+8cxDQnkHBC6t0jgOmafWBXxjzSgMgV/TVv+syyoJPkfLlfKBJY72j1xJ1BV9GP 1aGu3uk2sRt1bNvoJT+pKnnXSQtvzA0ZRnibZ2iEuy7H+WcMGPkvN/jMndnWCJ4mcId+ rqpUkyTGXboREz+oqJqQwDCq8P3Bksausfc3VfgmDRzGppZkz+fPyYm5TnuVn5pmU/Vj 4DLg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p18si4865386eds.125.2020.11.12.13.28.13; Thu, 12 Nov 2020 13:28:36 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727378AbgKLV0n (ORCPT + 99 others); Thu, 12 Nov 2020 16:26:43 -0500 Received: from foss.arm.com ([217.140.110.172]:57394 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726960AbgKLV0j (ORCPT ); Thu, 12 Nov 2020 16:26:39 -0500 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 637E1142F; Thu, 12 Nov 2020 13:26:38 -0800 (PST) Received: from e113632-lin (e113632-lin.cambridge.arm.com [10.1.194.46]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 2EBE03F73C; Thu, 12 Nov 2020 13:26:36 -0800 (PST) References: <20201023101158.088940906@infradead.org> <20201023102346.921768277@infradead.org> <8b62fd1ad1b18def27f18e2ee2df3ff5b36d0762.camel@redhat.com> <13786aa5a5fc958708ef1182c885d1a574449d99.camel@redhat.com> <371cfc80a1ecaa526a774efbe36369cc66b4ae69.camel@redhat.com> User-agent: mu4e 0.9.17; emacs 26.3 From: Valentin Schneider To: Qian Cai Cc: Peter Zijlstra , tglx@linutronix.de, mingo@kernel.org, linux-kernel@vger.kernel.org, bigeasy@linutronix.de, qais.yousef@arm.com, swood@redhat.com, juri.lelli@redhat.com, vincent.guittot@linaro.org, dietmar.eggemann@arm.com, rostedt@goodmis.org, bsegall@google.com, mgorman@suse.de, bristot@redhat.com, vincent.donnefort@arm.com, tj@kernel.org, ouwen210@hotmail.com Subject: Re: [PATCH v4 10/19] sched: Fix migrate_disable() vs set_cpus_allowed_ptr() In-reply-to: <371cfc80a1ecaa526a774efbe36369cc66b4ae69.camel@redhat.com> Date: Thu, 12 Nov 2020 21:26:33 +0000 Message-ID: MIME-Version: 1.0 Content-Type: text/plain Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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.