s390x/tcg: refactor stfl(e) to use s390_get_feat_block()
commitf74990a5d019751c545e9800a3376b6336e77d38
authorDavid Hildenbrand <david@redhat.com>
Thu, 28 Sep 2017 20:37:07 +0000 (28 22:37 +0200)
committerCornelia Huck <cohuck@redhat.com>
Fri, 20 Oct 2017 11:32:10 +0000 (20 13:32 +0200)
treef24a14fa7fea904873f9e2cba955130fbfaa5220
parent0fc60ca58aa250b4f11f8c69d0be097e0140e7df
s390x/tcg: refactor stfl(e) to use s390_get_feat_block()

Refactor it to use s390_get_feat_block(). Directly write into the mapped
lowcore with stfl and make sure it is really only compiled if needed.

While at it, add an alignment check for STFLE and avoid
potential_page_fault() by properly restoring the CPU state.

Due to s390_get_feat_block(), we will now also indicate the
"Configuration-z-architectural-mode", which is with new SIGP code the
right thing to do.

Signed-off-by: David Hildenbrand <david@redhat.com>
Message-Id: <20170928203708.9376-30-david@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
target/s390x/misc_helper.c
target/s390x/translate.c