[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] 996e7e: s390x/kvm: Get rid of legacy_s390_all
From: |
Peter Maydell |
Subject: |
[Qemu-commits] [qemu/qemu] 996e7e: s390x/kvm: Get rid of legacy_s390_alloc() |
Date: |
Wed, 17 Mar 2021 09:24:01 -0700 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: 996e7e4b72f48c2f878e269bb9252d97129b6f73
https://github.com/qemu/qemu/commit/996e7e4b72f48c2f878e269bb9252d97129b6f73
Author: David Hildenbrand <david@redhat.com>
Date: 2021-03-15 (Mon, 15 Mar 2021)
Changed paths:
M target/s390x/kvm.c
Log Message:
-----------
s390x/kvm: Get rid of legacy_s390_alloc()
legacy_s390_alloc() was required for dealing with the absence of the ESOP
feature -- on old HW (< gen 10) and old z/VM versions (< 6.3).
As z/VM v6.2 (and even v6.3) is no longer supported since 2017 [1]
and we don't expect to have real users on such old hardware, let's drop
legacy_s390_alloc().
Still check+report an error just in case someone still runs on
such old z/VM environments, or someone runs under weird nested KVM
setups (where we can manually disable ESOP via the CPU model).
No need to check for KVM_CAP_GMAP - that should always be around on
kernels that also have KVM_CAP_DEVICE_CTRL (>= v3.15).
[1] https://www.ibm.com/support/lifecycle/search?q=z%2FVM
Suggested-by: Cornelia Huck <cohuck@redhat.com>
Suggested-by: Thomas Huth <thuth@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Halil Pasic <pasic@linux.ibm.com>
Cc: Cornelia Huck <cohuck@redhat.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: Thomas Huth <thuth@redhat.com>
Cc: Igor Mammedov <imammedo@redhat.com>
Cc: Peter Xu <peterx@redhat.com>
Signed-off-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <20210303130916.22553-2-david@redhat.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Commit: 25459eb762ebf3e1120f5d310eddf18066e902e5
https://github.com/qemu/qemu/commit/25459eb762ebf3e1120f5d310eddf18066e902e5
Author: David Hildenbrand <david@redhat.com>
Date: 2021-03-15 (Mon, 15 Mar 2021)
Changed paths:
M include/sysemu/kvm.h
M softmmu/physmem.c
Log Message:
-----------
exec: Get rid of phys_mem_set_alloc()
As the last user is gone, we can get rid of phys_mem_set_alloc() and
simplify.
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Halil Pasic <pasic@linux.ibm.com>
Cc: Cornelia Huck <cohuck@redhat.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: Thomas Huth <thuth@redhat.com>
Cc: Igor Mammedov <imammedo@redhat.com>
Cc: Peter Xu <peterx@redhat.com>
Signed-off-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <20210303130916.22553-3-david@redhat.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Commit: d66a52b50f089d69a70beb2e507d3035ffeaf016
https://github.com/qemu/qemu/commit/d66a52b50f089d69a70beb2e507d3035ffeaf016
Author: Cornelia Huck <cohuck@redhat.com>
Date: 2021-03-15 (Mon, 15 Mar 2021)
Changed paths:
M target/s390x/cpu_models.c
Log Message:
-----------
s390x/cpu_model: use official name for 8562
The single-frame z15 is called "z15 T02" (and the multi-frame z15
"z15 T01").
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
Message-Id: <20210311132746.1777754-1-cohuck@redhat.com>
Commit: e56552cf0771a7f60ae4c1bc186d43a585022849
https://github.com/qemu/qemu/commit/e56552cf0771a7f60ae4c1bc186d43a585022849
Author: Richard Henderson <richard.henderson@linaro.org>
Date: 2021-03-15 (Mon, 15 Mar 2021)
Changed paths:
M target/s390x/cpu.h
M target/s390x/excp_helper.c
M target/s390x/mem_helper.c
Log Message:
-----------
target/s390x: Implement the MVPG condition-code-option bit
If the CCO bit is set, MVPG should not generate an exception but
report page translation faults via a CC code.
Create a new helper, access_prepare_nf, which can use probe_access_flags
in non-faulting mode, and then handle watchpoints.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
[thuth: Added logic to still inject protection exceptions]
Signed-off-by: Thomas Huth <thuth@redhat.com>
[david: Look at env->tlb_fill_exc to determine if there was an exception]
Signed-off-by: David Hildenbrand <david@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20210315085449.34676-2-david@redhat.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Commit: 1a3c443c43e81e32a05d6995039e0f356b8f60cb
https://github.com/qemu/qemu/commit/1a3c443c43e81e32a05d6995039e0f356b8f60cb
Author: David Hildenbrand <david@redhat.com>
Date: 2021-03-15 (Mon, 15 Mar 2021)
Changed paths:
M target/s390x/helper.h
M target/s390x/insn-data.def
M target/s390x/mem_helper.c
M target/s390x/translate.c
Log Message:
-----------
target/s390x: Store r1/r2 for page-translation exceptions during MVPG
The PoP states:
When EDAT-1 does not apply, and a program interruption due to a
page-translation exception is recognized by the MOVE PAGE
instruction, the contents of the R1 field of the instruction are
stored in bit positions 0-3 of location 162, and the contents of
the R2 field are stored in bit positions 4-7.
If [...] an ASCE-type, region-first-translation,
region-second-translation, region-third-translation, or
segment-translation exception was recognized, the contents of
location 162 are unpredictable.
So we have to write r1/r2 into the lowcore on page-translation
exceptions. Simply handle all exceptions inside our mvpg helper now.
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: David Hildenbrand <david@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20210315085449.34676-3-david@redhat.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Commit: 5793f5aafb05dae30e9dcb57d0d1c8f1a9633f6d
https://github.com/qemu/qemu/commit/5793f5aafb05dae30e9dcb57d0d1c8f1a9633f6d
Author: Miroslav Rezanina <mrezanin@redhat.com>
Date: 2021-03-15 (Mon, 15 Mar 2021)
Changed paths:
M hw/s390x/s390-pci-vfio.c
Log Message:
-----------
s390x/pci: Add missing initialization for g_autofree variables
When declaring g_autofree variable without initialization, compiler
will raise "may be used uninitialized in this function" warning due
to automatic free handling.
This is mentioned in docs/devel/style.rst (quote from section
"Automatic memory deallocation"):
* Variables declared with g_auto* MUST always be initialized,
otherwise the cleanup function will use uninitialized stack memory
Add initialization for these declarations to prevent the warning and
comply with coding style.
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Fixes: cd7498d07fbb ("s390x/pci: Add routine to get the vfio dma available
count")
Fixes: 1e7552ff5c34 ("s390x/pci: get zPCI function info from host")
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Matthew Rosato <mjrosato@linux.ibm.com>
Message-Id: <20210315101352.152888-1-mrezanin@redhat.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Commit: 569a9481034b43f650dbb82dd7820beb0051508e
https://github.com/qemu/qemu/commit/569a9481034b43f650dbb82dd7820beb0051508e
Author: Peter Maydell <peter.maydell@linaro.org>
Date: 2021-03-17 (Wed, 17 Mar 2021)
Changed paths:
M hw/s390x/s390-pci-vfio.c
M include/sysemu/kvm.h
M softmmu/physmem.c
M target/s390x/cpu.h
M target/s390x/cpu_models.c
M target/s390x/excp_helper.c
M target/s390x/helper.h
M target/s390x/insn-data.def
M target/s390x/kvm.c
M target/s390x/mem_helper.c
M target/s390x/translate.c
Log Message:
-----------
Merge remote-tracking branch 'remotes/cohuck-gitlab/tags/s390x-20210316' into
staging
s390x updates:
- get rid of legacy_s390_alloc() and phys_mem_set_alloc()
- tcg: implement the MVPG condition-code-option bit
- fix g_autofree variable handing in the pci vfio code
- use official z15 names in the cpu model definitions
# gpg: Signature made Tue 16 Mar 2021 10:04:21 GMT
# gpg: using RSA key C3D0D66DC3624FF6A8C018CEDECF6B93C6F02FAF
# gpg: issuer "cohuck@redhat.com"
# gpg: Good signature from "Cornelia Huck <conny@cornelia-huck.de>" [unknown]
# gpg: aka "Cornelia Huck <huckc@linux.vnet.ibm.com>" [full]
# gpg: aka "Cornelia Huck <cornelia.huck@de.ibm.com>" [full]
# gpg: aka "Cornelia Huck <cohuck@kernel.org>" [unknown]
# gpg: aka "Cornelia Huck <cohuck@redhat.com>" [unknown]
# Primary key fingerprint: C3D0 D66D C362 4FF6 A8C0 18CE DECF 6B93 C6F0 2FAF
* remotes/cohuck-gitlab/tags/s390x-20210316:
s390x/pci: Add missing initialization for g_autofree variables
target/s390x: Store r1/r2 for page-translation exceptions during MVPG
target/s390x: Implement the MVPG condition-code-option bit
s390x/cpu_model: use official name for 8562
exec: Get rid of phys_mem_set_alloc()
s390x/kvm: Get rid of legacy_s390_alloc()
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Compare: https://github.com/qemu/qemu/compare/25a775104328...569a9481034b