qemu-patch-raspberry4/include
David Gibson 9d4c0f4f0a spapr: Consolidate DRC state variables
Each DRC has three fields describing its state: isolation_state,
allocation_state and configured.  At first this seems like a reasonable
representation, since its based directly on the PAPR defined
isolation-state and allocation-state indicators.  However:
  * Only a few combinations of the two fields' values are permitted
  * allocation_state isn't used at all for physical DRCs
  * The indicators are write only so they don't really have a well
    defined current value independent of each other

This replaces these variables with a single state variable, whose names
and numbers are based on the diagram in LoPAPR section 13.4.  Along with
this we add code to check the current state on various operations and make
sure the requested transition is permitted.

Strictly speaking, this makes guest visible changes to behaviour (since we
probably allowed some transitions we shouldn't have before).  However, a
hypothetical guest broken by that wasn't PAPR compliant, and probably
wouldn't have worked under PowerVM.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Daniel Barboza <danielhb@linux.vnet.ibm.com>
Tested-by: Daniel Barboza <danielhb@linux.vnet.ibm.com>
2017-07-17 15:07:05 +10:00
..
block nbd: Implement NBD_INFO_BLOCK_SIZE on client 2017-07-14 12:04:42 +02:00
chardev hmp: add hmp analogue for qmp-chardev-change 2017-07-14 11:04:34 +02:00
crypto block: pass option prefix down to crypto layer 2017-07-11 17:44:56 +02:00
disas Fix Thumb-1 BE32 execution and disassembly. 2017-02-07 18:29:59 +00:00
exec memory/iommu: introduce IOMMUMemoryRegionClass 2017-07-14 12:04:41 +02:00
fpu softfloat: define floatx80_round() 2017-06-29 20:27:39 +02:00
hw spapr: Consolidate DRC state variables 2017-07-17 15:07:05 +10:00
io trivial patches for 2017-05-10 2017-05-10 12:31:19 -04:00
libdecnumber Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
migration migration: Create load_setup()/cleanup() methods 2017-07-10 17:52:21 +01:00
monitor block: rip out all traces of password prompting 2017-07-11 17:44:56 +02:00
net slirp: add a fake NC-SI backend 2017-04-25 19:17:25 +08:00
qapi Error reporting patches for 2017-07-13 2017-07-14 09:36:40 +01:00
qemu * gdbstub fixes (Alex) 2017-07-14 12:16:09 +01:00
qom cpu: Convert to DEFINE_PROP_LINK 2017-07-14 12:04:43 +02:00
standard-headers linux-headers: update to 4.13-rc0 2017-07-14 12:29:10 +02:00
sysemu Block layer patches 2017-07-13 13:38:57 +01:00
ui gtk: use framebuffer helper functions. 2017-06-21 14:23:16 +02:00
elf.h s390x/arch_dump: also dump guarded storage control block 2017-07-14 12:29:49 +02:00
glib-compat.h qga: Add 'guest-get-users' command 2017-04-26 23:57:45 -05:00
qemu-common.h tcg: make tcg_allowed global 2017-07-04 16:01:16 +02:00
qemu-io.h hmp: Request permissions in qemu-io 2017-02-28 20:47:50 +01:00
trace-tcg.h trace: get rid of generated-events.h/generated-events.c 2016-10-12 09:54:52 +02:00