On Thu, Jan 25, 2018 at 10:23:47AM +0100, Erik Skultety wrote:
TL;DR:
nodedev:
- contained a decent amount of redundant code handling the same thing,
now it doesn't.
- only updated dynamic capabilities during dumpXML, now it does every
time it touches them
mdev:
- didn't update mdev capabilities at all, now it does
This series combines some long-needed refactor changes to the nodedev driver
with some necessary mdev fixes based on Wu Zongyong's patch series [1].
There's a lot of simple code movement due to the fact that update of the device
capabilities is strictly bound to the nodedev driver. The problem with the
existing approach is that in order to properly update all capabilities,
especially mdev, we would have to violate the logical code flow we have and
call back into the driver to have access to sysfs, i.e. driver->(conf|obj)
handling->util_helpers->DRIVER. Therefore to resolve it, along with all the
compilation dependencies, I moved most of the capability handling out of the
driver into src/conf/node_device_conf.c which already contained more than just
parsing and formatting of the capabilities. I also had to move the existing
virNodeDevCapMdevType into src/util so that the util helpers would know the
type they're working with.
[1]
https://www.redhat.com/archives/libvir-list/2018-January/msg00315.html
Fixed all the issues raised by reviewers and pushed, thanks.
Erik