Skip to content

Commit

Permalink
core: fix wrong dedicated migration assignments
Browse files Browse the repository at this point in the history
When invoking a migration the `cpusets` is sent to VDSM as a list. The
index of each list represents the virtual CPU and the value is the
physical CPU we are taking. Sorting the values is wrong, as it results a
wrong mapping, causing split cores and split sockets.

Change-Id: Ib5d2d178557fa3f9e0130325f52e8cf6e8a04970
Bug-Url: https://bugzilla.redhat.com/2075037
Signed-off-by: Liran Rotenberg <lrotenbe@redhat.com>
  • Loading branch information
liranr23 authored and ahadas committed Apr 14, 2022
1 parent dc6d66e commit b2384c6
Showing 1 changed file with 1 addition and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -430,7 +430,7 @@ private MigrateVDSCommandParameters createMigrateVDSCommandParameters() {
maxIncomingMigrations = maxOutgoingMigrations = effectiveMigrationPolicy.getMaxMigrations();
}
if (getVm().getCpuPinningPolicy() == CpuPinningPolicy.DEDICATED) {
cpuSets = CpuPinningHelper.getAllPinnedPCpus(getDedicatedCpuPinning(getDestinationVdsManager())).stream().sorted()
cpuSets = CpuPinningHelper.getAllPinnedPCpus(getDedicatedCpuPinning(getDestinationVdsManager())).stream()
.map(Object::toString).collect(Collectors.toList());
String numaPinningString = vmHandler.createNumaPinningForDedicated(getVm(), getDestinationVdsId());
numaNodeSets = NumaPinningHelper.parseNumaSets(numaPinningString);
Expand Down

0 comments on commit b2384c6

Please sign in to comment.