Message ID | 1490353213-2734-1-git-send-email-paul.durrant@citrix.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, Mar 24, 2017 at 11:00:13AM +0000, Paul Durrant wrote: > Recent discussions on xen-devel have highlighted that to properly > support displacing emulated NVMe disks with PV equivalents will need > updates to PV frontends. Therefore it is important that, if an emulated > NVMe disk is exposed to a guest with an existing PV storage frontend, > that frontend does not inadvertently cause unplug of that emulated > disk when unplugging IDE or SCSI disks. > > This patch defines a new bit in the mask used to instruct QEMU to unplug > emulated devices which will instruct QEMU to unplug NVMe disks and limits > the semantics of the existing 'all' disk-unplug bit to only IDE and/or SCSI > disks. > > Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Reviewed-by: Wei Liu <wei.liu2@citrix.com>
On 24/03/17 11:00, Paul Durrant wrote: > Recent discussions on xen-devel have highlighted that to properly > support displacing emulated NVMe disks with PV equivalents will need > updates to PV frontends. Therefore it is important that, if an emulated > NVMe disk is exposed to a guest with an existing PV storage frontend, > that frontend does not inadvertently cause unplug of that emulated > disk when unplugging IDE or SCSI disks. > > This patch defines a new bit in the mask used to instruct QEMU to unplug > emulated devices which will instruct QEMU to unplug NVMe disks and limits > the semantics of the existing 'all' disk-unplug bit to only IDE and/or SCSI > disks. > > Signed-off-by: Paul Durrant <paul.durrant@citrix.com> That's a lot better -- thanks! Acked-by: George Dunlap <george.dunlap@citrix.com>
diff --git a/docs/misc/hvm-emulated-unplug.markdown b/docs/misc/hvm-emulated-unplug.markdown index 8ead0c5..f6b27ed 100644 --- a/docs/misc/hvm-emulated-unplug.markdown +++ b/docs/misc/hvm-emulated-unplug.markdown @@ -32,12 +32,13 @@ drivers): blacklisted and should not load. 6. The drivers write a two-byte bitmask of devices to unplug to IO - port `0x10`. The defined fields are: + port `0x10`. The defined bits are: - * `1` -- All emulated disks (not including CD drives) - * `2` -- All emulated NICs - * `4` -- All IDE disks except for the primary master (not including CD - drives) + * `0` -- All emulated IDE and SCSI disks (not including CD drives). + * `1` -- All emulated NICs. + * `2` -- All IDE disks except for the primary master (not including CD + drives). This is overridden by bit 0. + * `3` -- All emulated NVMe disks. The relevant emulated devices then disappear from the relevant buses. For most guest operating systems, you want to do this
Recent discussions on xen-devel have highlighted that to properly support displacing emulated NVMe disks with PV equivalents will need updates to PV frontends. Therefore it is important that, if an emulated NVMe disk is exposed to a guest with an existing PV storage frontend, that frontend does not inadvertently cause unplug of that emulated disk when unplugging IDE or SCSI disks. This patch defines a new bit in the mask used to instruct QEMU to unplug emulated devices which will instruct QEMU to unplug NVMe disks and limits the semantics of the existing 'all' disk-unplug bit to only IDE and/or SCSI disks. Signed-off-by: Paul Durrant <paul.durrant@citrix.com> --- Cc: Andrew Cooper <andrew.cooper3@citrix.com> Cc: George Dunlap <George.Dunlap@eu.citrix.com> Cc: Ian Jackson <ian.jackson@eu.citrix.com> Cc: Jan Beulich <jbeulich@suse.com> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Cc: Stefano Stabellini <sstabellini@kernel.org> Cc: Tim Deegan <tim@xen.org> Cc: Wei Liu <wei.liu2@citrix.com> v2: - Updated commit comment with background rather then referring to thread URL. --- docs/misc/hvm-emulated-unplug.markdown | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-)