Re: [PATCH 01/02] cpuset bitmap and mask remap operators

From: Paul Jackson
Date: Mon Oct 24 2005 - 03:16:56 EST


Andrew wrote:
> > +#define node_remap(oldbit, old, new) \
> > + __node_remap((oldbit), &(old), &(new), MAX_NUMNODES)
> > +static inline int __node_remap(int oldbit, ...
>
> What's the reason for the wrapper macro?

Most all the nodemask/cpumask operators are like that. It allows
writing *mask code as if masks were pass by value (which is how the
vast majority of kernel hackers, working on systems with one-word
masks, think of them), while actually passing by reference, to
avoid unnecessary stack copies of multiword masks.


> +EXPORT_SYMBOL(bitmap_bitremap);
>
> Is that deliberately not EXPORT_SYMBOL_GPL?

It's not deliberate that I am aware of.

But it does seem to be the common practice ....

All the bitmap routines are that way - no GPL. In fact it seems that
almost all the EXPORT_SYMBOLS in the lib/*.c routines are that way - 12
with GPL and 174 without GPL, or some such. The only lib/*.c GPL
exports are in lib/klist.c and lib/kobject_uevent.c.

Is this bad?

--
I won't rest till it's the best ...
Programmer, Linux Scalability
Paul Jackson <pj@xxxxxxx> 1.925.600.0401
-
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/