Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp32829ybb; Fri, 27 Mar 2020 15:28:10 -0700 (PDT) X-Google-Smtp-Source: ADFU+vvy19BvzdqFTrzuRdF7uMybJIutzrD1lyQHYptMr+8pX8AH4mXoi8dh65c+7D3jkVMn9TEc X-Received: by 2002:a05:6830:4038:: with SMTP id i24mr802906ots.0.1585348090300; Fri, 27 Mar 2020 15:28:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1585348090; cv=none; d=google.com; s=arc-20160816; b=BfogbBA3npT84kcTa6afYZEIcz+J8iFPenawX3bmLh0gF80SYDqZi6b9eW81MNREnm fqxkCxpHqvlvDysEnWLIr4tCyh1hk0HWKX/YlR+1Kmii2frUJa/4yCkiagvK3XI2KQkI HWUTvSXc23mh13Qgnah39pcOirDivx+05Bu9qVRUYBiuy+6jYouEiaJXsnhZkBkMIqFM 3iq6riJcTxOF1o8rZAcF3yGwbG6NWrs9aHUbtCahQTkzzB4re0e/FRnWcLHQPUpFnir0 utHc1O4Kqv4t5o0AafL/j4bWawYv3IQG4KJ+DDL1XiMDrF8k3O4QDTJM3YKixhwwXUdb lnHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=sczVVpv+0Ru+TZYIM1B6tmNm+KwecQ/sOx/kPSmsvUY=; b=BPGgOTwYDa5eb14JELE52QXekacQTZ2UNus8IDykDZh+EP8tos9kVHCTv5qPN+bwTS +jalmG/XShHbBMWaFrFy0JSdCoFtIKFPlVJRxW5GZ4R0TeABAp43SBmRlBacVVD+YeKU zks08z1GoaONoRVmg/hMe9rG2jCRdKx8tFYTtCr1fjcF7Kft0guFxhx9RbvhKgyReLSE bA10oF0vPLxbQKjYqeWGyae3yKLvla69tFPZsq8UtzKxRMrTC4x0mloexT5hCKbHbGQC pHsmAoOCHwxHPYZLzxXPKimXbtWs8BFI5MlTum/RWEi7o27QmD41NWcN3sLB/SZeeXjW NQbA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=JCiMx+8O; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q16si2952028otn.111.2020.03.27.15.27.57; Fri, 27 Mar 2020 15:28:10 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=JCiMx+8O; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728165AbgC0W0O (ORCPT + 99 others); Fri, 27 Mar 2020 18:26:14 -0400 Received: from mail.kernel.org ([198.145.29.99]:42870 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727769AbgC0WZD (ORCPT ); Fri, 27 Mar 2020 18:25:03 -0400 Received: from paulmck-ThinkPad-P72.home (50-39-105-78.bvtn.or.frontiernet.net [50.39.105.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id B656A2166E; Fri, 27 Mar 2020 22:25:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1585347902; bh=Xkh1no5YKGIbTvpLniv6B5Dam6nMeos4ZGt5eFKSZGg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=JCiMx+8OHafKKul2pb7vTX1x/f5hRoKztIGKNb88LdV2rpTN5sG7RiG8iumrSa2AH iDBQ6bWsVZPd02UEMHQ/eN8pWqDcTt3MZUNQ1TvIcD4j2NIi0SujpSrXRlZzvE7CBw T92QYTwEJaLuqdL3oF71Tt/KcLW1KxGTWHeIupB8= From: paulmck@kernel.org To: rcu@vger.kernel.org Cc: linux-kernel@vger.kernel.org, kernel-team@fb.com, mingo@kernel.org, jiangshanlai@gmail.com, dipankar@in.ibm.com, akpm@linux-foundation.org, mathieu.desnoyers@efficios.com, josh@joshtriplett.org, tglx@linutronix.de, peterz@infradead.org, rostedt@goodmis.org, dhowells@redhat.com, edumazet@google.com, fweisbec@gmail.com, oleg@redhat.com, joel@joelfernandes.org, "Paul E. McKenney" Subject: [PATCH v3 tip/core/rcu 11/34] rcu-tasks: Use unique names for RCU-Tasks kthreads and messages Date: Fri, 27 Mar 2020 15:24:33 -0700 Message-Id: <20200327222456.12470-11-paulmck@kernel.org> X-Mailer: git-send-email 2.9.5 In-Reply-To: <20200327222346.GA12082@paulmck-ThinkPad-P72> References: <20200327222346.GA12082@paulmck-ThinkPad-P72> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: "Paul E. McKenney" This commit causes the flavors of RCU Tasks to use different names for their kthreads and in their console messages. Signed-off-by: Paul E. McKenney --- kernel/rcu/tasks.h | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/kernel/rcu/tasks.h b/kernel/rcu/tasks.h index 7f9ed20..9ca83c6 100644 --- a/kernel/rcu/tasks.h +++ b/kernel/rcu/tasks.h @@ -22,6 +22,8 @@ typedef void (*rcu_tasks_gp_func_t)(struct rcu_tasks *rtp); * @kthread_ptr: This flavor's grace-period/callback-invocation kthread. * @gp_func: This flavor's grace-period-wait function. * @call_func: This flavor's call_rcu()-equivalent function. + * @name: This flavor's textual name. + * @kname: This flavor's kthread name. */ struct rcu_tasks { struct rcu_head *cbs_head; @@ -31,16 +33,20 @@ struct rcu_tasks { struct task_struct *kthread_ptr; rcu_tasks_gp_func_t gp_func; call_rcu_func_t call_func; + char *name; + char *kname; }; -#define DEFINE_RCU_TASKS(name, gp, call) \ -static struct rcu_tasks name = \ +#define DEFINE_RCU_TASKS(rt_name, gp, call, n) \ +static struct rcu_tasks rt_name = \ { \ - .cbs_tail = &name.cbs_head, \ - .cbs_wq = __WAIT_QUEUE_HEAD_INITIALIZER(name.cbs_wq), \ - .cbs_lock = __RAW_SPIN_LOCK_UNLOCKED(name.cbs_lock), \ + .cbs_tail = &rt_name.cbs_head, \ + .cbs_wq = __WAIT_QUEUE_HEAD_INITIALIZER(rt_name.cbs_wq), \ + .cbs_lock = __RAW_SPIN_LOCK_UNLOCKED(rt_name.cbs_lock), \ .gp_func = gp, \ .call_func = call, \ + .name = n, \ + .kname = #rt_name, \ } /* Track exiting tasks in order to allow them to be waited for. */ @@ -145,8 +151,8 @@ static void __init rcu_spawn_tasks_kthread_generic(struct rcu_tasks *rtp) { struct task_struct *t; - t = kthread_run(rcu_tasks_kthread, rtp, "rcu_tasks_kthread"); - if (WARN_ONCE(IS_ERR(t), "%s: Could not start Tasks-RCU grace-period kthread, OOM is now expected behavior\n", __func__)) + t = kthread_run(rcu_tasks_kthread, rtp, "%s_kthread", rtp->kname); + if (WARN_ONCE(IS_ERR(t), "%s: Could not start %s grace-period kthread, OOM is now expected behavior\n", __func__, rtp->name)) return; smp_mb(); /* Ensure others see full kthread. */ } @@ -342,7 +348,7 @@ static void rcu_tasks_wait_gp(struct rcu_tasks *rtp) } void call_rcu_tasks(struct rcu_head *rhp, rcu_callback_t func); -DEFINE_RCU_TASKS(rcu_tasks, rcu_tasks_wait_gp, call_rcu_tasks); +DEFINE_RCU_TASKS(rcu_tasks, rcu_tasks_wait_gp, call_rcu_tasks, "RCU Tasks"); /** * call_rcu_tasks() - Queue an RCU for invocation task-based grace period @@ -437,7 +443,8 @@ static void rcu_tasks_rude_wait_gp(struct rcu_tasks *rtp) } void call_rcu_tasks_rude(struct rcu_head *rhp, rcu_callback_t func); -DEFINE_RCU_TASKS(rcu_tasks_rude, rcu_tasks_rude_wait_gp, call_rcu_tasks_rude); +DEFINE_RCU_TASKS(rcu_tasks_rude, rcu_tasks_rude_wait_gp, call_rcu_tasks_rude, + "RCU Tasks Rude"); /** * call_rcu_tasks_rude() - Queue a callback rude task-based grace period -- 2.9.5