2012-10-09 17:07:51

by Borislav Petkov

[permalink] [raw]
Subject: perf build error (linux/rbtree_augmented.h)

Is this an already known issue (building perf on latest linus):

$ make tools/perf_install

...

../../lib/rbtree.c:24:36: fatal error: linux/rbtree_augmented.h: No such file or directory
compilation terminated.
make[2]: *** [util/rbtree.o] Error 1
make[1]: *** [perf_install] Error 2
make: *** [tools/perf_install] Error 2

?

Thanks.

--
Regards/Gruss,
Boris.

Advanced Micro Devices GmbH
Einsteinring 24, 85609 Dornach
GM: Alberto Bozzo
Reg: Dornach, Landkreis Muenchen
HRB Nr. 43632 WEEE Registernr: 129 19551


2012-10-09 18:02:03

by Markus Trippelsdorf

[permalink] [raw]
Subject: [PATCH] perf: Handln new rbtree implementation

Perf build fails with the new rbtree implementation:

../../lib/rbtree.c:24:36: fatal error: linux/rbtree_augmented.h: No such
file or
directory
compilation terminated.
make[2]: *** [util/rbtree.o] Error 1
make[1]: *** [perf_install] Error 2
make: *** [tools/perf_install] Error 2

Fix by updating the Makefile and adding a btree_augmented.h wrapper.

Reported-by: Borislav Petkov <[email protected]>
Signed-off-by: Markus Trippelsdorf <[email protected]>
---
tools/perf/Makefile | 3 ++-
tools/perf/util/include/linux/rbtree.h | 1 -
tools/perf/util/include/linux/rbtree_augmented.h | 2 ++
tools/perf/util/scripting-engines/trace-event-perl.c | 2 +-
4 files changed, 5 insertions(+), 3 deletions(-)
create mode 100644 tools/perf/util/include/linux/rbtree_augmented.h

diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index 86258c2..9546ff5 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -268,6 +268,7 @@ LIB_H += util/include/linux/magic.h
LIB_H += util/include/linux/poison.h
LIB_H += util/include/linux/prefetch.h
LIB_H += util/include/linux/rbtree.h
+LIB_H += util/include/linux/rbtree_augmented.h
LIB_H += util/include/linux/string.h
LIB_H += util/include/linux/types.h
LIB_H += util/include/linux/linkage.h
@@ -906,7 +907,7 @@ $(OUTPUT)ui/browsers/map.o: ui/browsers/map.c $(OUTPUT)PERF-CFLAGS
$(QUIET_CC)$(CC) -o $@ -c $(ALL_CFLAGS) -DENABLE_SLFUTURE_CONST $<

$(OUTPUT)util/rbtree.o: ../../lib/rbtree.c $(OUTPUT)PERF-CFLAGS
- $(QUIET_CC)$(CC) -o $@ -c $(ALL_CFLAGS) -DETC_PERFCONFIG='"$(ETC_PERFCONFIG_SQ)"' $<
+ $(QUIET_CC)$(CC) -o $@ -c $(ALL_CFLAGS) -Wno-unused-parameter -DETC_PERFCONFIG='"$(ETC_PERFCONFIG_SQ)"' $<

$(OUTPUT)util/parse-events.o: util/parse-events.c $(OUTPUT)PERF-CFLAGS
$(QUIET_CC)$(CC) -o $@ -c $(ALL_CFLAGS) -Wno-redundant-decls $<
diff --git a/tools/perf/util/include/linux/rbtree.h b/tools/perf/util/include/linux/rbtree.h
index 9bcdc84..2a030c5 100644
--- a/tools/perf/util/include/linux/rbtree.h
+++ b/tools/perf/util/include/linux/rbtree.h
@@ -1,3 +1,2 @@
#include <stdbool.h>
-#include <stdbool.h>
#include "../../../../include/linux/rbtree.h"
diff --git a/tools/perf/util/include/linux/rbtree_augmented.h b/tools/perf/util/include/linux/rbtree_augmented.h
new file mode 100644
index 0000000..9d6fcdf
--- /dev/null
+++ b/tools/perf/util/include/linux/rbtree_augmented.h
@@ -0,0 +1,2 @@
+#include <stdbool.h>
+#include "../../../../include/linux/rbtree_augmented.h"
diff --git a/tools/perf/util/scripting-engines/trace-event-perl.c b/tools/perf/util/scripting-engines/trace-event-perl.c
index f80605e..f53889d 100644
--
Markus

2012-10-09 18:35:40

by Borislav Petkov

[permalink] [raw]
Subject: Re: [PATCH] perf: Handln new rbtree implementation

On Tue, Oct 09, 2012 at 08:01:56PM +0200, Markus Trippelsdorf wrote:
> Perf build fails with the new rbtree implementation:
>
> ../../lib/rbtree.c:24:36: fatal error: linux/rbtree_augmented.h: No such
> file or
> directory
> compilation terminated.
> make[2]: *** [util/rbtree.o] Error 1
> make[1]: *** [perf_install] Error 2
> make: *** [tools/perf_install] Error 2
>
> Fix by updating the Makefile and adding a btree_augmented.h wrapper.
>
> Reported-by: Borislav Petkov <[email protected]>
> Signed-off-by: Markus Trippelsdorf <[email protected]>

Good job!

Tested-by: Borislav Petkov <[email protected]>

Thanks.

--
Regards/Gruss,
Boris.

Advanced Micro Devices GmbH
Einsteinring 24, 85609 Dornach
GM: Alberto Bozzo
Reg: Dornach, Landkreis Muenchen
HRB Nr. 43632 WEEE Registernr: 129 19551