[libvirt] [PATCH 0/6] Follow-up patches for IOThread API/display
Ján Tomko
jtomko at redhat.com
Sun Mar 8 11:03:48 UTC 2015
On Fri, Mar 06, 2015 at 01:47:06PM -0500, John Ferlan wrote:
> Based on jtomko's review of the IOThread series and my foray into the
> libvirt-perl bindings, these patches make the following adjustments:
>
> Patch 1 - Found while generating the virsh iothreadpin description, the
> vcpupin description had a few missing words
> Patch 2 - While working on the libvirt-perl bindings - I found I was a
> bit overaggressive with my GetIOThreadsInfo interface with regard
> to checking ReadOnly unnecessarily
> Patch 3 - Adjust the IOThread CPU Affnity algorithm based on jtomko's review
> comments
> Patch 4 - Fallout because I ran the patches through my Coverity checker.
> Patch 5 - Similar to IOThread - adjust the GetVcpuInfo CPU Affinity algorithm
> for the returned cpumap
> Patch 5 - Similar to IOThread - adjust the GetEmulatorInfo CPU Affinity
> algorithm for the returned cpumap
>
> John Ferlan (6):
> Fix syntax for vcpupin description
> Remove ReadOnly check for GetIOThreadsInfo
> qemu: Change/Fix IOThread CPU affinity bitmap manipulation
> qemu: Resolve Coverity CHECKED_RETURN issue
> qemu: Change qemuDomainGetVcpuPinInfo bitmap manipulation
> qemu: Change qemuDomainGetEmulatorPinInfo bitmap manipulation
>
> src/libvirt-domain.c | 1 -
> src/qemu/qemu_driver.c | 177 +++++++++++++++++++++----------------------------
> tools/virsh.pod | 4 +-
> 3 files changed, 76 insertions(+), 106 deletions(-)
ACK series, thanks for touching up VcpuInfo and EmulatorInfo as well!
There's one bug that I noticed:
If the CPUs are pinned domain-wide, that is:
<vcpu placement='static' cpuset='0-1'>4</vcpu>
<iothreads>2</iothreads>
Both vcpu threads and iothreads will inherit this pinning.
For a shutoff domain, vcpupininfo will display 0-1 for all vcpus, but
iothreadsinfo shows 0-4, even though they will get pinned to 0-1 after
domain startup.
Turns out the vpcupin info is filled for all the vcpus when the XML is
parsed since commit 10f8a45deb0f057a70a0d49794d3a3d19d17dceb
Falling back to targetDef->cpumask in qemuDomainGetIOThreadsConfig
(as qemuDomainGetEmulatorPinInfo does) would solve that too.
Jan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20150308/51ac1b84/attachment-0001.sig>
More information about the libvir-list
mailing list