all lists on lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH v2 manager] pve7to8: allow arbitrary newer running '-pve' kernels after upgrade
@ 2024-05-28 10:59 Fiona Ebner
  2024-07-04  8:44 ` [pve-devel] applied: " Fabian Grünbichler
  0 siblings, 1 reply; 2+ messages in thread
From: Fiona Ebner @ 2024-05-28 10:59 UTC (permalink / raw)
  To: pve-devel

As recently reported in the community forum [0], 6.8 pve kernels would
not be detected correctly by the script. Allow arbitrary newer
versions if already upgraded for future-proofing.

[0]: https://forum.proxmox.com/threads/145723/post-664612

Suggested-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
---

Changes in v2:
    * Allow arbitrary newer '-pve' kernels like Dominik suggested.

 PVE/CLI/pve7to8.pm | 21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

diff --git a/PVE/CLI/pve7to8.pm b/PVE/CLI/pve7to8.pm
index b34c8362..5c308907 100644
--- a/PVE/CLI/pve7to8.pm
+++ b/PVE/CLI/pve7to8.pm
@@ -204,17 +204,30 @@ sub check_pve_packages {
 	}
 
 	# FIXME: better differentiate between 6.2 from bullseye or bookworm
-	my ($krunning, $kinstalled) = (qr/6\.(?:2\.(?:[2-9]\d+|1[6-8]|1\d\d+)|5)[^~]*$/, 'proxmox-kernel-6.2');
+	my $kinstalled = 'proxmox-kernel-6.2';
 	if (!$upgraded) {
 	    # we got a few that avoided 5.15 in cluster with mixed CPUs, so allow older too
-	    ($krunning, $kinstalled) = (qr/(?:5\.(?:13|15)|6\.2)/, 'pve-kernel-5.15');
+	    $kinstalled = 'pve-kernel-5.15';
 	}
 
+	my $kernel_version_is_expected = sub {
+	    my ($version) = @_;
+
+	    return $version =~ m/^(?:5\.(?:13|15)|6\.2)/ if !$upgraded;
+
+	    if ($version =~ m/^6\.(?:2\.(?:[2-9]\d+|1[6-8]|1\d\d+)|5)[^~]*$/) {
+		return 1;
+	    } elsif ($version =~ m/^(\d+).(\d+)[^~]*-pve$/) {
+		return $1 >= 6 && $2 >= 2;
+	    }
+	    return;
+	};
+
 	print "\nChecking running kernel version..\n";
 	my $kernel_ver = $proxmox_ve->{RunningKernel};
 	if (!defined($kernel_ver)) {
 	    log_fail("unable to determine running kernel version.");
-	} elsif ($kernel_ver =~ /^$krunning/) {
+	} elsif ($kernel_version_is_expected->($kernel_ver)) {
 	    if ($upgraded) {
 		log_pass("running new kernel '$kernel_ver' after upgrade.");
 	    } else {
@@ -227,7 +240,7 @@ sub check_pve_packages {
 	    log_warn("unexpected running and installed kernel '$kernel_ver'.");
 	}
 
-	if ($upgraded && $kernel_ver =~ /^$krunning/) {
+	if ($upgraded && $kernel_version_is_expected->($kernel_ver)) {
 	    my $outdated_kernel_meta_pkgs = [];
 	    for my $kernel_meta_version ('5.4', '5.11', '5.13', '5.15') {
 		my $pkg = "pve-kernel-${kernel_meta_version}";
-- 
2.39.2



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


^ permalink raw reply	[flat|nested] 2+ messages in thread

* [pve-devel] applied: [PATCH v2 manager] pve7to8: allow arbitrary newer running '-pve' kernels after upgrade
  2024-05-28 10:59 [pve-devel] [PATCH v2 manager] pve7to8: allow arbitrary newer running '-pve' kernels after upgrade Fiona Ebner
@ 2024-07-04  8:44 ` Fabian Grünbichler
  0 siblings, 0 replies; 2+ messages in thread
