qemu/hw
Fei Li 6c1dd652a6 s390x/flic: introduce modify_ais_mode callback
In order to emulate the adapter interruption suppression (AIS)
facility properly, the guest needs to be able to modify the AIS mask.
Interrupt suppression will be handled via the flic (for kvm, via a
recently introduced kernel backend; for !kvm, in the flic code), so
let's introduce a method to change the mode via the flic interface.

We introduce the 'simm' and 'nimm' fields to QEMUS390FLICState
to store interruption modes for each ISC. Each bit in 'simm' and
'nimm' targets one ISC, and collaboratively indicate three modes:
ALL-Interruptions, SINGLE-Interruption and NO-Interruptions. This
interface can initiate most transitions between the states; transition
from SINGLE-Interruption to NO-Interruptions via adapter interrupt
injection will be introduced in a following patch. The meaningful
combinations are as follows:

    interruption mode | simm bit | nimm bit
    ------------------|----------|----------
             ALL      |    0     |     0
           SINGLE     |    1     |     0
             NO       |    1     |     1

Co-authored-by: Yi Min Zhao <zyimin@linux.vnet.ibm.com>
Signed-off-by: Yi Min Zhao <zyimin@linux.vnet.ibm.com>
Signed-off-by: Fei Li <sherrylf@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
2017-07-14 12:29:47 +02:00
..
9pfs 9pfs: handle transport errors in pdu_complete() 2017-06-29 15:11:51 +02:00
acpi include/exec/poison: Mark CONFIG_KVM as poisoned, too 2017-07-04 14:30:03 +02:00
adc
alpha memory: tune last param of iommu_ops.translate() 2017-05-25 21:25:27 +03:00
arm aspeed: Register all watchdogs 2017-07-11 11:21:26 +01:00
audio audio: Rename hw/audio/audio.h to hw/audio/soundhw.h 2017-05-19 10:48:54 +02:00
block -----BEGIN PGP SIGNATURE----- 2017-06-30 13:26:41 +01:00
bt be-hci: use backend functions 2017-06-02 11:33:53 +04:00
char -----BEGIN PGP SIGNATURE----- 2017-06-05 10:09:14 +01:00
core hw/core: fix missing return value in load_image_targphys_as() 2017-07-11 11:18:37 +03:00
cpu hw/cpu: core.c can be compiled as common object 2017-06-09 12:02:55 +10:00
cris
display xenfb: remove xen_init_display "temporary" hack 2017-07-07 11:10:03 -07:00
dma hw/dma: QOM'ify sun4m_iommu.c 2017-06-02 05:54:43 +01:00
gpio qdev: Replace cannot_instantiate_with_device_add_yet with !user_creatable 2017-05-17 10:37:00 -03:00
i2c migration/next for 20170601 2017-06-02 14:07:53 +01:00
i386 xen-platform: Cleanup network infrastructure when emulated NICs are unplugged 2017-07-07 11:11:12 -07:00
ide pci: Replace pci_add_capability2() with pci_add_capability() 2017-07-03 22:29:49 +03:00
input vmstate: error hint for failed equal checks 2017-06-28 11:18:44 +02:00
intc s390x/flic: introduce modify_ais_mode callback 2017-07-14 12:29:47 +02:00
ipack
ipmi char: move CharBackend handling in char-fe unit 2017-06-02 11:33:53 +04:00
isa chardev: move headers to include/chardev 2017-06-02 11:33:52 +04:00
lm32 char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
m68k hw/m68k: QOMify the ColdFire interrupt controller 2017-02-18 22:23:31 +01:00
mem pc-dimm: make "size" property uint64 2017-06-20 14:31:32 +02:00
microblaze Remove reduntant qemu: from error functions 2017-05-07 09:57:51 +03:00
mips mips/malta: load the initrd at the end of the low memory 2017-07-11 15:06:34 +01:00
misc hw/misc: Add Exynos4210 Pseudo Random Number Generator 2017-07-11 11:21:26 +01:00
moxie
net virtio-net: fix tx queue size for !vhost-user 2017-07-03 22:29:49 +03:00
nios2 Remove reduntant qemu: from error functions 2017-05-07 09:57:51 +03:00
nvram fw_cfg: move setting of FW_CFG_VERSION_DMA bit to fw_cfg_init1() 2017-07-03 22:29:49 +03:00
openrisc target/openrisc: Support non-busy idle state using PMR SPR 2017-05-04 09:39:14 +09:00
pci hw/pci: define msi_nonbroken in pci-stub 2017-07-11 11:18:37 +03:00
pci-bridge pci: Convert shpc_init() to Error 2017-07-03 22:29:49 +03:00
pci-host QAPI patches for 2017-06-09 2017-06-22 11:34:39 +01:00
pcmcia
ppc ppc patch queue 2017-07-11 2017-07-11 16:34:09 +01:00
s390x s390x: add flags field for registering I/O adapter 2017-07-14 12:29:47 +02:00
scsi virtio-scsi: finalize IOMMU support 2017-07-04 14:39:28 +02:00
sd generic-sdhci: Remove user_creatable flag 2017-05-17 10:37:01 -03:00
sh4 shutdown: Add source information to SHUTDOWN and RESET 2017-05-23 13:28:17 +02:00
smbios stubs: move smbios stubs to hw/smbios 2017-01-16 17:52:35 +01:00
sparc -----BEGIN PGP SIGNATURE----- 2017-06-05 10:09:14 +01:00
sparc64 hw/sparc: use ARRAY_SIZE() macro 2017-06-04 18:42:55 +03:00
ssi xilinx_spips: allow mmio execution 2017-06-27 15:09:15 +02:00
timer timer/aspeed: fix timer enablement when a reload is not set 2017-06-13 14:57:00 +01:00
tpm
tricore Remove reduntant qemu: from error functions 2017-05-07 09:57:51 +03:00
unicore32
usb pci: Fix the wrong assertion. 2017-07-03 22:29:49 +03:00
vfio vfio/pci: Fixup v0 PCIe capabilities 2017-07-10 10:39:43 -06:00
virtio vhost-user: unregister slave req handler at cleanup time 2017-07-03 22:29:49 +03:00
watchdog shutdown: Add source information to SHUTDOWN and RESET 2017-05-23 13:28:17 +02:00
xen xen/pt: Fixup addr validation in xen_pt_pci_config_access_check 2017-07-07 11:13:10 -07:00
xenpv xenfb: remove xen_init_display "temporary" hack 2017-07-07 11:10:03 -07:00
xtensa target/xtensa: support output to chardev console 2017-06-06 02:40:48 -07:00
Makefile.objs acpi: filter based on CONFIG_ACPI_X86 rather than TARGET 2017-01-16 17:52:35 +01:00