86ffd40d11
- Switch method of splitting off hw-s390x-virtio-gpu-ccw.so as a module to what was accepted upstream (bsc#1181103) * Patches dropped: hw-s390x-modularize-virtio-gpu-ccw.patch * Patches added: s390x-add-have_virtio_ccw.patch s390x-modularize-virtio-gpu-ccw.patch s390x-move-S390_ADAPTER_SUPPRESSIBLE.patch - Fix OOB access in sdhci interface (CVE-2020-17380, bsc#1175144, CVE-2020-25085, bsc#1176681, CVE-2021-3409, bsc#1182282) hw-sd-sd-Actually-perform-the-erase-oper.patch hw-sd-sd-Fix-build-error-when-DEBUG_SD-i.patch hw-sd-sdhci-Correctly-set-the-controller.patch hw-sd-sdhci-Don-t-transfer-any-data-when.patch hw-sd-sdhci-Don-t-write-to-SDHC_SYSAD-re.patch hw-sd-sdhci-Limit-block-size-only-when-S.patch hw-sd-sdhci-Reset-the-data-pointer-of-s-.patch hw-sd-sd-Move-the-sd_block_-read-write-a.patch hw-sd-sd-Skip-write-protect-groups-check.patch - Fix potential privilege escalation in virtiofsd tool (CVE-2021-20263, bsc#1183373) tools-virtiofsd-Replace-the-word-whiteli.patch viriofsd-Add-support-for-FUSE_HANDLE_KIL.patch virtiofsd-extract-lo_do_open-from-lo_ope.patch virtiofsd-optionally-return-inode-pointe.patch virtiofsd-prevent-opening-of-special-fil.patch virtiofs-drop-remapped-security.capabili.patch virtiofsd-Save-error-code-early-at-the-f.patch - Fix OOB access (stack overflow) in rtl8139 NIC emulation (CVE-2021-3416, bsc#1182968) net-introduce-qemu_receive_packet.patch rtl8139-switch-to-use-qemu_receive_packe.patch - Fix OOB access (stack overflow) in other NIC emulations (CVE-2021-3416) cadence_gem-switch-to-use-qemu_receive_p.patch dp8393x-switch-to-use-qemu_receive_packe.patch e1000-switch-to-use-qemu_receive_packet-.patch lan9118-switch-to-use-qemu_receive_packe.patch msf2-mac-switch-to-use-qemu_receive_pack.patch pcnet-switch-to-use-qemu_receive_packet-.patch sungem-switch-to-use-qemu_receive_packet.patch tx_pkt-switch-to-use-qemu_receive_packet.patch - Fix heap overflow in MSIx emulation (CVE-2020-27821, bsc#1179686) memory-clamp-cached-translation-in-case-.patch - Include upstream patches designated as stable material and reviewed for applicability to include here hw-arm-virt-Disable-pl011-clock-migratio.patch xen-block-Fix-removal-of-backend-instanc.patch - Fix package scripts to not use hard coded paths for temporary working directories and log files (bsc#1182425) OBS-URL: https://build.opensuse.org/request/show/882222 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=632
97 lines
3.5 KiB
Diff
97 lines
3.5 KiB
Diff
From: Gerd Hoffmann <kraxel@redhat.com>
|
|
Date: Wed, 17 Mar 2021 10:56:20 +0100
|
|
Subject: s390x: move S390_ADAPTER_SUPPRESSIBLE
|
|
|
|
Git-commit: d4c603d7be2e4173252c5b55e62d30ddd26edaca
|
|
References: bsc#1181103
|
|
|
|
The definition S390_ADAPTER_SUPPRESSIBLE was moved to "cpu.h", per
|
|
suggestion of Thomas Huth. From interface design perspective, IMHO, not
|
|
a good thing as it belongs to the public interface of
|
|
css_register_io_adapters(). We did this because CONFIG_KVM requeires
|
|
NEED_CPU_H and Thomas, and other commenters did not like the
|
|
consequences of that.
|
|
|
|
Moving the interrupt related declarations to s390_flic.h was suggested
|
|
by Cornelia Huck.
|
|
|
|
Signed-off-by: Halil Pasic <pasic@linux.ibm.com>
|
|
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
|
Reviewed-by: Halil Pasic <pasic@linux.ibm.com>
|
|
Tested-by: Halil Pasic <pasic@linux.ibm.com>
|
|
Message-Id: <20210317095622.2839895-2-kraxel@redhat.com>
|
|
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
|
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
|
---
|
|
include/hw/s390x/css.h | 7 -------
|
|
include/hw/s390x/s390_flic.h | 3 +++
|
|
target/s390x/cpu.h | 9 ++++++---
|
|
3 files changed, 9 insertions(+), 10 deletions(-)
|
|
|
|
diff --git a/include/hw/s390x/css.h b/include/hw/s390x/css.h
|
|
index 08c869ab0afc18f34fb28056ce29..7858666307a1baaf2586dce56c07 100644
|
|
--- a/include/hw/s390x/css.h
|
|
+++ b/include/hw/s390x/css.h
|
|
@@ -12,7 +12,6 @@
|
|
#ifndef CSS_H
|
|
#define CSS_H
|
|
|
|
-#include "cpu.h"
|
|
#include "hw/s390x/adapter.h"
|
|
#include "hw/s390x/s390_flic.h"
|
|
#include "hw/s390x/ioinst.h"
|
|
@@ -233,12 +232,6 @@ uint32_t css_get_adapter_id(CssIoAdapterType type, uint8_t isc);
|
|
void css_register_io_adapters(CssIoAdapterType type, bool swap, bool maskable,
|
|
uint8_t flags, Error **errp);
|
|
|
|
-#ifndef CONFIG_KVM
|
|
-#define S390_ADAPTER_SUPPRESSIBLE 0x01
|
|
-#else
|
|
-#define S390_ADAPTER_SUPPRESSIBLE KVM_S390_ADAPTER_SUPPRESSIBLE
|
|
-#endif
|
|
-
|
|
#ifndef CONFIG_USER_ONLY
|
|
SubchDev *css_find_subch(uint8_t m, uint8_t cssid, uint8_t ssid,
|
|
uint16_t schid);
|
|
diff --git a/include/hw/s390x/s390_flic.h b/include/hw/s390x/s390_flic.h
|
|
index e91b15d2d6af5feb2e7e7284bfbd..3907a13d07664bad96d466b3d20a 100644
|
|
--- a/include/hw/s390x/s390_flic.h
|
|
+++ b/include/hw/s390x/s390_flic.h
|
|
@@ -134,6 +134,9 @@ void s390_flic_init(void);
|
|
S390FLICState *s390_get_flic(void);
|
|
QEMUS390FLICState *s390_get_qemu_flic(S390FLICState *fs);
|
|
S390FLICStateClass *s390_get_flic_class(S390FLICState *fs);
|
|
+void s390_crw_mchk(void);
|
|
+void s390_io_interrupt(uint16_t subchannel_id, uint16_t subchannel_nr,
|
|
+ uint32_t io_int_parm, uint32_t io_int_word);
|
|
bool ais_needed(void *opaque);
|
|
|
|
#endif /* HW_S390_FLIC_H */
|
|
diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h
|
|
index 60d434d5edd55c59cfe7e345967c..b434b905c0ae337c62ddcc9d7e34 100644
|
|
--- a/target/s390x/cpu.h
|
|
+++ b/target/s390x/cpu.h
|
|
@@ -40,6 +40,12 @@
|
|
|
|
#define S390_MAX_CPUS 248
|
|
|
|
+#ifndef CONFIG_KVM
|
|
+#define S390_ADAPTER_SUPPRESSIBLE 0x01
|
|
+#else
|
|
+#define S390_ADAPTER_SUPPRESSIBLE KVM_S390_ADAPTER_SUPPRESSIBLE
|
|
+#endif
|
|
+
|
|
typedef struct PSW {
|
|
uint64_t mask;
|
|
uint64_t addr;
|
|
@@ -806,9 +812,6 @@ int cpu_s390x_signal_handler(int host_signum, void *pinfo, void *puc);
|
|
|
|
|
|
/* interrupt.c */
|
|
-void s390_crw_mchk(void);
|
|
-void s390_io_interrupt(uint16_t subchannel_id, uint16_t subchannel_nr,
|
|
- uint32_t io_int_parm, uint32_t io_int_word);
|
|
#define RA_IGNORED 0
|
|
void s390_program_interrupt(CPUS390XState *env, uint32_t code, uintptr_t ra);
|
|
/* service interrupts are floating therefore we must not pass an cpustate */
|