* [PATCH] perf tools: Fix build error on zfree()
@ 2014-01-09 14:07 Namhyung Kim
2014-01-13 18:00 ` Arnaldo Carvalho de Melo
2014-01-16 13:37 ` [tip:perf/core] perf tools: Fix build error due to zfree() cast tip-bot for Namhyung Kim
0 siblings, 2 replies; 4+ messages in thread
From: Namhyung Kim @ 2014-01-09 14:07 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo; +Cc: Ingo Molnar, Peter Zijlstra, LKML, Namhyung Kim
It failed to build perf on my ubuntu 10.04 box (gcc 4.4.3):
CC util/strlist.o
cc1: warnings being treated as errors
util/strlist.c: In function ‘str_node__delete’:
util/strlist.c:42: error: dereferencing type-punned pointer will break strict-aliasing rules
util/strlist.c:42: error: dereferencing type-punned pointer will break strict-aliasing rules
CC util/strfilter.o
make: *** [util/strlist.o] Error 1
CC util/srcline.o
cc1: warnings being treated as errors
util/srcline.c: In function ‘addr2line_init’:
util/srcline.c:132: error: dereferencing type-punned pointer will break strict-aliasing rules
util/srcline.c:132: error: dereferencing type-punned pointer will break strict-aliasing rules
util/srcline.c: In function ‘addr2line_cleanup’:
util/srcline.c:143: error: dereferencing type-punned pointer will break strict-aliasing rules
util/srcline.c:143: error: dereferencing type-punned pointer will break strict-aliasing rules
make: *** [util/srcline.o] Error 1
It seems it only allows to remove 'const' qualifier.
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
---
tools/perf/util/srcline.c | 4 ++--
tools/perf/util/strlist.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/tools/perf/util/srcline.c b/tools/perf/util/srcline.c
index 7e67879ebd25..f3e4bc5fe5d2 100644
--- a/tools/perf/util/srcline.c
+++ b/tools/perf/util/srcline.c
@@ -129,7 +129,7 @@ static struct a2l_data *addr2line_init(const char *path)
out:
if (a2l) {
- zfree((void **)&a2l->input);
+ zfree((char **)&a2l->input);
free(a2l);
}
bfd_close(abfd);
@@ -140,7 +140,7 @@ static void addr2line_cleanup(struct a2l_data *a2l)
{
if (a2l->abfd)
bfd_close(a2l->abfd);
- zfree((void **)&a2l->input);
+ zfree((char **)&a2l->input);
zfree(&a2l->syms);
free(a2l);
}
diff --git a/tools/perf/util/strlist.c b/tools/perf/util/strlist.c
index 61a90bf24b4d..71f9d102b96f 100644
--- a/tools/perf/util/strlist.c
+++ b/tools/perf/util/strlist.c
@@ -39,7 +39,7 @@ out_delete:
static void str_node__delete(struct str_node *snode, bool dupstr)
{
if (dupstr)
- zfree((void **)&snode->s);
+ zfree((char **)&snode->s);
free(snode);
}
--
1.7.9.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] perf tools: Fix build error on zfree()
2014-01-09 14:07 [PATCH] perf tools: Fix build error on zfree() Namhyung Kim
@ 2014-01-13 18:00 ` Arnaldo Carvalho de Melo
2014-01-14 14:21 ` Namhyung Kim
2014-01-16 13:37 ` [tip:perf/core] perf tools: Fix build error due to zfree() cast tip-bot for Namhyung Kim
1 sibling, 1 reply; 4+ messages in thread
From: Arnaldo Carvalho de Melo @ 2014-01-13 18:00 UTC (permalink / raw)
To: Namhyung Kim; +Cc: Ingo Molnar, Peter Zijlstra, LKML, Namhyung Kim
Em Thu, Jan 09, 2014 at 11:07:59PM +0900, Namhyung Kim escreveu:
> It failed to build perf on my ubuntu 10.04 box (gcc 4.4.3):
>
> CC util/strlist.o
> cc1: warnings being treated as errors
> util/strlist.c: In function ‘str_node__delete’:
> util/strlist.c:42: error: dereferencing type-punned pointer will break strict-aliasing rules
> util/strlist.c:42: error: dereferencing type-punned pointer will break strict-aliasing rules
> CC util/strfilter.o
> make: *** [util/strlist.o] Error 1
>
> CC util/srcline.o
> cc1: warnings being treated as errors
> util/srcline.c: In function ‘addr2line_init’:
> util/srcline.c:132: error: dereferencing type-punned pointer will break strict-aliasing rules
> util/srcline.c:132: error: dereferencing type-punned pointer will break strict-aliasing rules
> util/srcline.c: In function ‘addr2line_cleanup’:
> util/srcline.c:143: error: dereferencing type-punned pointer will break strict-aliasing rules
> util/srcline.c:143: error: dereferencing type-punned pointer will break strict-aliasing rules
> make: *** [util/srcline.o] Error 1
>
> It seems it only allows to remove 'const' qualifier.
Humm, I just tried building it here on:
acme@ubuntu13:~/git/linux$ uname -a
Linux ubuntu13 3.11.0-12-generic #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
acme@ubuntu13:~/git/linux$ cat /etc/debian_version
wheezy/sid
acme@ubuntu13:~/git/linux$
acme@ubuntu13:~/git/linux$ make O=/tmp/build/perf -C tools/perf install
make: Entering directory `/home/acme/git/linux/tools/perf'
BUILD: Doing 'make -j4' parallel build
Auto-detecting system features:
... backtrace: [ on ]
... dwarf: [ OFF ]
... fortify-source: [ on ]
... glibc: [ on ]
... gtk2: [ OFF ]
... gtk2-infobar: [ OFF ]
... libaudit: [ OFF ]
... libbfd: [ OFF ]
... libelf: [ OFF ]
... libelf-getphdrnum: [ OFF ]
... libelf-mmap: [ OFF ]
... libnuma: [ OFF ]
... libperl: [ OFF ]
... libpython: [ OFF ]
... libpython-version: [ OFF ]
... libslang: [ OFF ]
... libunwind: [ OFF ]
... on-exit: [ on ]
... stackprotector-all: [ on ]
... timerfd: [ on ]
config/Makefile:276: No libelf found, disables 'probe' tool, please install elfutils-libelf-devel/libelf-dev
config/Makefile:327: No libunwind found, disabling post unwind support. Please install libunwind-dev[el] >= 1.1
config/Makefile:350: No libaudit.h found, disables 'trace' tool, please install audit-libs-devel or libaudit-dev
config/Makefile:364: slang not found, disables TUI support. Please install slang-devel or libslang-dev
config/Makefile:377: GTK2 not found, disables GTK2 support. Please install gtk2-devel or libgtk2.0-dev
config/Makefile:438: The path '/usr/bin/python-config' is not executable.
config/Makefile:442: No python-config tool was found
config/Makefile:442: Python support will not be built
config/Makefile:532: No numa.h found, disables 'perf bench numa mem' benchmark, please install numactl-devel/libnuma-devel/libnuma-dev
MKDIR /tmp/build/perf/arch
<SNIP>
CC /tmp/build/perf/util/strlist.o
<SNIP>
CC /tmp/build/perf/util/parse-events.o
CC /tmp/build/perf/util/parse-events-flex.o
AR /tmp/build/perf/libperf.a
LINK /tmp/build/perf/perf
INSTALL binaries
INSTALL libexec
INSTALL perf-archive
INSTALL perf_completion-script
INSTALL tests
make: Leaving directory `/home/acme/git/linux/tools/perf'
acme@ubuntu13:~/git/linux$
Works just fine, can you provide more details about your system? Is it 32-bit?
I'm installing more devel packages to this just installed 64-bit VM system and
will install another VM with a 32-bit Ubuntu with the same version as you.
- Arnaldo
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] perf tools: Fix build error on zfree()
2014-01-13 18:00 ` Arnaldo Carvalho de Melo
@ 2014-01-14 14:21 ` Namhyung Kim
0 siblings, 0 replies; 4+ messages in thread
From: Namhyung Kim @ 2014-01-14 14:21 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo; +Cc: Ingo Molnar, Peter Zijlstra, LKML, Namhyung Kim
2014-01-13 (월), 15:00 -0300, Arnaldo Carvalho de Melo:
> Em Thu, Jan 09, 2014 at 11:07:59PM +0900, Namhyung Kim escreveu:
> > It failed to build perf on my ubuntu 10.04 box (gcc 4.4.3):
> >
> > CC util/strlist.o
> > cc1: warnings being treated as errors
> > util/strlist.c: In function ‘str_node__delete’:
> > util/strlist.c:42: error: dereferencing type-punned pointer will break strict-aliasing rules
> > util/strlist.c:42: error: dereferencing type-punned pointer will break strict-aliasing rules
> > CC util/strfilter.o
> > make: *** [util/strlist.o] Error 1
> >
> > CC util/srcline.o
> > cc1: warnings being treated as errors
> > util/srcline.c: In function ‘addr2line_init’:
> > util/srcline.c:132: error: dereferencing type-punned pointer will break strict-aliasing rules
> > util/srcline.c:132: error: dereferencing type-punned pointer will break strict-aliasing rules
> > util/srcline.c: In function ‘addr2line_cleanup’:
> > util/srcline.c:143: error: dereferencing type-punned pointer will break strict-aliasing rules
> > util/srcline.c:143: error: dereferencing type-punned pointer will break strict-aliasing rules
> > make: *** [util/srcline.o] Error 1
> >
> > It seems it only allows to remove 'const' qualifier.
>
> Humm, I just tried building it here on:
>
> acme@ubuntu13:~/git/linux$ uname -a
> Linux ubuntu13 3.11.0-12-generic #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
> acme@ubuntu13:~/git/linux$ cat /etc/debian_version
> wheezy/sid
> acme@ubuntu13:~/git/linux$
>
> acme@ubuntu13:~/git/linux$ make O=/tmp/build/perf -C tools/perf install
> make: Entering directory `/home/acme/git/linux/tools/perf'
> BUILD: Doing 'make -j4' parallel build
>
> Auto-detecting system features:
> ... backtrace: [ on ]
> ... dwarf: [ OFF ]
> ... fortify-source: [ on ]
> ... glibc: [ on ]
> ... gtk2: [ OFF ]
> ... gtk2-infobar: [ OFF ]
> ... libaudit: [ OFF ]
> ... libbfd: [ OFF ]
> ... libelf: [ OFF ]
> ... libelf-getphdrnum: [ OFF ]
> ... libelf-mmap: [ OFF ]
> ... libnuma: [ OFF ]
> ... libperl: [ OFF ]
> ... libpython: [ OFF ]
> ... libpython-version: [ OFF ]
> ... libslang: [ OFF ]
> ... libunwind: [ OFF ]
> ... on-exit: [ on ]
> ... stackprotector-all: [ on ]
> ... timerfd: [ on ]
>
> config/Makefile:276: No libelf found, disables 'probe' tool, please install elfutils-libelf-devel/libelf-dev
> config/Makefile:327: No libunwind found, disabling post unwind support. Please install libunwind-dev[el] >= 1.1
> config/Makefile:350: No libaudit.h found, disables 'trace' tool, please install audit-libs-devel or libaudit-dev
> config/Makefile:364: slang not found, disables TUI support. Please install slang-devel or libslang-dev
> config/Makefile:377: GTK2 not found, disables GTK2 support. Please install gtk2-devel or libgtk2.0-dev
> config/Makefile:438: The path '/usr/bin/python-config' is not executable.
> config/Makefile:442: No python-config tool was found
> config/Makefile:442: Python support will not be built
> config/Makefile:532: No numa.h found, disables 'perf bench numa mem' benchmark, please install numactl-devel/libnuma-devel/libnuma-dev
> MKDIR /tmp/build/perf/arch
> <SNIP>
> CC /tmp/build/perf/util/strlist.o
> <SNIP>
> CC /tmp/build/perf/util/parse-events.o
> CC /tmp/build/perf/util/parse-events-flex.o
> AR /tmp/build/perf/libperf.a
> LINK /tmp/build/perf/perf
> INSTALL binaries
> INSTALL libexec
> INSTALL perf-archive
> INSTALL perf_completion-script
> INSTALL tests
> make: Leaving directory `/home/acme/git/linux/tools/perf'
> acme@ubuntu13:~/git/linux$
>
> Works just fine, can you provide more details about your system? Is it 32-bit?
Nope, it's a 64-bit machine.
$ uname -a
Linux leonhard 2.6.32-45-generic #104-Ubuntu SMP Tue Feb 19 21:20:09 UTC
2013 x86_64 GNU/Linux
$ cat /etc/debian_version
squeeze/sid
$ make
BUILD: Doing 'make -j4' parallel build
Auto-detecting system features:
... backtrace: [ on ]
... dwarf: [ on ]
... fortify-source: [ on ]
... glibc: [ on ]
... gtk2: [ on ]
... gtk2-infobar: [ on ]
... libaudit: [ on ]
... libbfd: [ on ]
... libelf: [ on ]
... libelf-getphdrnum: [ OFF ]
... libelf-mmap: [ on ]
... libnuma: [ OFF ]
... libperl: [ on ]
... libpython: [ on ]
... libpython-version: [ on ]
... libslang: [ on ]
... libunwind: [ OFF ]
... on-exit: [ on ]
... stackprotector-all: [ on ]
... timerfd: [ on ]
config/Makefile:327: No libunwind found, disabling post unwind support.
Please install libunwind-dev[el] >= 1.1
config/Makefile:532: No numa.h found, disables 'perf bench numa mem'
benchmark, please install numactl-devel/libnuma-devel/libnuma-dev
GEN common-cmds.h
<SNIP>
CC util/strlist.o
CC util/string.o
cc1: warnings being treated as errors
util/strlist.c: In function ‘str_node__delete’:
util/strlist.c:42: error: dereferencing type-punned pointer will break
strict-aliasing rules
util/strlist.c:42: error: dereferencing type-punned pointer will break
strict-aliasing rules
make[1]: *** [util/strlist.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [all] Error 2
$ gcc --version
gcc (Ubuntu 4.4.3-4ubuntu5.1) 4.4.3
Copyright (C) 2009 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is
NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
Thanks,
Namhyung
^ permalink raw reply [flat|nested] 4+ messages in thread
* [tip:perf/core] perf tools: Fix build error due to zfree() cast
2014-01-09 14:07 [PATCH] perf tools: Fix build error on zfree() Namhyung Kim
2014-01-13 18:00 ` Arnaldo Carvalho de Melo
@ 2014-01-16 13:37 ` tip-bot for Namhyung Kim
1 sibling, 0 replies; 4+ messages in thread
From: tip-bot for Namhyung Kim @ 2014-01-16 13:37 UTC (permalink / raw)
To: linux-tip-commits
Cc: acme, linux-kernel, hpa, mingo, peterz, namhyung.kim,
mark.rutland, namhyung, tglx
Commit-ID: 7d16c634233c411f54b89d0f1d51750dc85c5f7e
Gitweb: http://git.kernel.org/tip/7d16c634233c411f54b89d0f1d51750dc85c5f7e
Author: Namhyung Kim <namhyung@kernel.org>
AuthorDate: Thu, 9 Jan 2014 23:07:59 +0900
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Wed, 15 Jan 2014 15:10:04 -0300
perf tools: Fix build error due to zfree() cast
It failed to build perf on my ubuntu 10.04 box (gcc 4.4.3):
CC util/strlist.o
cc1: warnings being treated as errors
util/strlist.c: In function ‘str_node__delete’:
util/strlist.c:42: error: dereferencing type-punned pointer will break strict-aliasing rules
util/strlist.c:42: error: dereferencing type-punned pointer will break strict-aliasing rules
CC util/strfilter.o
make: *** [util/strlist.o] Error 1
CC util/srcline.o
cc1: warnings being treated as errors
util/srcline.c: In function ‘addr2line_init’:
util/srcline.c:132: error: dereferencing type-punned pointer will break strict-aliasing rules
util/srcline.c:132: error: dereferencing type-punned pointer will break strict-aliasing rules
util/srcline.c: In function ‘addr2line_cleanup’:
util/srcline.c:143: error: dereferencing type-punned pointer will break strict-aliasing rules
util/srcline.c:143: error: dereferencing type-punned pointer will break strict-aliasing rules
make: *** [util/srcline.o] Error 1
It seems it only allows to remove 'const' qualifier.
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung.kim@lge.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/1389276479-9047-1-git-send-email-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/srcline.c | 4 ++--
tools/perf/util/strlist.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/tools/perf/util/srcline.c b/tools/perf/util/srcline.c
index 7e67879..f3e4bc5 100644
--- a/tools/perf/util/srcline.c
+++ b/tools/perf/util/srcline.c
@@ -129,7 +129,7 @@ static struct a2l_data *addr2line_init(const char *path)
out:
if (a2l) {
- zfree((void **)&a2l->input);
+ zfree((char **)&a2l->input);
free(a2l);
}
bfd_close(abfd);
@@ -140,7 +140,7 @@ static void addr2line_cleanup(struct a2l_data *a2l)
{
if (a2l->abfd)
bfd_close(a2l->abfd);
- zfree((void **)&a2l->input);
+ zfree((char **)&a2l->input);
zfree(&a2l->syms);
free(a2l);
}
diff --git a/tools/perf/util/strlist.c b/tools/perf/util/strlist.c
index 61a90bf..71f9d10 100644
--- a/tools/perf/util/strlist.c
+++ b/tools/perf/util/strlist.c
@@ -39,7 +39,7 @@ out_delete:
static void str_node__delete(struct str_node *snode, bool dupstr)
{
if (dupstr)
- zfree((void **)&snode->s);
+ zfree((char **)&snode->s);
free(snode);
}
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-01-16 13:44 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-09 14:07 [PATCH] perf tools: Fix build error on zfree() Namhyung Kim
2014-01-13 18:00 ` Arnaldo Carvalho de Melo
2014-01-14 14:21 ` Namhyung Kim
2014-01-16 13:37 ` [tip:perf/core] perf tools: Fix build error due to zfree() cast tip-bot for Namhyung Kim
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.