From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Oleg Nesterov <oleg@redhat.com>
Cc: kbuild test robot <fengguang.wu@intel.com>,
kbuild-all@01.org, linux-kernel@vger.kernel.org
Subject: Re: [rcu:rcu/dev 70/71] kernel/rcu/sync.c:68:2: warning: 'deprecate_rcu_lockdep_assert' is deprecated (declared at include/linux/rcupdate.h:541)
Date: Mon, 14 Sep 2015 09:28:47 -0700 [thread overview]
Message-ID: <20150914162847.GV4029@linux.vnet.ibm.com> (raw)
In-Reply-To: <20150914155520.GA26358@redhat.com>
On Mon, Sep 14, 2015 at 05:55:20PM +0200, Oleg Nesterov wrote:
> On 09/12, Paul E. McKenney wrote:
> >
> > I should have noticed this...
>
> Heh, me too :/
>
> Thanks a lot Fengguang!
>
> > The new rcu_lockdep_assert() is RCU_LOCKDEP_WARN(). I am guessing
> > that you would like to also make rcu_sync_lockdep_assert() be
> > RCU_SYNC_LOCKDEP_WARN()?
>
> I am fine either way. Unless you have already fixed this in your tree,
> I'd suggest the trivial fix below.
I got that one, but failed to clean up the indentation. Fixed that
as well.
> But please let me know you want me to make another trivial change which
> turns rcu_sync_lockdep_assert() into
>
> bool rcu_sync_read_lock_held(struct rcu_sync *rsp)
> {
> return gp_ops[rsp->gp_type].held();
> }
>
> and rcu_sync_is_idle() into
>
> static inline bool rcu_sync_is_idle(struct rcu_sync *rsp)
> {
> RCU_LOCKDEP_WARN(!rcu_sync_read_lock_held(rsp),
> "suspicious rcu_sync_is_idle() usage");
> return !rsp->gp_state; /* GP_IDLE */
> }
There does seem to be a strong desire to move away from "assert" to
"WARN", so please do!
Thanx, Paul
> -------------------------------------------------------------------------------
> >From 37fb0c136b979b0ef6a4ade1c7a14c8207533b2d Mon Sep 17 00:00:00 2001
> From: Oleg Nesterov <oleg@redhat.com>
> Date: Mon, 14 Sep 2015 10:54:10 -0400
> Subject: [PATCH] rcu_sync: Use RCU_LOCKDEP_WARN() rather than rcu_lockdep_assert()
>
> rcu_lockdep_assert() is deprecated, change rcu_sync_lockdep_assert()
> to use RCU_LOCKDEP_WARN().
>
> Reported-by: Fengguang Wu <fengguang.wu@intel.com>
> Signed-off-by: Oleg Nesterov <oleg@redhat.com>
> ---
> kernel/rcu/sync.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/kernel/rcu/sync.c b/kernel/rcu/sync.c
> index 56ae79d..be922c9 100644
> --- a/kernel/rcu/sync.c
> +++ b/kernel/rcu/sync.c
> @@ -65,8 +65,8 @@ enum { CB_IDLE = 0, CB_PENDING, CB_REPLAY };
> #ifdef CONFIG_PROVE_RCU
> void rcu_sync_lockdep_assert(struct rcu_sync *rsp)
> {
> - rcu_lockdep_assert(gp_ops[rsp->gp_type].held(),
> - "suspicious rcu_sync_is_idle() usage");
> + RCU_LOCKDEP_WARN(!gp_ops[rsp->gp_type].held(),
> + "suspicious rcu_sync_is_idle() usage");
> }
> #endif
>
> --
> 2.4.3
>
>
prev parent reply other threads:[~2015-09-14 16:29 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <201509122015.wgq37YmO%fengguang.wu@intel.com>
[not found] ` <20150912171703.GK4029@linux.vnet.ibm.com>
2015-09-14 15:55 ` [rcu:rcu/dev 70/71] kernel/rcu/sync.c:68:2: warning: 'deprecate_rcu_lockdep_assert' is deprecated (declared at include/linux/rcupdate.h:541) Oleg Nesterov
2015-09-14 16:28 ` Paul E. McKenney [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=20150914162847.GV4029@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=fengguang.wu@intel.com \
--cc=kbuild-all@01.org \
--cc=linux-kernel@vger.kernel.org \
--cc=oleg@redhat.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).