From: "Paul E. McKenney" <paulmck@linux.ibm.com>
To: Joel Fernandes <joel@joelfernandes.org>
Cc: LKML <linux-kernel@vger.kernel.org>
Subject: Re: Question about ->head field of rcu_segcblist
Date: Sun, 23 Sep 2018 16:55:12 -0700 [thread overview]
Message-ID: <20180923235512.GB4222@linux.ibm.com> (raw)
In-Reply-To: <CAEXW_YTv2wFoaVW-1yv_S5pRo85Tiad-B4u4EaYBdCx5_KWRkQ@mail.gmail.com>
On Sun, Sep 23, 2018 at 07:31:37PM -0400, Joel Fernandes wrote:
> On Sun, Sep 23, 2018 at 7:30 PM Joel Fernandes <joel@joelfernandes.org> wrote:
> >
> > Hi Paul,
> >
> > I was parsing the Data-Structures document and had a question about
> > the following "Important note" text.
> >
> > Could it be clarified in the below text better why "remaining
> > callbacks are placed back on the RCU_DONE_TAIL segment", is a reason
> > for not depending on ->head for determining if no callbacks are
> > associated with the rcu_segcblist? If callbacks are added back to the
> > DONE_TAIL segment, then I would think rcu_head should be != NULL.
> > Infact the "rsclp->head = *rsclp->tails[RCU_DONE_TAIL];" in
> > rcu_segcblist_extract_done_cbs should set the ->head to NULL if I
> > understand correctly.
>
> Just to clarify, I meant set to NULL assuming all cbs were done
> waiting and ready to be invoked.
Ah, good, then that is correct. But even then, being NULL doesn't mean
no callbacks because they might be temporarily held by rcu_do_batch().
Thanx, Paul
next prev parent reply other threads:[~2018-09-23 23:55 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-09-23 23:30 Question about ->head field of rcu_segcblist Joel Fernandes
2018-09-23 23:31 ` Joel Fernandes
2018-09-23 23:55 ` Paul E. McKenney [this message]
2018-09-23 23:54 ` Paul E. McKenney
2018-09-24 2:25 ` Joel Fernandes
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=20180923235512.GB4222@linux.ibm.com \
--to=paulmck@linux.ibm.com \
--cc=joel@joelfernandes.org \
--cc=linux-kernel@vger.kernel.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.