From: Fabian Grünbichler @ 2024-07-04  8:44 UTC (permalink / raw)
  To: Proxmox VE development discussion

with the last return adapted to explicitly return 0.

Quoting Fiona Ebner (2024-05-28 12:59:23)
> As recently reported in the community forum [0], 6.8 pve kernels would
> not be detected correctly by the script. Allow arbitrary newer
> versions if already upgraded for future-proofing.
> 
> [0]: https://forum.proxmox.com/threads/145723/post-664612
> 
> Suggested-by: Dominik Csapak <d.csapak@proxmox.com>
> Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
> ---
> 
> Changes in v2:
>     * Allow arbitrary newer '-pve' kernels like Dominik suggested.
> 
>  PVE/CLI/pve7to8.pm | 21 +++++++++++++++++----
>  1 file changed, 17 insertions(+), 4 deletions(-)
> 
> diff --git a/PVE/CLI/pve7to8.pm b/PVE/CLI/pve7to8.pm
> index b34c8362..5c308907 100644
> --- a/PVE/CLI/pve7to8.pm
> +++ b/PVE/CLI/pve7to8.pm
> @@ -204,17 +204,30 @@ sub check_pve_packages {
>         }
>  
>         # FIXME: better differentiate between 6.2 from bullseye or bookworm
> -       my ($krunning, $kinstalled) = (qr/6\.(?:2\.(?:[2-9]\d+|1[6-8]|1\d\d+)|5)[^~]*$/, 'proxmox-kernel-6.2');
> +       my $kinstalled = 'proxmox-kernel-6.2';
>         if (!$upgraded) {
>             # we got a few that avoided 5.15 in cluster with mixed CPUs, so allow older too
> -           ($krunning, $kinstalled) = (qr/(?:5\.(?:13|15)|6\.2)/, 'pve-kernel-5.15');
> +           $kinstalled = 'pve-kernel-5.15';
>         }
>  
> +       my $kernel_version_is_expected = sub {
> +           my ($version) = @_;
> +
> +           return $version =~ m/^(?:5\.(?:13|15)|6\.2)/ if !$upgraded;
> +
> +           if ($version =~ m/^6\.(?:2\.(?:[2-9]\d+|1[6-8]|1\d\d+)|5)[^~]*$/) {
> +               return 1;
> +           } elsif ($version =~ m/^(\d+).(\d+)[^~]*-pve$/) {
> +               return $1 >= 6 && $2 >= 2;
> +           }
> +           return;
> +       };
> +
>         print "\nChecking running kernel version..\n";
>         my $kernel_ver = $proxmox_ve->{RunningKernel};
>         if (!defined($kernel_ver)) {
>             log_fail("unable to determine running kernel version.");
> -       } elsif ($kernel_ver =~ /^$krunning/) {
> +       } elsif ($kernel_version_is_expected->($kernel_ver)) {
>             if ($upgraded) {
>                 log_pass("running new kernel '$kernel_ver' after upgrade.");
>             } else {
> @@ -227,7 +240,7 @@ sub check_pve_packages {
>             log_warn("unexpected running and installed kernel '$kernel_ver'.");
>         }
>  
> -       if ($upgraded && $kernel_ver =~ /^$krunning/) {
> +       if ($upgraded && $kernel_version_is_expected->($kernel_ver)) {
>             my $outdated_kernel_meta_pkgs = [];
>             for my $kernel_meta_version ('5.4', '5.11', '5.13', '5.15') {
>                 my $pkg = "pve-kernel-${kernel_meta_version}";
> -- 
> 2.39.2
> 
> 
> 
> _______________________________________________
> pve-devel mailing list
> pve-devel@lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
> 
>


_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-07-04  8:44 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-05-28 10:59 [pve-devel] [PATCH v2 manager] pve7to8: allow arbitrary newer running '-pve' kernels after upgrade Fiona Ebner
2024-07-04  8:44 ` [pve-devel] applied: " Fabian Grünbichler

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.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal