From: Fiona Ebner <f.ebner@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [pve-devel] [PATCH qemu-server 1/3] move get_cpuunits helper to guest-common
Date: Fri, 7 Oct 2022 14:41:48 +0200 [thread overview]
Message-ID: <20221007124156.110246-12-f.ebner@proxmox.com> (raw)
In-Reply-To: <20221007124156.110246-1-f.ebner@proxmox.com>
while making it take the value directly instead of the config.
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
---
Dependency bump for guest-common needed.
PVE/QemuServer.pm | 19 ++-----------------
1 file changed, 2 insertions(+), 17 deletions(-)
diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
index 4e85dd02..73e38292 100644
--- a/PVE/QemuServer.pm
+++ b/PVE/QemuServer.pm
@@ -3446,21 +3446,6 @@ sub query_understood_cpu_flags {
return \@flags;
}
-my sub get_cpuunits {
- my ($conf) = @_;
- my $is_cgroupv2 = PVE::CGroup::cgroup_mode() == 2;
-
- my $cpuunits = $conf->{cpuunits};
- return $is_cgroupv2 ? 100 : 1024 if !defined($cpuunits);
-
- if ($is_cgroupv2) {
- $cpuunits = 10000 if $cpuunits >= 10000; # v1 can be higher, so clamp v2 there
- } else {
- $cpuunits = 2 if $cpuunits < 2; # v2 can be lower, so clamp v1 there
- }
- return $cpuunits;
-}
-
# Since commit 277d33454f77ec1d1e0bc04e37621e4dd2424b67 in pve-qemu, smm is not off by default
# anymore. But smm=off seems to be required when using SeaBIOS and serial display.
my sub should_disable_smm {
@@ -4994,7 +4979,7 @@ sub vmconfig_hotplug_pending {
die "skip\n" if !$hotplug_features->{memory};
$value = PVE::QemuServer::Memory::qemu_memory_hotplug($vmid, $conf, $defaults, $opt, $value);
} elsif ($opt eq 'cpuunits') {
- my $new_cpuunits = get_cpuunits({ $opt => $conf->{pending}->{$opt} }); # to clamp
+ my $new_cpuunits = PVE::GuestHelpers::get_cpuunits($conf->{pending}->{$opt}); #clamp
$cgroup->change_cpu_shares($new_cpuunits, 1024);
} elsif ($opt eq 'cpulimit') {
my $cpulimit = $conf->{pending}->{$opt} == 0 ? -1 : int($conf->{pending}->{$opt} * 100000);
@@ -5624,7 +5609,7 @@ sub vm_start_nolock {
# timeout should be more than enough here...
PVE::Systemd::wait_for_unit_removed("$vmid.scope", 20);
- my $cpuunits = get_cpuunits($conf);
+ my $cpuunits = PVE::GuestHelpers::get_cpuunits($conf->{cpuunits});
my %run_params = (
timeout => $statefile ? undef : $start_timeout,
--
2.30.2
next prev parent reply other threads:[~2022-10-07 12:42 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-07 12:41 [pve-devel] [PATCH-SERIES docs/(guest-)common/qemu-server/container/manager] cpuunits improvements Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [PATCH docs 1/2] qm: resource limits: update systemd setting name for cpuunits Fiona Ebner
2022-10-19 12:04 ` [pve-devel] applied: " Thomas Lamprecht
2022-10-07 12:41 ` [pve-devel] [PATCH docs 2/2] pct/qm: update cpuunits default Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [PATCH guest-common 1/1] helpers: move get_cpuunits helper from qemu-server Fiona Ebner
2022-10-19 12:04 ` Thomas Lamprecht
2022-10-07 12:41 ` [pve-devel] [PATCH container 1/7] config: cpuunits: drop description for outdated special value Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [PATCH container 2/7] change cpu shares: hard-code cgroupv1 default parameter Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [PATCH container 3/7] config: cpuunits: update default description Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [PATCH container 4/7] use helper from guest-common for cpuunits Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [PATCH container 5/7] config: replace mentions of "VM" with "container" Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [RFC container 6/7] change cpu shares: drop superfluous parameter Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [RFC container 7/7] api: create/update vm: clamp cpuunit value Fiona Ebner
2022-10-07 12:41 ` Fiona Ebner [this message]
2022-10-07 12:41 ` [pve-devel] [RFC qemu-server 2/3] change cpu shares: drop superfluous parameter Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [RFC qemu-server 3/3] api: create/update vm: clamp cpuunit value Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [RFC common 1/1] change cpu shares: drop unused $cgroupv1_default parameter Fiona Ebner
2022-11-07 15:30 ` [pve-devel] applied: " Thomas Lamprecht
2022-10-07 12:41 ` [pve-devel] [PATCH manager 1/5] ui: lxc: cpu edit: drop superfluous delete_if_default Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [PATCH manager 2/5] ui: qemu/lxc: cpu edit: fix 'create' parameter for delete_if_default() Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [PATCH manager 3/5] ui: lxc/qemu: cpu edit: use emptyText for cpuunits Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [PATCH v2 manager 4/5] cluster resources: add cgroup-mode to node properties Fiona Ebner
2022-11-02 12:24 ` Fiona Ebner
2022-10-07 12:41 ` [pve-devel] [PATCH manager 5/5] ui: lxc/qemu: cpu edit: make cpuunits depend on node's cgroup version Fiona Ebner
2022-11-08 15:27 ` [pve-devel] partially-applied-series: [PATCH-SERIES docs/(guest-)common/qemu-server/container/manager] cpuunits improvements Thomas Lamprecht
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20221007124156.110246-12-f.ebner@proxmox.com \
--to=f.ebner@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.