Control: reassign -1 src:linux-tools 4.0.2-1
Control: tag -1 fixed-upstream patch
Hi,
Martin Michlmayr <tbm@hp.com> (2015-06-29):
> Package: linux-tools
> Version: 4.0.2-1
> Severity: important
> User: debian-gcc@lists.debian.org
> Usertags: ftbfs-gcc-5
This should have been “Source: linux-tools” rather than “Package:
linux-tools”, reassigning.
Looking upstream, it seems this has been fixed as a side effect of a
performance improvement:
| commit fefd2d9619de3bf0bf02a8622e9f445c3d19cc3f
| Author: He Kuang <hekuang@huawei.com>
| Date: Sun Feb 15 10:33:37 2015 +0800
|
| perf report: Fix branch stack mode cannot be set
> > builtin-report.c: In function 'cmd_report':
> > builtin-report.c:769:23: error: comparison of constant '-1' with boolean expression is always false [-Werror=bool-compare]
> > branch_call_mode == -1) {
> > ^
> > cc1: all warnings being treated as errors
> > Makefile.perf:693: recipe for target '/«PKGBUILDDIR»/debian/build/tools/perf/out/builtin-report.o' failed
diff:
| if (((branch_mode == -1 && has_br_stack) || branch_mode == 1) &&
| - branch_call_mode == -1) {
| + !branch_call_mode) {
| sort__mode = SORT_MODE__BRANCH;
| symbol_conf.cumulate_callchain = false;
| }
I'm attaching a source debdiff generated after having added a quilt
patch and generated an updated source package. I suppose some stripping
might be needed before committing that to svn…
Mraw,
KiBi.
diff -Nru linux-tools-4.0.2/debian/changelog linux-tools-4.0.2/debian/changelog
--- linux-tools-4.0.2/debian/changelog 2015-05-11 04:53:13.000000000 +0200
+++ linux-tools-4.0.2/debian/changelog 2015-08-03 20:14:33.000000000 +0200
@@ -1,3 +1,10 @@
+linux-tools (4.0.2-1.1) UNRELEASED; urgency=high
+
+ * Backport upstream commit fefd2d9619 ("perf report: Fix branch stack
+ mode cannot be set") to fix FTBFS with GCC 5 (Closes: #790536).
+
+ -- Cyril Brulebois <kibi@debian.org> Mon, 03 Aug 2015 20:12:15 +0200
+
linux-tools (4.0.2-1) unstable; urgency=medium
* New upstream release
diff -Nru linux-tools-4.0.2/debian/control.md5sum linux-tools-4.0.2/debian/control.md5sum
--- linux-tools-4.0.2/debian/control.md5sum 2015-05-11 05:06:30.000000000 +0200
+++ linux-tools-4.0.2/debian/control.md5sum 2015-08-03 20:14:37.000000000 +0200
@@ -1,4 +1,4 @@
ac3acacf0cde6d2cc424f28241bb0857 debian/bin/gencontrol.py
-78da1757427bbfdfaa8e54c64e5d627a debian/changelog
+a9673d14f0c75dd3c35b7a3f96ead06d debian/changelog
711fd0ce9d080e6cf27efddb74863670 debian/templates/control.main.in
5205a9db9cb5241ea836fb20502bf045 debian/templates/control.source.in
diff -Nru linux-tools-4.0.2/debian/patches/fix-ftbfs-with-gcc5.patch linux-tools-4.0.2/debian/patches/fix-ftbfs-with-gcc5.patch
--- linux-tools-4.0.2/debian/patches/fix-ftbfs-with-gcc5.patch 1970-01-01 01:00:00.000000000 +0100
+++ linux-tools-4.0.2/debian/patches/fix-ftbfs-with-gcc5.patch 2015-08-03 20:14:16.000000000 +0200
@@ -0,0 +1,54 @@
+From fefd2d9619de3bf0bf02a8622e9f445c3d19cc3f Mon Sep 17 00:00:00 2001
+From: He Kuang <hekuang@huawei.com>
+Date: Sun, 15 Feb 2015 10:33:37 +0800
+Subject: [PATCH] perf report: Fix branch stack mode cannot be set
+
+When perf.data file is obtained using 'perf record -b', perf report
+should use branch stack mode to generate output. But this function is
+broken by improper comparison between boolean and constant -1.
+
+before this patch:
+
+ $ perf report -b -i perf.data
+ Samples: 16 of event 'cycles', Event count (approx.): 3171896
+ Overhead Command Shared Object Symbol
+ 13.59% ls [kernel.kallsyms] [k] prio_tree_remove
+ 13.16% ls [kernel.kallsyms] [k] change_pte_range
+ 12.09% ls [kernel.kallsyms] [k] page_fault
+ 12.02% ls [kernel.kallsyms] [k] zap_pte_range
+ ...
+
+after this patch:
+
+ $ perf report -b -i perf.data
+ Samples: 256 of event 'cycles', Event count (approx.): 256
+ Overhead Command Source Shared Object Source Symbol Target Shared Object Target Symbol
+ 9.38% ls [unknown] [k] 0000000000000000 [unknown] [k] 0000000000000000
+ 6.25% ls libc-2.19.so [.] _dl_addr libc-2.19.so [.] _dl_addr
+ 6.25% ls [kernel.kallsyms] [k] zap_pte_range [kernel.kallsyms] [k] zap_pte_range
+ 6.25% ls [kernel.kallsyms] [k] change_pte_range [kernel.kallsyms] [k] change_pte_range
+ 0.39% ls [kernel.kallsyms] [k] prio_tree_remove [kernel.kallsyms] [k] prio_tree_remove
+ ...
+
+Signed-off-by: He Kuang <hekuang@huawei.com>
+Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+Cc: Paul Mackerras <paulus@samba.org>
+Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
+Cc: Wang Nan <wangnan0@huawei.com>
+Link: http://lkml.kernel.org/r/1423967617-28879-1-git-send-email-hekuang@huawei.com
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+---
+ tools/perf/builtin-report.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/tools/perf/builtin-report.c
++++ b/tools/perf/builtin-report.c
+@@ -766,7 +766,7 @@ repeat:
+ * 0/1 means the user chose a mode.
+ */
+ if (((branch_mode == -1 && has_br_stack) || branch_mode == 1) &&
+- branch_call_mode == -1) {
++ !branch_call_mode) {
+ sort__mode = SORT_MODE__BRANCH;
+ symbol_conf.cumulate_callchain = false;
+ }
diff -Nru linux-tools-4.0.2/debian/patches/series linux-tools-4.0.2/debian/patches/series
--- linux-tools-4.0.2/debian/patches/series 2015-05-11 03:59:07.000000000 +0200
+++ linux-tools-4.0.2/debian/patches/series 2015-08-03 20:12:11.000000000 +0200
@@ -4,3 +4,4 @@
usbip-document-tcp-wrappers.patch
kbuild-fix-recordmcount-dependency.patch
usbip-include-uninstalled-linux-usbip-h.patch
+fix-ftbfs-with-gcc5.patch
diff -Nru linux-tools-4.0.2/debian/rules.gen linux-tools-4.0.2/debian/rules.gen
--- linux-tools-4.0.2/debian/rules.gen 2015-05-11 05:06:30.000000000 +0200
+++ linux-tools-4.0.2/debian/rules.gen 2015-08-03 20:14:37.000000000 +0200
@@ -1,5 +1,5 @@
.NOTPARALLEL:
binary-arch::
- $(MAKE) -f debian/rules.real binary-arch UPSTREAMVERSION='4.0' VERSION='4.0' VERSION_DEBIAN='4.0.2-1'
+ $(MAKE) -f debian/rules.real binary-arch UPSTREAMVERSION='4.0' VERSION='4.0' VERSION_DEBIAN='4.0.2-1.1'
build::
- $(MAKE) -f debian/rules.real build UPSTREAMVERSION='4.0' VERSION='4.0' VERSION_DEBIAN='4.0.2-1'
+ $(MAKE) -f debian/rules.real build UPSTREAMVERSION='4.0' VERSION='4.0' VERSION_DEBIAN='4.0.2-1.1'
Attachment:
signature.asc
Description: Digital signature