From: Scott Weaver on gitlab.com Merge Request: https://gitlab.com/cki-project/kernel-ark/-/merge_requests/3822
This enables Rust code in the ELN kernel, which requires enabling CONFIG_EXTENDED_MODVERSIONS and CONFIG_GENDWARFKSYMS. The DRM panic with QR code functionality is the first Rust based code to be enabled. A QR code URL is not defined but we will likely want to update that before enabling this in RHEL.
For now, the ipaclones-internal package is disabled because bindgen (libclang) does not support gcc's `-fdump-ipa-clones`.
Signed-off-by: Scott Weaver scweaver@redhat.com
--- redhat/configs/fedora/generic/CONFIG_DRM_PANIC => redhat/configs/common/generic/CONFIG_DRM_PANIC | 0 redhat/configs/fedora/generic/CONFIG_DRM_PANIC_BACKGROUND_COLOR => redhat/configs/common/generic/CONFIG_DRM_PANIC_BACKGROUND_COLOR | 0 redhat/configs/fedora/generic/CONFIG_DRM_PANIC_DEBUG => redhat/configs/common/generic/CONFIG_DRM_PANIC_DEBUG | 0 redhat/configs/fedora/generic/CONFIG_DRM_PANIC_FOREGROUND_COLOR => redhat/configs/common/generic/CONFIG_DRM_PANIC_FOREGROUND_COLOR | 0 redhat/configs/fedora/generic/CONFIG_DRM_PANIC_SCREEN_QR_CODE => redhat/configs/common/generic/CONFIG_DRM_PANIC_SCREEN_QR_CODE | 0 redhat/configs/fedora/generic/CONFIG_DRM_PANIC_SCREEN_QR_VERSION => redhat/configs/common/generic/CONFIG_DRM_PANIC_SCREEN_QR_VERSION | 0 redhat/configs/common/generic/CONFIG_RUST | 2 +- redhat/configs/common/generic/CONFIG_RUST_OVERFLOW_CHECKS | 2 +- redhat/configs/fedora/generic/CONFIG_RUST | 1 - redhat/configs/fedora/generic/CONFIG_RUST_OVERFLOW_CHECKS | 1 - redhat/configs/rhel/generic/x86/CONFIG_SAMPLES_RUST | 1 + redhat/configs/rhel/generic/CONFIG_DRM_PANIC | 1 - redhat/configs/rhel/generic/CONFIG_DRM_PANIC_SCREEN | 1 + redhat/configs/rhel/generic/CONFIG_DRM_PANIC_SCREEN_QR_CODE_URL | 1 + redhat/configs/rhel/generic/CONFIG_EXTENDED_MODVERSIONS | 2 +- redhat/configs/rhel/generic/CONFIG_GENDWARFKSYMS | 2 +- redhat/configs/rhel/generic/CONFIG_MODVERSIONS | 2 +- redhat/kernel.spec.template | 6 ++---- 18 files changed, 10 insertions(+), 12 deletions(-)
From: Scott Weaver scweaver@redhat.com
redhat: enable Rust code in ELN
Rust is already supported in Fedora. This moves the essential Rust support configs to common, enabling it in ELN.
Signed-off-by: Scott Weaver scweaver@redhat.com
diff --git a/redhat/configs/common/generic/CONFIG_RUST b/redhat/configs/common/generic/CONFIG_RUST index blahblah..blahblah 100644 --- a/redhat/configs/common/generic/CONFIG_RUST +++ b/redhat/configs/common/generic/CONFIG_RUST @@ -1 +1 @@ -# CONFIG_RUST is not set +CONFIG_RUST=y diff --git a/redhat/configs/common/generic/CONFIG_RUST_OVERFLOW_CHECKS b/redhat/configs/common/generic/CONFIG_RUST_OVERFLOW_CHECKS index blahblah..blahblah 100644 --- a/redhat/configs/common/generic/CONFIG_RUST_OVERFLOW_CHECKS +++ b/redhat/configs/common/generic/CONFIG_RUST_OVERFLOW_CHECKS @@ -1 +1 @@ -# CONFIG_RUST_OVERFLOW_CHECKS is not set +CONFIG_RUST_OVERFLOW_CHECKS=y diff --git a/redhat/configs/fedora/generic/CONFIG_RUST b/redhat/configs/fedora/generic/CONFIG_RUST deleted file mode 100644 index blahblah..blahblah 0 --- a/redhat/configs/fedora/generic/CONFIG_RUST +++ /dev/null @@ -1 +0,0 @@ -CONFIG_RUST=y diff --git a/redhat/configs/fedora/generic/CONFIG_RUST_OVERFLOW_CHECKS b/redhat/configs/fedora/generic/CONFIG_RUST_OVERFLOW_CHECKS deleted file mode 100644 index blahblah..blahblah 0 --- a/redhat/configs/fedora/generic/CONFIG_RUST_OVERFLOW_CHECKS +++ /dev/null @@ -1 +0,0 @@ -CONFIG_RUST_OVERFLOW_CHECKS=y diff --git a/redhat/configs/rhel/generic/CONFIG_EXTENDED_MODVERSIONS b/redhat/configs/rhel/generic/CONFIG_EXTENDED_MODVERSIONS index blahblah..blahblah 100644 --- a/redhat/configs/rhel/generic/CONFIG_EXTENDED_MODVERSIONS +++ b/redhat/configs/rhel/generic/CONFIG_EXTENDED_MODVERSIONS @@ -1 +1 @@ -# CONFIG_EXTENDED_MODVERSIONS is not set +CONFIG_EXTENDED_MODVERSIONS=y diff --git a/redhat/configs/rhel/generic/CONFIG_GENDWARFKSYMS b/redhat/configs/rhel/generic/CONFIG_GENDWARFKSYMS index blahblah..blahblah 100644 --- a/redhat/configs/rhel/generic/CONFIG_GENDWARFKSYMS +++ b/redhat/configs/rhel/generic/CONFIG_GENDWARFKSYMS @@ -1 +1 @@ -# CONFIG_GENDWARFKSYMS is not set +CONFIG_GENDWARFKSYMS=y diff --git a/redhat/configs/rhel/generic/CONFIG_MODVERSIONS b/redhat/configs/rhel/generic/CONFIG_MODVERSIONS index blahblah..blahblah 100644 --- a/redhat/configs/rhel/generic/CONFIG_MODVERSIONS +++ b/redhat/configs/rhel/generic/CONFIG_MODVERSIONS @@ -1 +1 @@ -CONFIG_MODVERSIONS=y +# CONFIG_MODVERSIONS is not set diff --git a/redhat/configs/rhel/generic/x86/CONFIG_SAMPLES_RUST b/redhat/configs/rhel/generic/x86/CONFIG_SAMPLES_RUST new file mode 100644 index blahblah..blahblah 100644 --- /dev/null +++ b/redhat/configs/rhel/generic/x86/CONFIG_SAMPLES_RUST @@ -0,0 +1 @@ +# CONFIG_SAMPLES_RUST is not set diff --git a/redhat/kernel.spec.template b/redhat/kernel.spec.template index blahblah..blahblah 100644 --- a/redhat/kernel.spec.template +++ b/redhat/kernel.spec.template @@ -712,9 +712,7 @@ Provides: installonlypkg(kernel) BuildRequires: kmod, bash, coreutils, tar, git-core, which BuildRequires: bzip2, xz, findutils, m4, perl-interpreter, perl-Carp, perl-devel, perl-generators, make, diffutils, gawk, %compression BuildRequires: gcc, binutils, redhat-rpm-config, hmaccalc, bison, flex, gcc-c++ -%if 0%{?fedora} -BuildRequires: rust, rust-src, bindgen, rustfmt -%endif +BuildRequires: rust, rust-src, bindgen, rustfmt, clippy BuildRequires: net-tools, hostname, bc, elfutils-devel BuildRequires: dwarves BuildRequires: python3
-- https://gitlab.com/cki-project/kernel-ark/-/merge_requests/3822
From: Scott Weaver scweaver@redhat.com
redhat: enable drm panic screen with a QR code
Now that support for Rust code has been enabled, let's enable the drm panic screen and use the Rust based QR code generator.
Signed-off-by: Scott Weaver scweaver@redhat.com
diff --git a/redhat/configs/fedora/generic/CONFIG_DRM_PANIC b/redhat/configs/common/generic/CONFIG_DRM_PANIC rename from redhat/configs/fedora/generic/CONFIG_DRM_PANIC rename to redhat/configs/common/generic/CONFIG_DRM_PANIC index blahblah..blahblah 100644 --- a/redhat/configs/fedora/generic/CONFIG_DRM_PANIC +++ b/redhat/configs/common/generic/CONFIG_DRM_PANIC diff --git a/redhat/configs/fedora/generic/CONFIG_DRM_PANIC_BACKGROUND_COLOR b/redhat/configs/common/generic/CONFIG_DRM_PANIC_BACKGROUND_COLOR rename from redhat/configs/fedora/generic/CONFIG_DRM_PANIC_BACKGROUND_COLOR rename to redhat/configs/common/generic/CONFIG_DRM_PANIC_BACKGROUND_COLOR index blahblah..blahblah 100644 --- a/redhat/configs/fedora/generic/CONFIG_DRM_PANIC_BACKGROUND_COLOR +++ b/redhat/configs/common/generic/CONFIG_DRM_PANIC_BACKGROUND_COLOR diff --git a/redhat/configs/fedora/generic/CONFIG_DRM_PANIC_DEBUG b/redhat/configs/common/generic/CONFIG_DRM_PANIC_DEBUG rename from redhat/configs/fedora/generic/CONFIG_DRM_PANIC_DEBUG rename to redhat/configs/common/generic/CONFIG_DRM_PANIC_DEBUG index blahblah..blahblah 100644 --- a/redhat/configs/fedora/generic/CONFIG_DRM_PANIC_DEBUG +++ b/redhat/configs/common/generic/CONFIG_DRM_PANIC_DEBUG diff --git a/redhat/configs/fedora/generic/CONFIG_DRM_PANIC_FOREGROUND_COLOR b/redhat/configs/common/generic/CONFIG_DRM_PANIC_FOREGROUND_COLOR rename from redhat/configs/fedora/generic/CONFIG_DRM_PANIC_FOREGROUND_COLOR rename to redhat/configs/common/generic/CONFIG_DRM_PANIC_FOREGROUND_COLOR index blahblah..blahblah 100644 --- a/redhat/configs/fedora/generic/CONFIG_DRM_PANIC_FOREGROUND_COLOR +++ b/redhat/configs/common/generic/CONFIG_DRM_PANIC_FOREGROUND_COLOR diff --git a/redhat/configs/fedora/generic/CONFIG_DRM_PANIC_SCREEN_QR_CODE b/redhat/configs/common/generic/CONFIG_DRM_PANIC_SCREEN_QR_CODE rename from redhat/configs/fedora/generic/CONFIG_DRM_PANIC_SCREEN_QR_CODE rename to redhat/configs/common/generic/CONFIG_DRM_PANIC_SCREEN_QR_CODE index blahblah..blahblah 100644 --- a/redhat/configs/fedora/generic/CONFIG_DRM_PANIC_SCREEN_QR_CODE +++ b/redhat/configs/common/generic/CONFIG_DRM_PANIC_SCREEN_QR_CODE diff --git a/redhat/configs/fedora/generic/CONFIG_DRM_PANIC_SCREEN_QR_VERSION b/redhat/configs/common/generic/CONFIG_DRM_PANIC_SCREEN_QR_VERSION rename from redhat/configs/fedora/generic/CONFIG_DRM_PANIC_SCREEN_QR_VERSION rename to redhat/configs/common/generic/CONFIG_DRM_PANIC_SCREEN_QR_VERSION index blahblah..blahblah 100644 --- a/redhat/configs/fedora/generic/CONFIG_DRM_PANIC_SCREEN_QR_VERSION +++ b/redhat/configs/common/generic/CONFIG_DRM_PANIC_SCREEN_QR_VERSION diff --git a/redhat/configs/rhel/generic/CONFIG_DRM_PANIC b/redhat/configs/rhel/generic/CONFIG_DRM_PANIC deleted file mode 100644 index blahblah..blahblah 0 --- a/redhat/configs/rhel/generic/CONFIG_DRM_PANIC +++ /dev/null @@ -1 +0,0 @@ -# CONFIG_DRM_PANIC is not set diff --git a/redhat/configs/rhel/generic/CONFIG_DRM_PANIC_SCREEN b/redhat/configs/rhel/generic/CONFIG_DRM_PANIC_SCREEN new file mode 100644 index blahblah..blahblah 100644 --- /dev/null +++ b/redhat/configs/rhel/generic/CONFIG_DRM_PANIC_SCREEN @@ -0,0 +1 @@ +CONFIG_DRM_PANIC_SCREEN="qr_code" diff --git a/redhat/configs/rhel/generic/CONFIG_DRM_PANIC_SCREEN_QR_CODE_URL b/redhat/configs/rhel/generic/CONFIG_DRM_PANIC_SCREEN_QR_CODE_URL new file mode 100644 index blahblah..blahblah 100644 --- /dev/null +++ b/redhat/configs/rhel/generic/CONFIG_DRM_PANIC_SCREEN_QR_CODE_URL @@ -0,0 +1 @@ +CONFIG_DRM_PANIC_SCREEN_QR_CODE_URL=""
-- https://gitlab.com/cki-project/kernel-ark/-/merge_requests/3822
From: Scott Weaver scweaver@redhat.com
kernel.spec: disable ipaclones package
Now that Rust is supported, gcc's -fdump-ipa-clones cannot be used as it will also be passed to bindgen (i.e., libclang) which does not support this flag. Temporarily let's disabled the kernel-ipaclones-internal package.
Signed-off-by: Scott Weaver scweaver@redhat.com
diff --git a/redhat/kernel.spec.template b/redhat/kernel.spec.template index blahblah..blahblah 100644 --- a/redhat/kernel.spec.template +++ b/redhat/kernel.spec.template @@ -286,7 +286,7 @@ Summary: The Linux kernel
# # ipa_clone support -%define with_ipaclones %{?_without_ipaclones: 0} %{?!_without_ipaclones: 1} +%define with_ipaclones %{?_with_ipaclones: 1} %{?!_with_ipaclones: 0}
# Want to build a vanilla kernel build without any non-upstream patches? %define with_vanilla %{?_with_vanilla: 1} %{?!_with_vanilla: 0}
-- https://gitlab.com/cki-project/kernel-ark/-/merge_requests/3822
From: Michael Hofmann on gitlab.com https://gitlab.com/cki-project/kernel-ark/-/merge_requests/3822#note_2438055...
@scweaver we have rust for ELN/Rawhide, but not for c10s: https://gitlab.com/cki- project/containers/-/blob/main/includes/builder?ref_type=heads#L24
kernel@lists.fedoraproject.org