[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PULL 00/15] tb hash improvements
From: |
Emilio G. Cota |
Subject: |
Re: [Qemu-devel] [PULL 00/15] tb hash improvements |
Date: |
Fri, 10 Jun 2016 12:34:32 -0400 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On Fri, Jun 10, 2016 at 16:33:10 +0100, Peter Maydell wrote:
> Fails to build on ppc64be :-(
>
> In file included from /home/pm215/qemu/include/qemu/thread.h:4:0,
> from /home/pm215/qemu/include/block/aio.h:20,
> from /home/pm215/qemu/include/block/block.h:4,
> from /home/pm215/qemu/include/monitor/monitor.h:6,
> from /home/pm215/qemu/trace/control.c:23:
> /home/pm215/qemu/include/qemu/processor.h:24:35: error: expected
> identifier or ‘(’ before string constant
> "or 2, 2, 2;" ::: "memory")
On Fri, Jun 10, 2016 at 16:57:19 +0100, Peter Maydell wrote:
> Also fails trying to build a test on 32-bit:
>
> /home/petmay01/qemu/tests/qht-bench.c: In function 'pr_params':
> /home/petmay01/qemu/tests/qht-bench.c:270:5: error: format '%zu'
> expects argument of type 'size_t', but argument 2 has type 'long
> unsigned int' [-Werror=format=]
> printf(" lookup range: %zu\n", lookup_range);
Can you please test again after applying the appended delta?
Thanks,
Emilio
diff --git a/include/qemu/processor.h b/include/qemu/processor.h
index 42bcc99..c28d7e3 100644
--- a/include/qemu/processor.h
+++ b/include/qemu/processor.h
@@ -20,8 +20,12 @@
#elif defined(__powerpc64__)
/* set Hardware Multi-Threading (HMT) priority to low; then back to medium */
-# define cpu_relax() asm volatile("or 1, 1, 1;"
- "or 2, 2, 2;" ::: "memory")
+# define cpu_relax() \
+ do { \
+ asm volatile("or 1,1,1"); \
+ asm volatile("or 2,2,2"); \
+ barrier(); \
+ } while (0)
#else
# define cpu_relax() barrier()
diff --git a/tests/qht-bench.c b/tests/qht-bench.c
index c7f73b4..ad8efbc 100644
--- a/tests/qht-bench.c
+++ b/tests/qht-bench.c
@@ -267,8 +267,8 @@ static void pr_params(void)
printf(" update rate: %f%%\n", update_rate * 100.0);
printf(" offset: %ld\n", populate_offset);
printf(" initial key range: %zu\n", init_range);
- printf(" lookup range: %zu\n", lookup_range);
- printf(" update range: %zu\n", update_range);
+ printf(" lookup range: %lu\n", lookup_range);
+ printf(" update range: %lu\n", update_range);
}
static void do_threshold(double rate, uint64_t *threshold)
- [Qemu-devel] [PULL 09/15] qdist: add test program, (continued)
- [Qemu-devel] [PULL 09/15] qdist: add test program, Richard Henderson, 2016/06/10
- [Qemu-devel] [PULL 13/15] qht: add test-qht-par to invoke qht-bench from 'check' target, Richard Henderson, 2016/06/10
- [Qemu-devel] [PULL 12/15] qht: add qht-bench, a performance benchmark, Richard Henderson, 2016/06/10
- [Qemu-devel] [PULL 15/15] translate-all: add tb hash bucket info to 'info jit' dump, Richard Henderson, 2016/06/10
- [Qemu-devel] [PULL 14/15] tb hash: track translated blocks with qht, Richard Henderson, 2016/06/10
- [Qemu-devel] [PULL 08/15] qdist: add module to represent frequency distributions of data, Richard Henderson, 2016/06/10
- [Qemu-devel] [PULL 11/15] qht: add test program, Richard Henderson, 2016/06/10
- [Qemu-devel] [PULL 10/15] qht: QEMU's fast, resizable and scalable Hash Table, Richard Henderson, 2016/06/10
- Re: [Qemu-devel] [PULL 00/15] tb hash improvements, Peter Maydell, 2016/06/10