While this series started with the intend to add the optional device address of a subchannel device to the nodedev css device the outcome now also includes a small fix in the error reporting of css cap XML parsing as well as a refactoring of generic ccw code into virccw in utils. Boris Fiuczynski (17): nodedev: fix reported error msg in css cap XML parsing util: refactor virDomainDeviceCCWAddress into virccw.h util: refactor virDomainCCWAddressAsString into virccw util: make reuse of ccw device address format constant util: refactor ccw address constants into virccw util: refactor virDomainCCWAddressIncrement into virccw util: refactor virDomainDeviceCCWAddressIsValid into virccw util: refactor virDomainDeviceCCWAddressEqual into virccw conf: adjust method name virDomainDeviceCCWAddressParseXML util: add ccw device address parsing into virccw util: add virCCWDeviceAddressFromString to virccw nodedev: refactor css format from ccw format method nodedev: refactor ccw device address parsing from XML nodedev: refactor css XML parsing from ccw XML parsing schemas: refactor out nodedev ccw address schema nodedev: add optional device address of channel device to css device nodedev: add tests for optional device address to css device po/POTFILES.in | 1 + src/conf/device_conf.c | 28 +-- src/conf/device_conf.h | 23 +-- src/conf/domain_addr.c | 28 +-- src/conf/domain_addr.h | 5 +- src/conf/domain_conf.c | 19 +- src/conf/domain_conf.h | 6 +- src/conf/node_device_conf.c | 171 +++++++++++++----- src/conf/node_device_conf.h | 2 + src/conf/schemas/nodedev.rng | 27 +-- src/libvirt_private.syms | 14 +- src/node_device/node_device_driver.c | 4 +- src/node_device/node_device_udev.c | 16 +- src/qemu/qemu_agent.c | 4 +- src/qemu/qemu_agent.h | 2 +- src/qemu/qemu_command.c | 2 +- src/util/meson.build | 1 + src/util/virccw.c | 103 +++++++++++ src/util/virccw.h | 52 ++++++ .../css_0_0_10000-invalid.xml | 10 + ...s_0_0_fffe_mdev_types_channel_dev_addr.xml | 22 +++ .../css_0_0_ffff_channel_dev_addr-invalid.xml | 15 ++ .../css_0_0_ffff_channel_dev_addr.xml | 15 ++ ...s_0_0_fffe_mdev_types_channel_dev_addr.xml | 1 + .../css_0_0_ffff_channel_dev_addr.xml | 1 + tests/nodedevxml2xmltest.c | 2 + 26 files changed, 418 insertions(+), 156 deletions(-) create mode 100644 src/util/virccw.c create mode 100644 src/util/virccw.h create mode 100644 tests/nodedevschemadata/css_0_0_10000-invalid.xml create mode 100644 tests/nodedevschemadata/css_0_0_fffe_mdev_types_channel_dev_addr.xml create mode 100644 tests/nodedevschemadata/css_0_0_ffff_channel_dev_addr-invalid.xml create mode 100644 tests/nodedevschemadata/css_0_0_ffff_channel_dev_addr.xml create mode 120000 tests/nodedevxml2xmlout/css_0_0_fffe_mdev_types_channel_dev_addr.xml create mode 120000 tests/nodedevxml2xmlout/css_0_0_ffff_channel_dev_addr.xml -- 2.33.1