From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753296AbbC0HkK (ORCPT ); Fri, 27 Mar 2015 03:40:10 -0400 Received: from terminus.zytor.com ([198.137.202.10]:34043 "EHLO terminus.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752407AbbC0HkI (ORCPT ); Fri, 27 Mar 2015 03:40:08 -0400 Date: Fri, 27 Mar 2015 00:39:41 -0700 From: tip-bot for David Ahern Message-ID: Cc: mingo@kernel.org, tglx@linutronix.de, linux-kernel@vger.kernel.org, hpa@zytor.com, acme@redhat.com, david.ahern@oracle.com Reply-To: mingo@kernel.org, linux-kernel@vger.kernel.org, david.ahern@oracle.com, hpa@zytor.com, acme@redhat.com, tglx@linutronix.de In-Reply-To: <1427228049-51893-1-git-send-email-david.ahern@oracle.com> References: <1427228049-51893-1-git-send-email-david.ahern@oracle.com> To: linux-tip-commits@vger.kernel.org Subject: [tip:perf/core] perf timechart: Fix SIBGUS error on sparc64 Git-Commit-ID: e94eedab3ab8201fd41480171b2fabbf3c5b1ae0 X-Mailer: tip-git-log-daemon Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Commit-ID: e94eedab3ab8201fd41480171b2fabbf3c5b1ae0 Gitweb: http://git.kernel.org/tip/e94eedab3ab8201fd41480171b2fabbf3c5b1ae0 Author: David Ahern AuthorDate: Tue, 24 Mar 2015 16:14:09 -0400 Committer: Arnaldo Carvalho de Melo CommitDate: Thu, 26 Mar 2015 10:52:28 -0300 perf timechart: Fix SIBGUS error on sparc64 perf timechart -T on sparc64 is terminating due to SIGBUS. Backtrace: Program received signal SIGBUS, Bus error. 0x0000000000173d7c in perf_evsel__intval (evsel=, sample=0x7feffffda28, name=0x289b28 "prev_state") at util/evsel.c:1918 1918 util/evsel.c: No such file or directory. in util/evsel.c Missing separate debuginfos, use: debuginfo-install audit-libs-2.3.7-1.0.1.el6.sparc64 bzip2-libs-1.0.5-7.el6_0.sparc64 elfutils-libelf-0.155-2.0.3.el6.sparc64 elfutils-libs-0.155-2.0.3.el6.sparc64 glibc-2.12-1.132.0.8.el6_5.sparc64 numactl-2.0.7-8.el6.sparc64 python-libs-2.6.6-52.0.2.el6.sparc64 slang-2.2.1-1.el6.sparc64 xz-libs-4.999.9-0.3.beta.20091007git.el6.sparc64 zlib-1.2.3-29.el6.sparc64 (gdb) bt 0 0x0000000000173d7c in perf_evsel__intval (evsel=, sample=0x7feffffda28, name=0x289b28 "prev_state") at util/evsel.c:1918 1 0x0000000000123b94 in process_sample_sched_switch (tchart=0x7feffffe040, evsel=0x4ca850, sample=0x7feffffda28, backtrace=0xc39010 "") at builtin-timechart.c:627 2 0x0000000000122828 in process_sample_event (tool=0x7feffffe040, event=, sample=0x7feffffda28, evsel=0x4ca850, machine=0x4c9c88) at builtin-timechart.c:569 Another extended load on unaligned pointer. As before fix by copying to a temporary variable using memcpy. Signed-off-by: David Ahern Link: http://lkml.kernel.org/r/1427228049-51893-1-git-send-email-david.ahern@oracle.com Signed-off-by: Arnaldo Carvalho de Melo --- tools/perf/util/evsel.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c index bb4eff2..358e595 100644 --- a/tools/perf/util/evsel.c +++ b/tools/perf/util/evsel.c @@ -1915,7 +1915,7 @@ u64 perf_evsel__intval(struct perf_evsel *evsel, struct perf_sample *sample, value = *(u32 *)ptr; break; case 8: - value = *(u64 *)ptr; + memcpy(&value, ptr, sizeof(u64)); break; default: return 0;