* [gentoo-dev] [PATCH] linux-mod-r1.eclass: warn if KV does not match virtual/dist-kernel
@ 2024-01-30 11:07 Andrew Ammerlaan
2024-01-30 22:41 ` Mike Pagano
0 siblings, 1 reply; 2+ messages in thread
From: Andrew Ammerlaan @ 2024-01-30 11:07 UTC (permalink / raw
To: gentoo-dev
From 3a3a69379650af341fa318d8f2d1533885b52d0e Mon Sep 17 00:00:00 2001
From: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Date: Mon, 29 Jan 2024 10:58:11 +0100
Subject: [PATCH] linux-mod-r1.eclass: warn if KV does not match
virtual/dist-kernel
We have no mechanism to ensure that we build the kernel modules for
the same kernel version as the version we will record in the
virtual/dist-kernel
subslot dependency. This does not fix this problem, but it does add a
warning
to ensure users are aware that, for example, built binpkgs are going to have
wrong dependency metadata.
Bug: https://bugs.gentoo.org/923025
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
---
eclass/linux-mod-r1.eclass | 20 +++++++++++++++++++-
1 file changed, 19 insertions(+), 1 deletion(-)
diff --git a/eclass/linux-mod-r1.eclass b/eclass/linux-mod-r1.eclass
index 67a4b64eb4815..8d384c2b30c88 100644
--- a/eclass/linux-mod-r1.eclass
+++ b/eclass/linux-mod-r1.eclass
@@ -1,4 +1,4 @@
-# Copyright 2023 Gentoo Authors
+# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: linux-mod-r1.eclass
@@ -650,6 +650,24 @@ _modules_prepare_kernel() {
fi
linux-info_pkg_setup
+
+ if use dist-kernel &&
+ ! has_version "~virtual/dist-kernel-${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}"
+ then
+ ewarn
+ ewarn "The kernel modules in ${CATEGORY}/${PN} are being built for"
+ ewarn "kernel version ${KV_FULL}. But this does not match the"
+ ewarn "installed version of virtual/dist-kernel."
+ ewarn
+ ewarn "If this is not intentional, the problem may be corrected by"
+ ewarn "using \"eselect kernel\" to set the default kernel version to"
+ ewarn "the same version as the installed version of virtual/dist-kernel."
+ ewarn
+ ewarn "If the distribution kernel is being downgraded, ensure that"
+ ewarn "virtual/dist-kernel is also downgraded to the same version"
+ ewarn "before rebuilding external kernel modules."
+ ewarn
+ fi
}
# @FUNCTION: _modules_prepare_sign
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [gentoo-dev] [PATCH] linux-mod-r1.eclass: warn if KV does not match virtual/dist-kernel
2024-01-30 11:07 [gentoo-dev] [PATCH] linux-mod-r1.eclass: warn if KV does not match virtual/dist-kernel Andrew Ammerlaan
@ 2024-01-30 22:41 ` Mike Pagano
0 siblings, 0 replies; 2+ messages in thread
From: Mike Pagano @ 2024-01-30 22:41 UTC (permalink / raw
To: gentoo-dev
On 1/30/24 06:07, Andrew Ammerlaan wrote:
> From 3a3a69379650af341fa318d8f2d1533885b52d0e Mon Sep 17 00:00:00 2001
> From: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
> Date: Mon, 29 Jan 2024 10:58:11 +0100
> Subject: [PATCH] linux-mod-r1.eclass: warn if KV does not match
> virtual/dist-kernel
>
> We have no mechanism to ensure that we build the kernel modules for
> the same kernel version as the version we will record in the
> virtual/dist-kernel
> subslot dependency. This does not fix this problem, but it does add a
> warning
> to ensure users are aware that, for example, built binpkgs are going to
> have
> wrong dependency metadata.
>
> Bug: https://bugs.gentoo.org/923025
> Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
> ---
> eclass/linux-mod-r1.eclass | 20 +++++++++++++++++++-
> 1 file changed, 19 insertions(+), 1 deletion(-)
>
> diff --git a/eclass/linux-mod-r1.eclass b/eclass/linux-mod-r1.eclass
> index 67a4b64eb4815..8d384c2b30c88 100644
> --- a/eclass/linux-mod-r1.eclass
> +++ b/eclass/linux-mod-r1.eclass
> @@ -1,4 +1,4 @@
> -# Copyright 2023 Gentoo Authors
> +# Copyright 2023-2024 Gentoo Authors
> # Distributed under the terms of the GNU General Public License v2
>
> # @ECLASS: linux-mod-r1.eclass
> @@ -650,6 +650,24 @@ _modules_prepare_kernel() {
> fi
>
> linux-info_pkg_setup
> +
> + if use dist-kernel &&
> + ! has_version
> "~virtual/dist-kernel-${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}"
> + then
> + ewarn
> + ewarn "The kernel modules in ${CATEGORY}/${PN} are being built
> for"
> + ewarn "kernel version ${KV_FULL}. But this does not match the"
> + ewarn "installed version of virtual/dist-kernel."
> + ewarn
> + ewarn "If this is not intentional, the problem may be corrected
> by"
> + ewarn "using \"eselect kernel\" to set the default kernel
> version to"
> + ewarn "the same version as the installed version of
> virtual/dist-kernel."
> + ewarn
> + ewarn "If the distribution kernel is being downgraded, ensure
> that"
> + ewarn "virtual/dist-kernel is also downgraded to the same version"
> + ewarn "before rebuilding external kernel modules."
> + ewarn
> + fi
> }
>
> # @FUNCTION: _modules_prepare_sign
>
LGTM
--
Mike Pagano
Gentoo Developer - Kernel Project
E-Mail : mpagano@gentoo.org
GnuPG FP : 52CC A0B0 F631 0B17 0142 F83F 92A6 DBEC 81F2 B137
Public Key : http://pgp.mit.edu/pks/lookup?search=0x92A6DBEC81F2B137&op=index
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-01-30 22:41 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-30 11:07 [gentoo-dev] [PATCH] linux-mod-r1.eclass: warn if KV does not match virtual/dist-kernel Andrew Ammerlaan
2024-01-30 22:41 ` Mike Pagano
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox