diff --git a/pkg/compute/models/hosts.go b/pkg/compute/models/hosts.go index 40180bc39e..9193c278a9 100644 --- a/pkg/compute/models/hosts.go +++ b/pkg/compute/models/hosts.go @@ -4183,6 +4183,15 @@ func (self *SHost) PerformReserveCpus( } err = self.SetMetadata(ctx, api.HOSTMETA_RESERVED_CPUS_INFO, input, userCred) + if err != nil { + return nil, err + } + if self.CpuReserved < cs.Size() { + _, err = db.Update(self, func() error { + self.CpuReserved = cs.Size() + return nil + }) + } return nil, err }