Re: linux-next: build failure after merge of the driver-core tree

From: Peter Zijlstra
Date: Wed Dec 14 2011 - 04:25:59 EST


On Wed, 2011-12-14 at 15:48 +1100, Stephen Rothwell wrote:
> Hi Greg,
>
> After merging the driver-core tree, today's linux-next build
> (powerpc_ppc64_defconfig) failed like this:
>
> In file included from include/linux/slab.h:185:0,
> from include/linux/kref.h:19,
> from include/linux/kobject.h:24,
> from include/linux/sysdev.h:24,
> from include/linux/node.h:17,
> from include/linux/swap.h:10,
> from include/linux/suspend.h:4,
> from arch/powerpc/kernel/asm-offsets.c:24:
> include/linux/slub_def.h:100:17: error: field 'kobj' has incomplete type
>
> Caused by commit 4af679cd7cbb ("kref: Inline all functions") ... we now
> have kref.h -> slab.h -> slub_def.h -> kobject.h -> kref.h when
> CONFIG_SLUB is set.

Egads, that's nasty..

The nicest thing I can come up with is something like the below, but its
not all that nice at all :/



---
--- a/include/linux/kref.h
+++ b/include/linux/kref.h
@@ -16,7 +16,8 @@
#define _KREF_H_

#include <linux/types.h>
-#include <linux/slab.h>
+
+extern void kfree(const void *);

struct kref {
atomic_t refcount;

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