Bug 1238589
| Summary: | iothreadinfo cannot be used | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Luyao Huang <lhuang> |
| Component: | libvirt | Assignee: | Peter Krempa <pkrempa> |
| Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | 7.2 | CC: | dyuan, hhan, honzhang, mzhan, rbalakri |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | libvirt-1.2.17-2.el7 | Doc Type: | Bug Fix |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2015-11-19 06:47:57 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
Improved patchset: http://www.redhat.com/archives/libvir-list/2015-July/msg00138.html Fixed upstream:
commit e8c5f61e91025f244bb022b1774a3fc6484625f8
Author: Peter Krempa <pkrempa>
Date: Thu Jul 2 16:46:46 2015 +0200
util: bitmap: Don't alloc overly large binary bitmaps
Optimize the virBitmap to array-of-char bitmap conversion by skipping
trailing zero bytes.
This also fixes a regression when requesting iothread information from a
live VM since after commit 825df8c3158cfaf5f398418471f10f4ff3c3515a the
bitmap returned from virProcessGetAffinity is too big to be formatted
properly via RPC. A user would get the following error:
error: Unable to get domain IOThreads information
error: Unable to encode message payload
Hi Peter, I can reproduce it on libvirt-1.2.17-1.el7.x86_64
Verify it on libvirt-1.2.17-8.el7.x86_64
Step1:
Define a domain fllowing in xml:
...
<vcpu placement='static' current='2'>4</vcpu>
<iothreads>2</iothreads>
<cputune>
<emulatorpin cpuset='2'/>
<iothreadpin iothread='1' cpuset='3'/>
</cputune>
...
Step2:
When domain shutoff, run iothreadinfo:
# virsh iothreadinfo t38
IOThread ID CPU Affinity
---------------------------------------------------
1 3
2 0-7
Step3:
Start domain and run iothreadinfo with --live:
# virsh start t38
Domain t38 started
# virsh iothreadinfo t38 --live
IOThread ID CPU Affinity
---------------------------------------------------
1 3
2 0-7
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2015-2202.html |
Description of problem: iothreadinfo cannot be used Version-Release number of selected component (if applicable): libvirt-1.2.17-1.el7.x86_64 How reproducible: 100% Steps to Reproduce: 1.prepare a running guest with iothread # virsh dumpxml test4 <domain type='kvm' id='8'> <name>test4</name> <uuid>b1e7936b-104b-430e-9211-d6c61b8df313</uuid> <memory unit='KiB'>1024000</memory> <currentMemory unit='KiB'>1024000</currentMemory> <vcpu placement='static' current='2'>4</vcpu> <iothreads>2</iothreads> <cputune> <emulatorpin cpuset='2'/> <iothreadpin iothread='1' cpuset='3'/> </cputune> 2. use iothreadinfo # virsh iothreadinfo test4 error: Unable to get domain IOThreads information error: Unable to encode message payload 3. Actual results: iothreadinfo cannot be used in new version Expected results: can get output Additional info: V1 of this issue's patch: https://www.redhat.com/archives/libvir-list/2015-June/msg01523.html