[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180906204629.GD26048@dennisz-mbp.dhcp.thefacebook.com>
Date: Thu, 6 Sep 2018 16:46:30 -0400
From: Dennis Zhou <dennisszhou@...il.com>
To: Tejun Heo <tj@...nel.org>
Cc: Jens Axboe <axboe@...nel.dk>, Johannes Weiner <hannes@...xchg.org>,
Josef Bacik <josef@...icpanda.com>, kernel-team@...com,
linux-block@...r.kernel.org, cgroups@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 13/15] blkcg: change blkg reference counting to use
percpu_ref
On Fri, Aug 31, 2018 at 05:31:59PM -0700, Tejun Heo wrote:
> Hello,
>
> On Thu, Aug 30, 2018 at 09:53:54PM -0400, Dennis Zhou wrote:
> > @@ -217,6 +240,10 @@ static struct blkcg_gq *blkg_create(struct blkcg *blkcg,
> > blkg_get(blkg->parent);
> > }
> >
> > + ret = percpu_ref_init(&blkg->refcnt, __blkg_release, 0, GFP_KERNEL);
>
> So, while this would work in some configs, you can't depend on RCU
> grace period inside percpu_ref. blkg is now percpu-reference counted
> and rcu protected object - it has to explicitly go through a rcu grace
> period before release.
>
Ah ok. I've made it into a call_rcu which should work.
Thanks,
Dennis
Powered by blists - more mailing lists