From: Yipeng Zou <zouyipeng@huawei.com>
To: <paulmck@kernel.org>, Frederic Weisbecker <frederic@kernel.org>
Cc: <rcu@vger.kernel.org>, <quic_neeraju@quicinc.com>,
<josh@joshtriplett.org>, <rostedt@goodmis.org>,
<mathieu.desnoyers@efficios.com>, <jiangshanlai@gmail.com>,
<joel@joelfernandes.org>, <rafael.j.wysocki@intel.com>,
<peterz@infradead.org>
Subject: Re: [PATCH] rcu: remove rcu_is_idle_cpu
Date: Wed, 28 Sep 2022 09:24:10 +0800 [thread overview]
Message-ID: <9b142399-7968-2300-24c4-5a60cee76ec3@huawei.com> (raw)
In-Reply-To: <20220927185121.GU4196@paulmck-ThinkPad-P17-Gen-1>
在 2022/9/28 2:51, Paul E. McKenney 写道:
> On Mon, Sep 26, 2022 at 10:36:29PM +0200, Frederic Weisbecker wrote:
>> On Mon, Sep 26, 2022 at 09:58:27AM +0800, Yipeng Zou wrote:
>>> The commit "x86/cpu: Avoid cpuinfo-induced IPIing of idle CPUs" introduce
>>> this function to identify the current CPU idle state.
>>> But after commit "x86/aperfmperf: Replace arch_freq_get_on_cpu()" we
>>> just use MAX_SAMPLE_AGE to do that, So there is no use of this function.
>>>
>>> Fixes: f3eca381bd49 ("x86/aperfmperf: Replace arch_freq_get_on_cpu()")
>>> Signed-off-by: Yipeng Zou <zouyipeng@huawei.com>
>> Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
> Good eyes, Yipeng! Queued and pushed, thank you both!
>
> As usual, I could not resist the urge to wordsmith, so please check the
> patch below and let me know if I messed something up.
Its all good, and thanks for review.
> And please include both commit IDs in future patches with the
> formatting shows below. Makes it easier for me to accept your
> patches, after all. ;-)
ok,got it.
>
> Thanx, Paul
>
> ------------------------------------------------------------------------
>
> commit f8b389c24cf9a523472e3e505815b26f0174856c
> Author: Yipeng Zou <zouyipeng@huawei.com>
> Date: Mon Sep 26 09:58:27 2022 +0800
>
> rcu: Remove rcu_is_idle_cpu()
>
> The commit 3fcd6a230fa7 ("x86/cpu: Avoid cpuinfo-induced IPIing of
> idle CPUs") introduced rcu_is_idle_cpu() in order to identify the
> current CPU idle state. But commit f3eca381bd49 ("x86/aperfmperf:
> Replace arch_freq_get_on_cpu()") switched to using MAX_SAMPLE_AGE,
> so rcu_is_idle_cpu() is no longer used. This commit therefore removes it.
>
> Fixes: f3eca381bd49 ("x86/aperfmperf: Replace arch_freq_get_on_cpu()")
> Signed-off-by: Yipeng Zou <zouyipeng@huawei.com>
> Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
> Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
>
> diff --git a/include/linux/rcutiny.h b/include/linux/rcutiny.h
> index 84e930c11065..93485b812712 100644
> --- a/include/linux/rcutiny.h
> +++ b/include/linux/rcutiny.h
> @@ -146,8 +146,6 @@ static inline void rcu_virt_note_context_switch(void) { }
> static inline void rcu_cpu_stall_reset(void) { }
> static inline int rcu_jiffies_till_stall_check(void) { return 21 * HZ; }
> static inline void rcu_irq_exit_check_preempt(void) { }
> -#define rcu_is_idle_cpu(cpu) \
> - (is_idle_task(current) && !in_nmi() && !in_hardirq() && !in_serving_softirq())
> static inline void exit_rcu(void) { }
> static inline bool rcu_preempt_need_deferred_qs(struct task_struct *t)
> {
> diff --git a/include/linux/rcutree.h b/include/linux/rcutree.h
> index 3066e0975022..f41c4ab2a884 100644
> --- a/include/linux/rcutree.h
> +++ b/include/linux/rcutree.h
> @@ -87,8 +87,6 @@ bool poll_state_synchronize_rcu_full(struct rcu_gp_oldstate *rgosp);
> void cond_synchronize_rcu(unsigned long oldstate);
> void cond_synchronize_rcu_full(struct rcu_gp_oldstate *rgosp);
>
> -bool rcu_is_idle_cpu(int cpu);
> -
> #ifdef CONFIG_PROVE_RCU
> void rcu_irq_exit_check_preempt(void);
> #else
> diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
> index 1930cee1ccdb..96d678c9cfb6 100644
> --- a/kernel/rcu/tree.c
> +++ b/kernel/rcu/tree.c
> @@ -301,12 +301,6 @@ static bool rcu_dynticks_in_eqs(int snap)
> return !(snap & RCU_DYNTICKS_IDX);
> }
>
> -/* Return true if the specified CPU is currently idle from an RCU viewpoint. */
> -bool rcu_is_idle_cpu(int cpu)
> -{
> - return rcu_dynticks_in_eqs(rcu_dynticks_snap(cpu));
> -}
> -
> /*
> * Return true if the CPU corresponding to the specified rcu_data
> * structure has spent some time in an extended quiescent state since
--
Regards,
Yipeng Zou
prev parent reply other threads:[~2022-09-28 1:24 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-26 1:58 [PATCH] rcu: remove rcu_is_idle_cpu Yipeng Zou
2022-09-26 20:36 ` Frederic Weisbecker
2022-09-27 18:51 ` Paul E. McKenney
2022-09-28 1:24 ` Yipeng Zou [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9b142399-7968-2300-24c4-5a60cee76ec3@huawei.com \
--to=zouyipeng@huawei.com \
--cc=frederic@kernel.org \
--cc=jiangshanlai@gmail.com \
--cc=joel@joelfernandes.org \
--cc=josh@joshtriplett.org \
--cc=mathieu.desnoyers@efficios.com \
--cc=paulmck@kernel.org \
--cc=peterz@infradead.org \
--cc=quic_neeraju@quicinc.com \
--cc=rafael.j.wysocki@intel.com \
--cc=rcu@vger.kernel.org \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.