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

From: Matthew Wilcox
Date: Wed Mar 23 2011 - 19:19:56 EST

On Wed, Mar 23, 2011 at 09:05:51AM -0500, James Bottomley wrote:
> > #define kfree_rcu(ptr, rcu_head) \
> > __kfree_rcu(&((ptr)->rcu_head), offsetof(typeof(*(ptr)), rcu_head))
> Isn't this one of those cases where the obvious use of the interface is
> definitely wrong?

But it's a compile time breakage if you use it wrong, not runtime.

> It's also another nasty pseudo C prototype. I know we do this sort of
> thing for container_of et al, but I don't really think we want to extend
> it.

We do it for list_entry, list_for_each_entry, etc. And those are very
widespread within the kernel.

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
Please read the FAQ at