lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 5 Oct 2009 22:47:06 +0200
From:	Frederic Weisbecker <fweisbec@...il.com>
To:	Randy Dunlap <randy.dunlap@...cle.com>
Cc:	lkml <linux-kernel@...r.kernel.org>,
	Peter Zijlstra <a.p.zijlstra@...llo.nl>,
	Paul Mackerras <paulus@...ba.org>, Ingo Molnar <mingo@...e.hu>
Subject: Re: [patch] perf build questions

On Mon, Oct 05, 2009 at 01:17:29PM -0700, Randy Dunlap wrote:
> Hi,
> 
> How do I build 'perf' for an i386 target when running on x86_64?
> and how do I do 'perf' cross-builds in general?
> 


I let someone else who knows that better than me answer to that.
But you may need to override the CC var in the makefile for now.
This is something we should make tunable.

 
> Also, I see build errors/warnings (-Werror).  Others aren't seeing these?
> Just due to my gcc version?
> 
> Patch below.
> 
> Thanks.


Oh thanks. I've never seen them.

The builtin-sched.c warning is right.
But the util/trace-event-parse.c warnings are wrong since the parameters
passed to these functions are always cast to char *

But that is wrong too, these functions should take const char * and
not char * as they never need to touch these strings.

So your patch is correct, I'll just convert the callsites. It's
my bad, I've put these casts to shutdown such warnings while integrating
the trace-cmd lib. I was distracted by harder integration problems.

Thanks.

Acked-by: Frederic Weisbecker <fweisbec@...il.com>


> From: Randy Dunlap <randy.dunlap@...cle.com>
> 
> Fix perf build warnings/errors in function argument types:
> 
> builtin-sched.c:1894: warning: passing argument 1 of 'sort_dimension__add' discards qualifiers from pointer target type
> util/trace-event-parse.c:685: warning: passing argument 2 of 'read_expected' discards qualifiers from pointer target type
> util/trace-event-parse.c:741: warning: passing argument 4 of 'test_type_token' discards qualifiers from pointer target type
> util/trace-event-parse.c:706: warning: passing argument 2 of 'read_expected_item' discards qualifiers from pointer target type
> 
> Signed-off-by: Randy Dunlap <randy.dunlap@...cle.com>
> ---
>  tools/perf/builtin-sched.c          |    2 +-
>  tools/perf/util/trace-event-parse.c |    8 ++++----
>  2 files changed, 5 insertions(+), 5 deletions(-)
> 
> --- a/tools/perf/builtin-sched.c
> +++ b/tools/perf/builtin-sched.c
> @@ -1287,7 +1287,7 @@ static struct sort_dimension *available_
>  
>  static LIST_HEAD(sort_list);
>  
> -static int sort_dimension__add(char *tok, struct list_head *list)
> +static int sort_dimension__add(const char *tok, struct list_head *list)
>  {
>  	int i;
>  
> --- a/tools/perf/util/trace-event-parse.c
> +++ b/tools/perf/util/trace-event-parse.c
> @@ -618,7 +618,7 @@ static int test_type(enum event_type typ
>  }
>  
>  static int test_type_token(enum event_type type, char *token,
> -		    enum event_type expect, char *expect_tok)
> +		    enum event_type expect, const char *expect_tok)
>  {
>  	if (type != expect) {
>  		die("Error: expected type %d but read %d",
> @@ -650,7 +650,7 @@ static int read_expect_type(enum event_t
>  	return __read_expect_type(expect, tok, 1);
>  }
>  
> -static int __read_expected(enum event_type expect, char *str, int newline_ok)
> +static int __read_expected(enum event_type expect, const char *str, int newline_ok)
>  {
>  	enum event_type type;
>  	char *token;
> @@ -668,12 +668,12 @@ static int __read_expected(enum event_ty
>  	return 0;
>  }
>  
> -static int read_expected(enum event_type expect, char *str)
> +static int read_expected(enum event_type expect, const char *str)
>  {
>  	return __read_expected(expect, str, 1);
>  }
>  
> -static int read_expected_item(enum event_type expect, char *str)
> +static int read_expected_item(enum event_type expect, const char *str)
>  {
>  	return __read_expected(expect, str, 0);
>  }
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