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....@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....@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@yoctoproject.org >https://lists.yoctoproject.org/listinfo/yocto _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto