Re: [PATCH] rcu: avoid checking for constant

From: Paul E. McKenney
Date: Thu Jan 12 2012 - 10:34:26 EST


On Thu, Jan 12, 2012 at 11:57:10AM +0100, Jan Engelhardt wrote:
> On Thursday 2012-01-12 11:54, Eric Dumazet wrote:
>
> >Le jeudi 12 janvier 2012 à 11:34 +0100, Jan Engelhardt a écrit :
> >
> >> When compiling kernel or module code with -O0, "offset" is no longer
> >> considered a constant, and therefore always triggers the build error
> >> that BUILD_BUG_ON is defined to yield.
> >
> >Why compiling kernel with -O0 is even considered ?
>
> The compile error was observed when trying to compile an out-of-tree
> module with -O0.

Hmmm... Why not have a glue .c file in your out-of-tree module
that contains function like:

void kfree_rcu_foo(struct foo *fp)
{
kfree_rcu(fp, foo_rcu);
}

Compile this .c file normally, then apply -O0 only to the other
files in your module.

Thanx, Paul

--
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/