[Libvirt-cim] [PATCH 0/6] Add Virtual Controller Device
Boris Fiuczynski
fiuczy at linux.vnet.ibm.com
Fri Mar 21 11:57:45 UTC 2014
On 03/19/2014 03:49 AM, John Ferlan wrote:
> This is rework of the Controller patch series submitted by Xu Wang. I have
> built upon the constructs put in place by Xu with respect to reading and
> writing the XML, but for the remainder of the code I changed where the
> virtual controller lives.
>
> Xu's patches made a Controller RASD which had some issues regarding
> associations with other devices and pools.
>
> Rather than go with a RASD model, I have chosen to make a KVM_Controller
> virtual device to mimic a CIM_Controller device. This solution keeps things
In doing so you broke the DMTF Virtual System Profile!
http://www.dmtf.org/sites/default/files/standards/documents/DSP1057_1.0.0_0.pdf
Take a look at 7.3.1 which defines a Virtual System Configuration and a
Virtual System Representation. It states the class concepts.
You need to use RASDs.
> at a lower level and has been able to pass the cimtest as well as the
> update a defined domain with a changed value test. This second test is
> what fails for RHEL7.
>
> As it turns out, it seems as long as a 'pci' device with model 'pci-root'
> is created, then things seem to work. The code relies on the previous patch
> code Xu created to read/write the XML file with some adjustments.
>
> Perhaps the only controversial patch (for me at least) is 6/6. I figured
> that after we've read everything and just before we go to create or update
> the guest that we need to make sure that at least the 'pci' device with
> model 'pci-root' exists. This is similar to the add_default_devs() code,
Actually libvirt-cim should not be creating default devices but let
libvirt do that. Reimplementing libvirt's default behavior would a
overestimation of libvirt-cim's own capabilities and in the long run
cause extra effort in maintaining default consistency.
> except that it's run after all that code prior to any add or update of
> the guest just before the "system_to_xml()" call is made. I figure this
> is the last gasp to ensure that at least the 'pci' device is there which
> seems to be used by a number of "silently added" libvirt devices.
>
> John Ferlan (4):
> Add virtual controller object defs
> Change static API to global API
> Controller Device Details
> VSMS: Determine if default controller exists for KVM
>
> Xu Wang (2):
> Add virtual controller device types
> Parse/Store controller XML tags
>
> Makefile.am | 2 +
> libvirt-cim.spec.in | 2 +
> libxkutil/device_parsing.c | 119 +++++++++++++++++++++++++++-
> libxkutil/device_parsing.h | 15 ++++
> libxkutil/xmlgen.c | 72 +++++++++++++++++
> schema/Controller.mof | 47 +++++++++++
> schema/Controller.registration | 19 +++++
> src/Virt_Device.c | 84 ++++++++++++++++++++
> src/Virt_RASD.c | 21 +++--
> src/Virt_RASD.h | 4 +
> src/Virt_VirtualSystemManagementService.c | 106 ++++++++++++++++++++++++-
> src/svpc_types.h | 127 ++++++++++++++++++++++++++++++
> 12 files changed, 602 insertions(+), 16 deletions(-)
> create mode 100644 schema/Controller.mof
> create mode 100644 schema/Controller.registration
>
--
Mit freundlichen Grüßen/Kind regards
Boris Fiuczynski
IBM Deutschland Research & Development GmbH
Vorsitzender des Aufsichtsrats: Martina Köderitz
Geschäftsführung: Dirk Wittkopp
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294
More information about the Libvirt-cim
mailing list