[yocto] [PATCH] perf: mips64: Convert __u64 to unsigned long long

Billie Alsup billie.alsup at ericsson.com
Fri Oct 25 13:14:05 PDT 2013


I guess for that example, you have to add % yourself

"%s/event-%d-%" PRIu64 "-%d"

but for all the WRITE_ASS examples, simply replace "llu" with PRIu64


On 10/25/13 1:11 PM, "Billie Alsup" <billie.alsup at ericsson.com> wrote:

>Wouldn't it be better to change "%llu" to PRIu64 (from inttypes.h)?
>Notice that PRIu32 is already used in places.
>You can use string catenation where necessary, e.g.
>
>"%s/event-%d-" PRIu64 "-%d"
>
>
>On 10/25/13 12:17 PM, "Yang Shi" <yang.shi at windriver.com> wrote:
>
>>On MIPS64, "__u64" is "unsigned long" type, so the "%llu" specifier will
>>cause
>>build error on MIPS64.
>>
>>Convert __u64 to unsigned long long in those sprintf calls to avoid the
>>build
>>error.
>>
>>Signed-off-by: Yang Shi <yang.shi at windriver.com>
>>---
>> tools/perf/tests/attr.c               |   20 ++++++++++----------
>> tools/perf/tests/bp_signal.c          |    2 +-
>> tools/perf/tests/bp_signal_overflow.c |    2 +-
>> 3 files changed, 12 insertions(+), 12 deletions(-)
>>
>>diff --git a/tools/perf/tests/attr.c b/tools/perf/tests/attr.c
>>index 00218f5..f045c2c 100644
>>--- a/tools/perf/tests/attr.c
>>+++ b/tools/perf/tests/attr.c
>>@@ -71,7 +71,7 @@ static int store_event(struct perf_event_attr *attr,
>>pid_t pid, int cpu,
>> 	char path[PATH_MAX];
>> 
>> 	snprintf(path, PATH_MAX, "%s/event-%d-%llu-%d", dir,
>>-		 attr->type, attr->config, fd);
>>+		 attr->type, (unsigned long long)attr->config, fd);
>> 
>> 	file = fopen(path, "w+");
>> 	if (!file) {
>>@@ -80,7 +80,7 @@ static int store_event(struct perf_event_attr *attr,
>>pid_t pid, int cpu,
>> 	}
>> 
>> 	if (fprintf(file, "[event-%d-%llu-%d]\n",
>>-		    attr->type, attr->config, fd) < 0) {
>>+		    attr->type, (unsigned long long)attr->config, fd) < 0) {
>> 		perror("test attr - failed to write event file");
>> 		fclose(file);
>> 		return -1;
>>@@ -96,10 +96,10 @@ static int store_event(struct perf_event_attr *attr,
>>pid_t pid, int cpu,
>> 	/* struct perf_event_attr */
>> 	WRITE_ASS(type,   PRIu32);
>> 	WRITE_ASS(size,   PRIu32);
>>-	WRITE_ASS(config,  "llu");
>>-	WRITE_ASS(sample_period, "llu");
>>-	WRITE_ASS(sample_type,   "llu");
>>-	WRITE_ASS(read_format,   "llu");
>>+	__WRITE_ASS(config,        "llu", (unsigned long long)attr->config);
>>+	__WRITE_ASS(sample_period, "llu", (unsigned long
>>long)attr->sample_period);
>>+	__WRITE_ASS(sample_type,   "llu", (unsigned long
>>long)attr->sample_type);
>>+	__WRITE_ASS(read_format,   "llu", (unsigned long
>>long)attr->read_format);
>> 	WRITE_ASS(disabled,       "d");
>> 	WRITE_ASS(inherit,        "d");
>> 	WRITE_ASS(pinned,         "d");
>>@@ -124,10 +124,10 @@ static int store_event(struct perf_event_attr
>>*attr, pid_t pid, int cpu,
>> 	WRITE_ASS(exclude_callchain_user, "d");
>> 	WRITE_ASS(wakeup_events, PRIu32);
>> 	WRITE_ASS(bp_type, PRIu32);
>>-	WRITE_ASS(config1, "llu");
>>-	WRITE_ASS(config2, "llu");
>>-	WRITE_ASS(branch_sample_type, "llu");
>>-	WRITE_ASS(sample_regs_user,   "llu");
>>+	__WRITE_ASS(config1,            "llu", (unsigned long
>>long)attr->config1);
>>+	__WRITE_ASS(config2,            "llu", (unsigned long
>>long)attr->config2);
>>+	__WRITE_ASS(branch_sample_type, "llu", (unsigned long
>>long)attr->branch_sample_type);
>>+	__WRITE_ASS(sample_regs_user,   "llu", (unsigned long
>>long)attr->sample_regs_user);
>> 	WRITE_ASS(sample_stack_user,  PRIu32);
>> 
>> 	fclose(file);
>>diff --git a/tools/perf/tests/bp_signal.c b/tools/perf/tests/bp_signal.c
>>index 68daa28..bf3a094 100644
>>--- a/tools/perf/tests/bp_signal.c
>>+++ b/tools/perf/tests/bp_signal.c
>>@@ -74,7 +74,7 @@ static int bp_event(void *fn, int setup_signal)
>> 
>> 	fd = sys_perf_event_open(&pe, 0, -1, -1, 0);
>> 	if (fd < 0) {
>>-		pr_debug("failed opening event %llx\n", pe.config);
>>+		pr_debug("failed opening event %llx\n", (unsigned long
>>long)pe.config);
>> 		return TEST_FAIL;
>> 	}
>> 
>>diff --git a/tools/perf/tests/bp_signal_overflow.c
>>b/tools/perf/tests/bp_signal_overflow.c
>>index fe7ed28..3662b15 100644
>>--- a/tools/perf/tests/bp_signal_overflow.c
>>+++ b/tools/perf/tests/bp_signal_overflow.c
>>@@ -87,7 +87,7 @@ int test__bp_signal_overflow(void)
>> 
>> 	fd = sys_perf_event_open(&pe, 0, -1, -1, 0);
>> 	if (fd < 0) {
>>-		pr_debug("failed opening event %llx\n", pe.config);
>>+		pr_debug("failed opening event %llx\n", (unsigned long
>>long)pe.config);
>> 		return TEST_FAIL;
>> 	}
>> 
>>-- 
>>1.7.5.4
>>
>>_______________________________________________
>>yocto mailing list
>>yocto at yoctoproject.org
>>https://lists.yoctoproject.org/listinfo/yocto
>




More information about the yocto mailing list