Re: [PATCH v2 2/4] kernel.h: Split out container_of() and typeof_member() macros

From: Greg Kroah-Hartman
Date: Thu Oct 07 2021 - 06:38:58 EST


On Thu, Oct 07, 2021 at 12:51:27PM +0300, Andy Shevchenko wrote:
> --- a/lib/radix-tree.c
> +++ b/lib/radix-tree.c
> @@ -12,19 +12,21 @@
> #include <linux/bitmap.h>
> #include <linux/bitops.h>
> #include <linux/bug.h>
> +#include <linux/container_of.h>
> #include <linux/cpu.h>
> #include <linux/errno.h>
> #include <linux/export.h>
> #include <linux/idr.h>
> #include <linux/init.h>
> -#include <linux/kernel.h>
> #include <linux/kmemleak.h>
> +#include <linux/math.h>
> #include <linux/percpu.h>
> #include <linux/preempt.h> /* in_interrupt() */
> #include <linux/radix-tree.h>
> #include <linux/rcupdate.h>
> #include <linux/slab.h>
> #include <linux/string.h>
> +#include <linux/types.h>
> #include <linux/xarray.h>
>
> /*
> @@ -285,6 +287,8 @@ radix_tree_node_alloc(gfp_t gfp_mask, struct radix_tree_node *parent,
> return ret;
> }
>
> +extern void radix_tree_node_rcu_free(struct rcu_head *head);

.c files should not need an extern, this belongs in a .h file somewhere,
or something really went wrong here...

thanks,

greg k-h