Re: [Qemu-devel] [PATCH v2 15/28] s390x/tcg: Fault-safe memset

2019-09-11 Thread David Hildenbrand
On 11.09.19 17:29, Richard Henderson wrote: > On 9/6/19 3:57 AM, David Hildenbrand wrote: >> +if (likely(desta.haddr1)) { >> +memset(desta.haddr1, byte, desta.size1); >> +} else { >> +for (i = 0; i < desta.size1; i++) { >> +helper_ret_stb_mmu(env, desta.vaddr1 +

Re: [Qemu-devel] [PATCH v2 15/28] s390x/tcg: Fault-safe memset

2019-09-11 Thread Richard Henderson
On 9/6/19 3:57 AM, David Hildenbrand wrote: > +if (likely(desta.haddr1)) { > +memset(desta.haddr1, byte, desta.size1); > +} else { > +for (i = 0; i < desta.size1; i++) { > +helper_ret_stb_mmu(env, desta.vaddr1 + i, byte, oi, ra); > +} The only thing perh

[Qemu-devel] [PATCH v2 15/28] s390x/tcg: Fault-safe memset

2019-09-06 Thread David Hildenbrand
Replace fast_memset() by access_memset(), that first tries to probe access to all affected pages (maximum is two). We'll use the same mechanism for other types of accesses soon. Only in very rare cases (especially TLB_NOTDIRTY), we'll have to fallback to ld/st helpers. Signed-off-by: David Hilden