Re: [PATCH] bpfilter: remove extra header search paths for bpfilter_umh
From: Masahiro Yamada
Date: Sat Feb 02 2019 - 08:41:29 EST
On Sat, Feb 2, 2019 at 9:00 AM Alexei Starovoitov
> On Thu, Jan 31, 2019 at 12:15:35PM +0900, Masahiro Yamada wrote:
> > Currently, the header search paths -Itools/include and
> > -Itools/include/uapi are not used. Let's drop the unused code.
> > We can remove -I. too by fixing up one C file.
> > Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
> > ---
> > Perhaps, are these extra header search paths for
> > more upstreaming in the future?
> > If this patch is rejected, I will send an alternative one.
> > To clean up the Kbuild core,
> > I want to drop as many unused header search paths as possible.
> > net/bpfilter/Makefile | 1 -
> > net/bpfilter/main.c | 2 +-
> > 2 files changed, 1 insertion(+), 2 deletions(-)
> > diff --git a/net/bpfilter/Makefile b/net/bpfilter/Makefile
> > index 0947ee7..5d6c776 100644
> > --- a/net/bpfilter/Makefile
> > +++ b/net/bpfilter/Makefile
> > @@ -5,7 +5,6 @@
> > hostprogs-y := bpfilter_umh
> > bpfilter_umh-objs := main.o
> > -KBUILD_HOSTCFLAGS += -I. -Itools/include/ -Itools/include/uapi
> > HOSTCC := $(CC)
> > ifeq ($(CONFIG_BPFILTER_UMH), y)
> > diff --git a/net/bpfilter/main.c b/net/bpfilter/main.c
> > index 1317f10..61ce845 100644
> > --- a/net/bpfilter/main.c
> > +++ b/net/bpfilter/main.c
> > @@ -6,7 +6,7 @@
> > #include <sys/socket.h>
> > #include <fcntl.h>
> > #include <unistd.h>
> > -#include "include/uapi/linux/bpf.h"
> > +#include "../../include/uapi/linux/bpf.h"
> argh. that's not pretty.
> I would prefer to keep -I in a makefile
This hunk is not a question.
The code #include "include/uapi/linux/bpf.h" is wrong
if you understand the meaning of #include "..."
The directive #include "include/uapi/linux/bpf.h"
means the preprocessor should look for this header first
in the path relative to the directory of net/bpfilter/main.c
That is, the preprocessor will look for
which obviously does not exist.
I am fixing this because adding -I.
in kernel Makefile is always wrong.
For example, commit 5cd5548ff439b91