On Mon, Oct 09, 2017 at 01:10:01AM +0900, Masahiro Yamada wrote: > Reducing the header dependency will help for speeding the kernel > build, suppressing unnecessary recompile of objects during > git-bisect'ing, etc. Well, does it? You could provide measurements showing before/after time to compile, or time to recompile after touching a header file that is included by radix-tree.h and not by radix-tree-root.h. Look at the files included (never mind the transitively included files): #include <linux/bitops.h> #include <linux/bug.h> #include <linux/kernel.h> #include <linux/list.h> #include <linux/preempt.h> #include <linux/rcupdate.h> #include <linux/spinlock.h> #include <linux/types.h> These are not exactly rare files to be included. My guess is that most of the files in the kernel end up depending on these files *anyway*, either directly or through some path that isn't the radix tree.