Re: [PATCH] tools lib lk: Uninclude linux/magic.h in debugfs.c.

From: Borislav Petkov
Date: Thu Sep 19 2013 - 03:17:31 EST


On Wed, Sep 18, 2013 at 04:16:40PM -0700, Vinson Lee wrote:
> From: Vinson Lee <vlee@xxxxxxxxxxx>
>
> The compilation only looks for linux/magic.h from the default include
> paths, which does not include the source tree. This results in a build
> error if linux/magic.h is not available or not installed.

Right, we have:

tools/perf/util/include/linux/magic.h

but tools/lib/lk/Makefile doesn't know about it, it seems. Oh well, the
solution falling back to debugfs.h is even better. :)

> For example, this build error occurs on CentOS 5.
>
> $ make -C tools/lib/lk V=1
> [...]
> gcc -o debugfs.o -c -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6
> -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement
> -Wformat-security -Wformat-y2k -Winit-self -Wmissing-declarations
> -Wmissing-prototypes -Wnested-externs -Wno-system-headers
> -Wold-style-definition -Wpacked -Wredundant-decls -Wshadow
> -Wstrict-aliasing=3 -Wstrict-prototypes -Wswitch-default -Wswitch-enum
> -Wundef -Wwrite-strings -Wformat -fPIC -D_LARGEFILE64_SOURCE
> -D_FILE_OFFSET_BITS=64 debugfs.c
> debugfs.c:8:25: error: linux/magic.h: No such file or directory
>
> The only symbol from linux/magic.h needed by debugfs.c is DEBUGFS_MAGIC,
> and that is already defined in debugfs.h. linux/magic.h isn't providing
> any extra symbols and can unincluded. This is similar to the approach by
> perf, which has its own magic.h wrapper at
> tools/perf/util/include/linux/magic.h
>
> Signed-off-by: Vinson Lee <vlee@xxxxxxxxxxx>
> Cc: stable@xxxxxxxxxxxxxxx # 3.10+

Acked-by: Borislav Petkov <bp@xxxxxxx>

> ---
> tools/lib/lk/debugfs.c | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/tools/lib/lk/debugfs.c b/tools/lib/lk/debugfs.c
> index 099e7cd..7c43479 100644
> --- a/tools/lib/lk/debugfs.c
> +++ b/tools/lib/lk/debugfs.c
> @@ -5,7 +5,6 @@
> #include <stdbool.h>
> #include <sys/vfs.h>
> #include <sys/mount.h>
> -#include <linux/magic.h>
> #include <linux/kernel.h>
>
> #include "debugfs.h"
> --
> 1.8.2.1
>

--
Regards/Gruss,
Boris.

Sent from a fat crate under my desk. Formatting is fine.
--
--
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/