[Qemu-devel] [PATCH] target/s390x: define TCG_GUEST_DEFAULT_MO for MTTCG

Alex Bennée posted 1 patch 6 years, 9 months ago
Test docker-mingw@fedora passed
Test docker-clang@ubuntu passed
Test asan passed
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190118171848.27332-1-alex.bennee@linaro.org
Maintainers: Cornelia Huck <cohuck@redhat.com>
target/s390x/cpu.h | 4 ++++
1 file changed, 4 insertions(+)
[Qemu-devel] [PATCH] target/s390x: define TCG_GUEST_DEFAULT_MO for MTTCG
Posted by Alex Bennée 6 years, 9 months ago
MTTCG should be enabled by default whenever the memory model allows
it. s390x was missing its definition of TCG_GUEST_DEFAULT_MO meaning
the user had to manually specify  --accel tcg,thread=multi.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Cc: David Hildenbrand <david@redhat.com>
---
 target/s390x/cpu.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h
index 8c2320e882..47d2c2e9cf 100644
--- a/target/s390x/cpu.h
+++ b/target/s390x/cpu.h
@@ -35,6 +35,10 @@
 #define CPUArchState struct CPUS390XState
 
 #include "exec/cpu-defs.h"
+
+/* The z/Architecture has a strong memory model with some store-after-load re-ordering */
+#define TCG_GUEST_DEFAULT_MO      (TCG_MO_ALL & ~TCG_MO_ST_LD)
+
 #define TARGET_PAGE_BITS 12
 
 #define TARGET_PHYS_ADDR_SPACE_BITS 64
-- 
2.17.1


Re: [Qemu-devel] [PATCH] target/s390x: define TCG_GUEST_DEFAULT_MO for MTTCG
Posted by David Hildenbrand 6 years, 9 months ago
On 18.01.19 18:18, Alex Bennée wrote:
> MTTCG should be enabled by default whenever the memory model allows
> it. s390x was missing its definition of TCG_GUEST_DEFAULT_MO meaning
> the user had to manually specify  --accel tcg,thread=multi.
> 
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Cc: David Hildenbrand <david@redhat.com>
> ---
>  target/s390x/cpu.h | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h
> index 8c2320e882..47d2c2e9cf 100644
> --- a/target/s390x/cpu.h
> +++ b/target/s390x/cpu.h
> @@ -35,6 +35,10 @@
>  #define CPUArchState struct CPUS390XState
>  
>  #include "exec/cpu-defs.h"
> +
> +/* The z/Architecture has a strong memory model with some store-after-load re-ordering */
> +#define TCG_GUEST_DEFAULT_MO      (TCG_MO_ALL & ~TCG_MO_ST_LD)

Didn't know this was the way to make it be enabled as default.

As discussed on IRC

Reviewed-by: David Hildenbrand <david@redhat.com>

Thanks!

> +
>  #define TARGET_PAGE_BITS 12
>  
>  #define TARGET_PHYS_ADDR_SPACE_BITS 64
> 


-- 

Thanks,

David / dhildenb

Re: [Qemu-devel] [PATCH] target/s390x: define TCG_GUEST_DEFAULT_MO for MTTCG
Posted by Richard Henderson 6 years, 9 months ago
On 1/19/19 4:18 AM, Alex Bennée wrote:
> MTTCG should be enabled by default whenever the memory model allows
> it. s390x was missing its definition of TCG_GUEST_DEFAULT_MO meaning
> the user had to manually specify  --accel tcg,thread=multi.
> 
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Cc: David Hildenbrand <david@redhat.com>
> ---
>  target/s390x/cpu.h | 4 ++++
>  1 file changed, 4 insertions(+)

I thought we had already done this...

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


r~

Re: [Qemu-devel] [PATCH] target/s390x: define TCG_GUEST_DEFAULT_MO for MTTCG
Posted by Cornelia Huck 6 years, 9 months ago
On Fri, 18 Jan 2019 17:18:48 +0000
Alex Bennée <alex.bennee@linaro.org> wrote:

> MTTCG should be enabled by default whenever the memory model allows
> it. s390x was missing its definition of TCG_GUEST_DEFAULT_MO meaning
> the user had to manually specify  --accel tcg,thread=multi.
> 
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Cc: David Hildenbrand <david@redhat.com>
> ---
>  target/s390x/cpu.h | 4 ++++
>  1 file changed, 4 insertions(+)

Thanks, applied.