mirror of
https://github.com/yunionio/cloudpods.git
synced 2026-09-24 16:03:43 +08:00
Merge pull request #16306 from wanyaoqi/fix/set-queues-and-vectors-on-migrate
fix(host): set desc nics queues and vectors on live migrate
This commit is contained in:
@@ -305,7 +305,7 @@ func (s *SKVMGuestInstance) initGuestNetworks(pciRoot, pciBridge *desc.PCIContro
|
||||
s.Desc.Nics[i].Driver = "vmxnet3"
|
||||
}
|
||||
if s.Desc.Nics[i].NumQueues > 1 {
|
||||
vectors := s.Desc.Nics[i].NumQueues * 2
|
||||
vectors := s.Desc.Nics[i].NumQueues*2 + 1
|
||||
s.Desc.Nics[i].Vectors = &vectors
|
||||
}
|
||||
|
||||
|
||||
@@ -177,8 +177,14 @@ func (s *SKVMGuestInstance) initLiveDescFromSourceGuest(srcDesc *desc.SGuestDesc
|
||||
}
|
||||
}
|
||||
for i := 0; i < len(srcDesc.Nics); i++ {
|
||||
var numQueues, vectors int
|
||||
for j := 0; j < len(s.SourceDesc.Nics); j++ {
|
||||
if srcDesc.Nics[i].Index == s.SourceDesc.Nics[j].Index {
|
||||
numQueues = srcDesc.Nics[i].NumQueues
|
||||
if srcDesc.Nics[i].Vectors != nil {
|
||||
vectors = *srcDesc.Nics[i].Vectors
|
||||
}
|
||||
|
||||
srcDesc.Nics[i].GuestnetworkJsonDesc = s.SourceDesc.Nics[j].GuestnetworkJsonDesc
|
||||
break
|
||||
}
|
||||
@@ -187,6 +193,10 @@ func (s *SKVMGuestInstance) initLiveDescFromSourceGuest(srcDesc *desc.SGuestDesc
|
||||
if err := s.generateNicScripts(srcDesc.Nics[i]); err != nil {
|
||||
return errors.Wrapf(err, "generateNicScripts for nic: %v", srcDesc.Nics[i])
|
||||
}
|
||||
srcDesc.Nics[i].NumQueues = numQueues
|
||||
if vectors > 0 {
|
||||
srcDesc.Nics[i].Vectors = &vectors
|
||||
}
|
||||
srcDesc.Nics[i].UpscriptPath = s.getNicUpScriptPath(srcDesc.Nics[i])
|
||||
srcDesc.Nics[i].DownscriptPath = s.getNicDownScriptPath(srcDesc.Nics[i])
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user