Re: [PATCH 02/36] scsi,rcu: convert call_rcu(fc_rport_free_rcu) tokfree_rcu()

From: Matthew Wilcox
Date: Wed Mar 23 2011 - 07:23:07 EST


On Tue, Mar 22, 2011 at 11:50:14PM -0700, Paul E. McKenney wrote:
> On Tue, Mar 22, 2011 at 10:28:33AM -0700, Robert Love wrote:
> > On Thu, 2011-03-17 at 20:41 -0700, Lai Jiangshan wrote:
> > > - call_rcu(&rdata->rcu, fc_rport_free_rcu);
> > > + kfree_rcu(rdata, rcu);
> >
> > I think this last line should be:
> >
> > kfree_rcu(rdata, &rdata->rcu);
>
> Hello, Robert,
>
> I believe that it is correct as is. The kfree_rcu() definition is as
> follows:
>
> #define kfree_rcu(ptr, rcu_head) \
> __kfree_rcu(&((ptr)->rcu_head), offsetof(typeof(*(ptr)), rcu_head))
>
> Then __kfree_rcu() encodes the offset into the rcu_head so that it can
> be handled properly at the end of the grace period.

To be fair to Robert, I had the same thought, but decided to check the
definition of kfree_rcu before I made the same comment. Unfortunately,
the definition of kfree_rcu is still not in Linus' tree (and there's no
indication in the patch series about where to find the definition). It
would have been better if kfree_rcu were patch 1/n in the series, then
we'd've been able to review it more effectively.

Any idea when kfree_rcu will be submitted to Linus?

--
Matthew Wilcox Intel Open Source Technology Centre
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours. We can't possibly take such
a retrograde step."
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/