s390x/tcg: Fault-safe memmove
commitb6c636f2cd6c50cdc558e3c02fbc7f2d102955b2
authorDavid Hildenbrand <david@redhat.com>
Tue, 3 Sep 2019 08:39:49 +0000 (3 10:39 +0200)
committerDavid Hildenbrand <david@redhat.com>
Mon, 23 Sep 2019 07:28:29 +0000 (23 09:28 +0200)
treed065f3c2d5a7527319cb6660b641a540d7807ffa
parent70ebd9ce1cb08ffb0ec0d7185f16520998545a7a
s390x/tcg: Fault-safe memmove

Replace fast_memmove() variants by access_memmove() variants, that
first try to probe access to all affected pages (maximum is two pages).

Introduce access_get_byte()/access_set_byte(). We might be able to speed
up memmove in special cases even further (do single-byte access, use
memmove() for remaining bytes in page), however, we'll skip that for now.

In MVCOS, simply always call access_memmove_as() and drop the TODO
about LAP. LAP is already handled in the MMU.

Get rid of adj_len_to_page(), which is now unused.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: David Hildenbrand <david@redhat.com>
target/s390x/mem_helper.c