Bug 996758
Summary: | support exclusive vcpu<->cpu pinning | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Marcelo Tosatti <mtosatti> |
Component: | libvirt | Assignee: | Ján Tomko <jtomko> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Luyao Huang <lhuang> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | 7.1 | CC: | dyuan, gsun, juzhang, mzhan, rbalakri, tvvcox, xuzhang, yalzhang |
Target Milestone: | rc | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2017-05-22 17:18:51 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: |
Description
Marcelo Tosatti
2013-08-13 21:33:03 UTC
I've sent a design proposal upstream: https://www.redhat.com/archives/libvir-list/2014-July/msg01505.html Per: https://www.redhat.com/archives/libvir-list/2014-September/msg00092.html isolating other processes is out of scope of libvirt. Manually assigning VMs to separate cpusets should be working already, after fixes like: commit ff16bde100e19fbff17a964c08321f30f87afb22 Author: Henning Schild <henning.schild> AuthorDate: 2016-02-26 16:34:24 +0100 Commit: Daniel P. Berrange <berrange> CommitDate: 2016-03-01 14:07:27 +0000 qemu_cgroup: use virCgroupAddTask instead of virCgroupMoveTask qemuProcessSetupEmulator runs at a point in time where there is only the qemu main thread. Use virCgroupAddTask to put just that one task into the emulator cgroup. That patch makes virCgroupMoveTask and virCgroupAddTaskStrController obsolete. Signed-off-by: Henning Schild <henning.schild> git describe: v1.3.2-28-gff16bde contains: v1.3.3-rc1~318 commit 8e21e8d110743c66d2be258f8f39173f66c5c3b3 Author: Henning Schild <henning.schild> AuthorDate: 2016-02-26 16:34:23 +0100 Commit: Daniel P. Berrange <berrange> CommitDate: 2016-03-01 14:07:27 +0000 qemu_cgroup: put qemu right into emulator sub-cgroup Move qemuProcessSetupEmulator up under qemuSetupCgroup. That way we move the one main thread right into the emulator cgroup, instead of moving multiple threads later on. And we do not actually want any threads running in the parent cgroups (cpu cpuacct cpuset). Signed-off-by: Henning Schild <henning.schild> git describe: v1.3.2-27-g8e21e8d contains: v1.3.3-rc1~319 commit 90b721e43ec9232b5b218e891437bed04548e841 Author: Henning Schild <henning.schild> AuthorDate: 2015-12-14 15:58:05 -0500 Commit: John Ferlan <jferlan> CommitDate: 2015-12-14 15:58:05 -0500 qemu cgroups: move new threads to new cgroup after cpuset is set up Moving tasks to cgroups implied sched_setaffinity. Changing the cpus in a set implies the same for all tasks in the group. The old code put the the thread into the cpuset inherited from the machine cgroup, which allowed it to run outside of vcpupin for a short while. Signed-off-by: Henning Schild <henning.schild> git describe: v1.3.0-66-g90b721e contains: v1.3.1-rc1~196 |