* [PATCH] tools/perf: fix build when WERROR=1
@ 2012-08-08 15:05 Andy Shevchenko
2012-08-08 16:18 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 7+ messages in thread
From: Andy Shevchenko @ 2012-08-08 15:05 UTC (permalink / raw)
To: Peter Zijlstra, Paul Mackerras, Ingo Molnar,
Arnaldo Carvalho de Melo, linux-next, Andrew Morton,
Stephen Rothwell
Cc: Andy Shevchenko
util/symbol.c: In function ‘hex2u64’:
util/symbol.c:2836:2: error: passing argument 2 of ‘strtoull’ from incompatible pointer type [-Werror]
In file included from util/symbol.c:3:0:
/usr/include/stdlib.h:215:31: note: expected ‘char ** restrict’ but argument is of type ‘const char **’
cc1: all warnings being treated as errors
make[1]: *** [util/symbol.o] Error 1
make[1]: Leaving directory `/home/andy/prj/linux-2.6/tools/perf'
make: *** [perf] Error 2
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
tools/perf/util/symbol.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
index ba2a489..26e695c 100644
--- a/tools/perf/util/symbol.c
+++ b/tools/perf/util/symbol.c
@@ -2831,7 +2831,7 @@ int machines__create_kernel_maps(struct rb_root *machines, pid_t pid)
*/
int hex2u64(const char *ptr, u64 *long_val)
{
- const char *p = ptr;
+ char *p;
*long_val = strtoull(ptr, &p, 16);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] tools/perf: fix build when WERROR=1
2012-08-08 15:05 [PATCH] tools/perf: fix build when WERROR=1 Andy Shevchenko
@ 2012-08-08 16:18 ` Arnaldo Carvalho de Melo
2012-08-08 16:32 ` Andy Shevchenko
2012-08-08 16:37 ` [PATCH] tools/perf: remove yet another strtoull() Andy Shevchenko
0 siblings, 2 replies; 7+ messages in thread
From: Arnaldo Carvalho de Melo @ 2012-08-08 16:18 UTC (permalink / raw)
To: Andy Shevchenko
Cc: Peter Zijlstra, Paul Mackerras, Ingo Molnar, linux-next,
Andrew Morton, Stephen Rothwell
Em Wed, Aug 08, 2012 at 06:05:50PM +0300, Andy Shevchenko escreveu:
> util/symbol.c: In function ‘hex2u64’:
> util/symbol.c:2836:2: error: passing argument 2 of ‘strtoull’ from incompatible pointer type [-Werror]
> In file included from util/symbol.c:3:0:
> /usr/include/stdlib.h:215:31: note: expected ‘char ** restrict’ but argument is of type ‘const char **’
> cc1: all warnings being treated as errors
> make[1]: *** [util/symbol.o] Error 1
> make[1]: Leaving directory `/home/andy/prj/linux-2.6/tools/perf'
> make: *** [perf] Error 2
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
> tools/perf/util/symbol.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
> index ba2a489..26e695c 100644
> --- a/tools/perf/util/symbol.c
> +++ b/tools/perf/util/symbol.c
> @@ -2831,7 +2831,7 @@ int machines__create_kernel_maps(struct rb_root *machines, pid_t pid)
> */
> int hex2u64(const char *ptr, u64 *long_val)
> {
> - const char *p = ptr;
> + char *p;
>
> *long_val = strtoull(ptr, &p, 16);
What tree is this against? Here I have:
/*
* While we find nice hex chars, build a long_val.
* Return number of chars processed.
*/
int hex2u64(const char *ptr, u64 *long_val)
{
const char *p = ptr;
*long_val = 0;
while (*p) {
const int hex_val = hex(*p);
if (hex_val < 0)
break;
*long_val = (*long_val << 4) | hex_val;
p++;
}
return p - ptr;
}
- Arnaldo
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] tools/perf: fix build when WERROR=1
2012-08-08 16:18 ` Arnaldo Carvalho de Melo
@ 2012-08-08 16:32 ` Andy Shevchenko
2012-08-08 16:38 ` Arnaldo Carvalho de Melo
2012-08-08 16:37 ` [PATCH] tools/perf: remove yet another strtoull() Andy Shevchenko
1 sibling, 1 reply; 7+ messages in thread
From: Andy Shevchenko @ 2012-08-08 16:32 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo; +Cc: linux-next
On Wed, 2012-08-08 at 13:18 -0300, Arnaldo Carvalho de Melo wrote:
> Em Wed, Aug 08, 2012 at 06:05:50PM +0300, Andy Shevchenko escreveu:
> > util/symbol.c: In function ‘hex2u64’:
> > util/symbol.c:2836:2: error: passing argument 2 of ‘strtoull’ from incompatible pointer type [-Werror]
> > In file included from util/symbol.c:3:0:
> > /usr/include/stdlib.h:215:31: note: expected ‘char ** restrict’ but argument is of type ‘const char **’
> > cc1: all warnings being treated as errors
> > make[1]: *** [util/symbol.o] Error 1
> > make[1]: Leaving directory `/home/andy/prj/linux-2.6/tools/perf'
> > make: *** [perf] Error 2
> >
> > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> > ---
> > tools/perf/util/symbol.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
> > index ba2a489..26e695c 100644
> > --- a/tools/perf/util/symbol.c
> > +++ b/tools/perf/util/symbol.c
> > @@ -2831,7 +2831,7 @@ int machines__create_kernel_maps(struct rb_root *machines, pid_t pid)
> > */
> > int hex2u64(const char *ptr, u64 *long_val)
> > {
> > - const char *p = ptr;
> > + char *p;
> >
> > *long_val = strtoull(ptr, &p, 16);
>
> What tree is this against? Here I have:
Ah, it's a fix on top on mine other fix.
I'll resend squashed version soon.
>
> /*
> * While we find nice hex chars, build a long_val.
> * Return number of chars processed.
> */
> int hex2u64(const char *ptr, u64 *long_val)
> {
> const char *p = ptr;
> *long_val = 0;
>
> while (*p) {
> const int hex_val = hex(*p);
>
> if (hex_val < 0)
> break;
>
> *long_val = (*long_val << 4) | hex_val;
> p++;
> }
>
> return p - ptr;
> }
>
> - Arnaldo
--
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] tools/perf: fix build when WERROR=1
2012-08-08 16:32 ` Andy Shevchenko
@ 2012-08-08 16:38 ` Arnaldo Carvalho de Melo
2012-08-08 16:47 ` Andy Shevchenko
0 siblings, 1 reply; 7+ messages in thread
From: Arnaldo Carvalho de Melo @ 2012-08-08 16:38 UTC (permalink / raw)
To: Andy Shevchenko; +Cc: linux-next
Em Wed, Aug 08, 2012 at 07:32:46PM +0300, Andy Shevchenko escreveu:
> On Wed, 2012-08-08 at 13:18 -0300, Arnaldo Carvalho de Melo wrote:
> > > {
> > > - const char *p = ptr;
> > > + char *p;
> > >
> > > *long_val = strtoull(ptr, &p, 16);
> >
> > What tree is this against? Here I have:
> Ah, it's a fix on top on mine other fix.
> I'll resend squashed version soon.
But are you having trouble with the current implementation of hex2u64?
- Arnaldo
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] tools/perf: fix build when WERROR=1
2012-08-08 16:38 ` Arnaldo Carvalho de Melo
@ 2012-08-08 16:47 ` Andy Shevchenko
2012-08-08 17:09 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 7+ messages in thread
From: Andy Shevchenko @ 2012-08-08 16:47 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo; +Cc: linux-next
On Wed, 2012-08-08 at 13:38 -0300, Arnaldo Carvalho de Melo wrote:
> > Ah, it's a fix on top on mine other fix.
> > I'll resend squashed version soon.
> But are you having trouble with the current implementation of hex2u64?
Actually it's a clean up.
--
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] tools/perf: fix build when WERROR=1
2012-08-08 16:47 ` Andy Shevchenko
@ 2012-08-08 17:09 ` Arnaldo Carvalho de Melo
0 siblings, 0 replies; 7+ messages in thread
From: Arnaldo Carvalho de Melo @ 2012-08-08 17:09 UTC (permalink / raw)
To: Andy Shevchenko; +Cc: linux-next
Em Wed, Aug 08, 2012 at 07:47:22PM +0300, Andy Shevchenko escreveu:
> On Wed, 2012-08-08 at 13:38 -0300, Arnaldo Carvalho de Melo wrote:
> > > Ah, it's a fix on top on mine other fix.
> > > I'll resend squashed version soon.
> > But are you having trouble with the current implementation of hex2u64?
> Actually it's a clean up.
Ok, fair enough, will get it in my next round,
- Arnaldo
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] tools/perf: remove yet another strtoull()
2012-08-08 16:18 ` Arnaldo Carvalho de Melo
2012-08-08 16:32 ` Andy Shevchenko
@ 2012-08-08 16:37 ` Andy Shevchenko
1 sibling, 0 replies; 7+ messages in thread
From: Andy Shevchenko @ 2012-08-08 16:37 UTC (permalink / raw)
To: linux-next; +Cc: Andy Shevchenko, Arnaldo Carvalho de Melo
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
---
tools/perf/util/symbol.c | 24 ++----------------------
1 file changed, 2 insertions(+), 22 deletions(-)
diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
index 8b63b67..26e695c 100644
--- a/tools/perf/util/symbol.c
+++ b/tools/perf/util/symbol.c
@@ -2825,35 +2825,15 @@ int machines__create_kernel_maps(struct rb_root *machines, pid_t pid)
return machine__create_kernel_maps(machine);
}
-static int hex(char ch)
-{
- if ((ch >= '0') && (ch <= '9'))
- return ch - '0';
- if ((ch >= 'a') && (ch <= 'f'))
- return ch - 'a' + 10;
- if ((ch >= 'A') && (ch <= 'F'))
- return ch - 'A' + 10;
- return -1;
-}
-
/*
* While we find nice hex chars, build a long_val.
* Return number of chars processed.
*/
int hex2u64(const char *ptr, u64 *long_val)
{
- const char *p = ptr;
- *long_val = 0;
-
- while (*p) {
- const int hex_val = hex(*p);
+ char *p;
- if (hex_val < 0)
- break;
-
- *long_val = (*long_val << 4) | hex_val;
- p++;
- }
+ *long_val = strtoull(ptr, &p, 16);
return p - ptr;
}
--
1.7.10.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2012-08-08 17:09 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-08 15:05 [PATCH] tools/perf: fix build when WERROR=1 Andy Shevchenko
2012-08-08 16:18 ` Arnaldo Carvalho de Melo
2012-08-08 16:32 ` Andy Shevchenko
2012-08-08 16:38 ` Arnaldo Carvalho de Melo
2012-08-08 16:47 ` Andy Shevchenko
2012-08-08 17:09 ` Arnaldo Carvalho de Melo
2012-08-08 16:37 ` [PATCH] tools/perf: remove yet another strtoull() Andy Shevchenko
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).