On 5/13/22 12:30, Boris Fiuczynski wrote: > 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 > I'm fixing small memleaks I've raised in 16/17 and merging. Reviewed-by: Michal Privoznik <mprivozn@xxxxxxxxxx> Michal