[libvirt] [v10 0/6] Write separate module for hostdev passthrough

Chunyan Liu cyliu at suse.com
Fri Jan 17 06:40:57 UTC 2014


These patches implements a separate module for hostdev passthrough so that it
could be shared by different drivers and can maintain a global state of a host
device.

patch 1/6: extract hostdev passthrough function from qemu_hostdev.c and make it
reusable by multiple drivers.
patch 2/6: add a unit test for hostdev common library.
patch 3/6: switch qemu driver to use the common library instead of its own
hostdev passthrough APIs.
patch 4/6: switch lxc driver to use the common library instead of its own
hostdev passthrough APIs.
patch 5/6: add a hostdev pci backend type for xen usage.
patch 6/6: add pci passthrough to libxl driver.

---
Changes
  * change copyright to 2014
  * use VIR_DEBUG instead of self-defined DPRINTF in virhostdevtest.c
  * rebase to lasest source code



Chunyan Liu (6):
  add hostdev passthrough common library
  add unit test to hostdev common library
  change qemu driver to use hostdev common library
  change lxc driver to use hostdev common library
  add hostdev pci backend type for xen
  add pci passthrough to libxl driver

 .gnulib                                            |    2 +-
 docs/schemas/domaincommon.rng                      |    1 +
 po/POTFILES.in                                     |    3 +-
 src/Makefile.am                                    |    3 +-
 src/conf/domain_conf.c                             |    3 +-
 src/conf/domain_conf.h                             |    1 +
 src/libvirt_private.syms                           |   21 +
 src/libxl/libxl_conf.c                             |   63 +
 src/libxl/libxl_conf.h                             |    4 +
 src/libxl/libxl_domain.c                           |    9 +
 src/libxl/libxl_driver.c                           |  448 +++++-
 src/lxc/lxc_conf.h                                 |    4 -
 src/lxc/lxc_driver.c                               |   47 +-
 src/lxc/lxc_hostdev.c                              |  413 -----
 src/lxc/lxc_hostdev.h                              |   43 -
 src/lxc/lxc_process.c                              |   24 +-
 src/qemu/qemu_command.c                            |    4 +-
 src/qemu/qemu_conf.h                               |    9 +-
 src/qemu/qemu_domain.c                             |   22 +
 src/qemu/qemu_driver.c                             |   81 +-
 src/qemu/qemu_hostdev.c                            | 1454 -----------------
 src/qemu/qemu_hostdev.h                            |   76 -
 src/qemu/qemu_hotplug.c                            |  136 +-
 src/qemu/qemu_process.c                            |   40 +-
 src/util/virhostdev.c                              | 1703 ++++++++++++++++++++
 src/util/virhostdev.h                              |  134 ++
 src/util/virpci.c                                  |   30 +-
 src/util/virpci.h                                  |    9 +-
 src/util/virscsi.c                                 |   28 +-
 src/util/virscsi.h                                 |    8 +-
 src/util/virusb.c                                  |   29 +-
 src/util/virusb.h                                  |    8 +-
 tests/Makefile.am                                  |    5 +
 .../qemuxml2argv-hostdev-pci-address.xml           |    1 +
 .../qemuxml2argvdata/qemuxml2argv-net-hostdev.xml  |    1 +
 tests/qemuxml2argvdata/qemuxml2argv-pci-rom.xml    |    2 +
 tests/virhostdevtest.c                             |  473 ++++++
 tests/virpcimock.c                                 |   23 +-
 38 files changed, 3152 insertions(+), 2213 deletions(-)
 delete mode 100644 src/lxc/lxc_hostdev.c
 delete mode 100644 src/lxc/lxc_hostdev.h
 delete mode 100644 src/qemu/qemu_hostdev.c
 delete mode 100644 src/qemu/qemu_hostdev.h
 create mode 100644 src/util/virhostdev.c
 create mode 100644 src/util/virhostdev.h
 create mode 100644 tests/virhostdevtest.c




More information about the libvir-list mailing list