mirror of
https://github.com/andersrh/copr-andersrh.git
synced 2026-05-17 13:58:01 +00:00
add almalinux kernel: 6.12.0-55.40.1.andersdsrhcustom9
this is the Almalinux kernel with android binder and PSI enabled
This commit is contained in:
parent
da19a137fa
commit
1301145e2c
88 changed files with 233114 additions and 0 deletions
3
my-ostree-os/kernel/.gitignore
vendored
Normal file
3
my-ostree-os/kernel/.gitignore
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
kernel-abi-stablelists-*.tar.xz
|
||||||
|
kernel-kabi-dw-*.tar.xz
|
||||||
|
linux-*.tar.xz
|
||||||
|
|
@ -0,0 +1,93 @@
|
||||||
|
From 4af075404ae842c878034b9c8030c9e96f459f30 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andrew Lukoshko <alukoshko@almalinux.org>
|
||||||
|
Date: Wed, 5 Feb 2025 16:39:01 +0000
|
||||||
|
Subject: [PATCH] Enable all disabled pci devices by moving to unmaintained
|
||||||
|
list
|
||||||
|
|
||||||
|
---
|
||||||
|
kernel/rh_messages.h | 64 ++++++++++++++++++++++----------------------
|
||||||
|
1 file changed, 32 insertions(+), 32 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/kernel/rh_messages.h b/kernel/rh_messages.h
|
||||||
|
index 647d7b9a4fe9..2f9d607d5f0c 100644
|
||||||
|
--- a/kernel/rh_messages.h
|
||||||
|
+++ b/kernel/rh_messages.h
|
||||||
|
@@ -123,6 +123,38 @@ static const struct pci_device_id rh_deprecated_pci_devices[] = {
|
||||||
|
};
|
||||||
|
|
||||||
|
static const struct pci_device_id rh_disabled_pci_devices[] = {
|
||||||
|
+ {0} /* Terminating entry */
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
+static const struct pci_device_id rh_unmaintained_pci_devices[] = {
|
||||||
|
+ { 0x10df, 0xe220, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x10df, 0x0724, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x10df, 0xe200, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x10df, 0xf011, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x10df, 0xf015, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x10df, 0xf100, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x10df, 0xfc40, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x005b, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x0071, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x0073, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x0079, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x006E, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x0080, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x0081, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x0082, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x0083, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x0084, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x0085, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x0086, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1000, 0x0087, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x177d, 0xa01e, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x177d, 0xa034, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x177d, 0x0011, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1077, 0x2031, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1077, 0x2532, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1077, 0x8031, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1924, 0x0803, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
+ { 0x1924, 0x0813, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
{ 0x1011, 0x0046, 0x103c, 0x10c2 },
|
||||||
|
{ 0x1011, 0x0046, 0x9005, 0x0364 },
|
||||||
|
{ 0x1011, 0x0046, 0x9005, 0x0365 },
|
||||||
|
@@ -291,36 +323,4 @@ static const struct pci_device_id rh_disabled_pci_devices[] = {
|
||||||
|
{0} /* Terminating entry */
|
||||||
|
};
|
||||||
|
|
||||||
|
-static const struct pci_device_id rh_unmaintained_pci_devices[] = {
|
||||||
|
- { 0x10df, 0xe220, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x10df, 0x0724, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x10df, 0xe200, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x10df, 0xf011, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x10df, 0xf015, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x10df, 0xf100, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x10df, 0xfc40, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x005b, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x0071, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x0073, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x0079, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x006E, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x0080, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x0081, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x0082, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x0083, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x0084, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x0085, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x0086, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1000, 0x0087, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x177d, 0xa01e, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x177d, 0xa034, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x177d, 0x0011, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1077, 0x2031, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1077, 0x2532, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1077, 0x8031, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1924, 0x0803, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- { 0x1924, 0x0813, PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
- {0} /* Terminating entry */
|
||||||
|
-};
|
||||||
|
-
|
||||||
|
#endif /* __RH_MESSAGES_H */
|
||||||
|
--
|
||||||
|
2.43.5
|
||||||
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
From 0437ffb56aa745a623adce7232efca23c6788d62 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andrew Lukoshko <alukoshko@almalinux.org>
|
||||||
|
Date: Thu, 8 Aug 2024 16:38:01 +0000
|
||||||
|
Subject: [PATCH 02/10] Bring back deprecated pci ids to mptsas-mptspi driver
|
||||||
|
|
||||||
|
---
|
||||||
|
drivers/message/fusion/mptsas.c | 2 +-
|
||||||
|
drivers/message/fusion/mptspi.c | 2 +-
|
||||||
|
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/drivers/message/fusion/mptsas.c b/drivers/message/fusion/mptsas.c
|
||||||
|
index d5f52a128..5f10cbd35 100644
|
||||||
|
--- a/drivers/message/fusion/mptsas.c
|
||||||
|
+++ b/drivers/message/fusion/mptsas.c
|
||||||
|
@@ -5380,7 +5380,7 @@ static void mptsas_remove(struct pci_dev *pdev)
|
||||||
|
}
|
||||||
|
|
||||||
|
static struct pci_device_id mptsas_pci_table[] = {
|
||||||
|
-#ifdef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifdef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{ PCI_VENDOR_ID_LSI_LOGIC, MPI_MANUFACTPAGE_DEVID_SAS1068,
|
||||||
|
PCI_VENDOR_ID_VMWARE, PCI_ANY_ID },
|
||||||
|
#else
|
||||||
|
diff --git a/drivers/message/fusion/mptspi.c b/drivers/message/fusion/mptspi.c
|
||||||
|
index 5a8b2ea73..b1cff4289 100644
|
||||||
|
--- a/drivers/message/fusion/mptspi.c
|
||||||
|
+++ b/drivers/message/fusion/mptspi.c
|
||||||
|
@@ -1239,7 +1239,7 @@ static struct spi_function_template mptspi_transport_functions = {
|
||||||
|
*/
|
||||||
|
|
||||||
|
static struct pci_device_id mptspi_pci_table[] = {
|
||||||
|
-#ifdef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifdef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{ PCI_VENDOR_ID_LSI_LOGIC, MPI_MANUFACTPAGE_DEVID_53C1030,
|
||||||
|
PCI_VENDOR_ID_VMWARE, PCI_ANY_ID },
|
||||||
|
#else
|
||||||
|
--
|
||||||
|
2.43.5
|
||||||
|
|
||||||
|
|
@ -0,0 +1,46 @@
|
||||||
|
From 21a3bf14f10c6129864fe7049c15baec679fbd24 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andrew Lukoshko <alukoshko@almalinux.org>
|
||||||
|
Date: Thu, 8 Aug 2024 16:40:30 +0000
|
||||||
|
Subject: [PATCH 03/10] Bring back deprecated pci ids to hpsa driver
|
||||||
|
|
||||||
|
---
|
||||||
|
drivers/scsi/hpsa.c | 9 +++++++--
|
||||||
|
1 file changed, 7 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
|
||||||
|
index aa5f9c19d..03226fe8f 100644
|
||||||
|
--- a/drivers/scsi/hpsa.c
|
||||||
|
+++ b/drivers/scsi/hpsa.c
|
||||||
|
@@ -82,7 +82,7 @@ MODULE_DESCRIPTION("Driver for HP Smart Array Controller version " \
|
||||||
|
HPSA_DRIVER_VERSION);
|
||||||
|
MODULE_VERSION(HPSA_DRIVER_VERSION);
|
||||||
|
MODULE_LICENSE("GPL");
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
MODULE_ALIAS("cciss");
|
||||||
|
#endif
|
||||||
|
|
||||||
|
@@ -93,6 +93,11 @@ MODULE_PARM_DESC(hpsa_simple_mode,
|
||||||
|
|
||||||
|
/* define the PCI info for the cards we can control */
|
||||||
|
static const struct pci_device_id hpsa_pci_device_id[] = {
|
||||||
|
+ {PCI_VENDOR_ID_HP, PCI_DEVICE_ID_HP_CISSC, 0x103C, 0x3223},
|
||||||
|
+ {PCI_VENDOR_ID_HP, PCI_DEVICE_ID_HP_CISSC, 0x103C, 0x3234},
|
||||||
|
+ {PCI_VENDOR_ID_HP, PCI_DEVICE_ID_HP_CISSC, 0x103C, 0x3235},
|
||||||
|
+ {PCI_VENDOR_ID_HP, PCI_DEVICE_ID_HP_CISSC, 0x103C, 0x3237},
|
||||||
|
+ {PCI_VENDOR_ID_HP, PCI_DEVICE_ID_HP_CISSC, 0x103C, 0x323D},
|
||||||
|
{PCI_VENDOR_ID_HP, PCI_DEVICE_ID_HP_CISSE, 0x103C, 0x3241},
|
||||||
|
{PCI_VENDOR_ID_HP, PCI_DEVICE_ID_HP_CISSE, 0x103C, 0x3243},
|
||||||
|
{PCI_VENDOR_ID_HP, PCI_DEVICE_ID_HP_CISSE, 0x103C, 0x3245},
|
||||||
|
@@ -146,7 +151,7 @@ static const struct pci_device_id hpsa_pci_device_id[] = {
|
||||||
|
{PCI_VENDOR_ID_HP_3PAR, 0x0075, 0x1590, 0x007D},
|
||||||
|
{PCI_VENDOR_ID_HP_3PAR, 0x0075, 0x1590, 0x0088},
|
||||||
|
{PCI_VENDOR_ID_HP, 0x333f, 0x103c, 0x333f},
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{PCI_VENDOR_ID_HP, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID,
|
||||||
|
PCI_CLASS_STORAGE_RAID << 8, 0xffff << 8, 0},
|
||||||
|
{PCI_VENDOR_ID_COMPAQ, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID,
|
||||||
|
--
|
||||||
|
2.43.5
|
||||||
|
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
From 18a57b9cd3833462356c3b4df180840f3fede7c6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andrew Lukoshko <alukoshko@almalinux.org>
|
||||||
|
Date: Thu, 8 Aug 2024 16:41:35 +0000
|
||||||
|
Subject: [PATCH 04/10] Bring back deprecated pci ids to qla2xxx driver
|
||||||
|
|
||||||
|
---
|
||||||
|
drivers/scsi/qla2xxx/qla_os.c | 6 +++---
|
||||||
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
|
||||||
|
index 26089872a..8018c68f2 100644
|
||||||
|
--- a/drivers/scsi/qla2xxx/qla_os.c
|
||||||
|
+++ b/drivers/scsi/qla2xxx/qla_os.c
|
||||||
|
@@ -8123,7 +8123,7 @@ static const struct pci_error_handlers qla2xxx_err_handler = {
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct pci_device_id qla2xxx_pci_tbl[] = {
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2100) },
|
||||||
|
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2200) },
|
||||||
|
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2300) },
|
||||||
|
@@ -8139,12 +8139,12 @@ static struct pci_device_id qla2xxx_pci_tbl[] = {
|
||||||
|
#endif
|
||||||
|
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2532) },
|
||||||
|
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2031) },
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP8001) },
|
||||||
|
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP8021) },
|
||||||
|
#endif
|
||||||
|
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP8031) },
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISPF001) },
|
||||||
|
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP8044) },
|
||||||
|
#endif
|
||||||
|
--
|
||||||
|
2.43.5
|
||||||
|
|
||||||
|
|
@ -0,0 +1,68 @@
|
||||||
|
From 4ad65faf019bfae8aec7b4e24d41c62184266ba1 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andrew Lukoshko <alukoshko@almalinux.org>
|
||||||
|
Date: Thu, 8 Aug 2024 16:42:21 +0000
|
||||||
|
Subject: [PATCH 05/10] Bring back deprecated pci ids to lpfc driver
|
||||||
|
|
||||||
|
---
|
||||||
|
drivers/scsi/lpfc/lpfc_ids.h | 12 ++++++------
|
||||||
|
1 file changed, 6 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/drivers/scsi/lpfc/lpfc_ids.h b/drivers/scsi/lpfc/lpfc_ids.h
|
||||||
|
index 85fc52038..83dc9f4c7 100644
|
||||||
|
--- a/drivers/scsi/lpfc/lpfc_ids.h
|
||||||
|
+++ b/drivers/scsi/lpfc/lpfc_ids.h
|
||||||
|
@@ -24,7 +24,7 @@
|
||||||
|
#include <linux/pci.h>
|
||||||
|
|
||||||
|
const struct pci_device_id lpfc_id_table[] = {
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_VIPER,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_FIREFLY,
|
||||||
|
@@ -58,7 +58,7 @@ const struct pci_device_id lpfc_id_table[] = {
|
||||||
|
#endif
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_BMID,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_BSMB,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
#endif
|
||||||
|
@@ -72,7 +72,7 @@ const struct pci_device_id lpfc_id_table[] = {
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZSMB,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_TFLY,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LP101,
|
||||||
|
@@ -96,7 +96,7 @@ const struct pci_device_id lpfc_id_table[] = {
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_SAT_S,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_PROTEUS_VF,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_PROTEUS_PF,
|
||||||
|
@@ -110,13 +110,13 @@ const struct pci_device_id lpfc_id_table[] = {
|
||||||
|
#endif
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_FALCON,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_BALIUS,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
#endif
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LANCER_FC,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LANCER_FCOE,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID, },
|
||||||
|
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LANCER_FC_VF,
|
||||||
|
--
|
||||||
|
2.43.5
|
||||||
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
From 03c58c504f05b1682b29686a5783338a4bb1e9ad Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andrew Lukoshko <alukoshko@almalinux.org>
|
||||||
|
Date: Thu, 8 Aug 2024 16:43:03 +0000
|
||||||
|
Subject: [PATCH 06/10] Bring back deprecated pci ids to qla4xxx driver
|
||||||
|
|
||||||
|
---
|
||||||
|
drivers/scsi/qla4xxx/ql4_os.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/drivers/scsi/qla4xxx/ql4_os.c b/drivers/scsi/qla4xxx/ql4_os.c
|
||||||
|
index 7f0cef737..3b6005f55 100644
|
||||||
|
--- a/drivers/scsi/qla4xxx/ql4_os.c
|
||||||
|
+++ b/drivers/scsi/qla4xxx/ql4_os.c
|
||||||
|
@@ -9865,7 +9865,7 @@ static struct pci_device_id qla4xxx_pci_tbl[] = {
|
||||||
|
.subvendor = PCI_ANY_ID,
|
||||||
|
.subdevice = PCI_ANY_ID,
|
||||||
|
},
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{
|
||||||
|
.vendor = PCI_VENDOR_ID_QLOGIC,
|
||||||
|
.device = PCI_DEVICE_ID_QLOGIC_ISP8022,
|
||||||
|
--
|
||||||
|
2.43.5
|
||||||
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
From c4966c5288bd0cfc3c25526364c6332914131596 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andrew Lukoshko <alukoshko@almalinux.org>
|
||||||
|
Date: Thu, 8 Aug 2024 16:43:41 +0000
|
||||||
|
Subject: [PATCH 07/10] Bring back deprecated pci ids to be2iscsi driver
|
||||||
|
|
||||||
|
---
|
||||||
|
drivers/scsi/be2iscsi/be_main.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c
|
||||||
|
index a54ea7cf7..46833f122 100644
|
||||||
|
--- a/drivers/scsi/be2iscsi/be_main.c
|
||||||
|
+++ b/drivers/scsi/be2iscsi/be_main.c
|
||||||
|
@@ -387,7 +387,7 @@ static int beiscsi_eh_device_reset(struct scsi_cmnd *sc)
|
||||||
|
|
||||||
|
/*------------------- PCI Driver operations and data ----------------- */
|
||||||
|
static const struct pci_device_id beiscsi_pci_id_table[] = {
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{ PCI_DEVICE(BE_VENDOR_ID, BE_DEVICE_ID1) },
|
||||||
|
{ PCI_DEVICE(BE_VENDOR_ID, BE_DEVICE_ID2) },
|
||||||
|
{ PCI_DEVICE(BE_VENDOR_ID, OC_DEVICE_ID1) },
|
||||||
|
--
|
||||||
|
2.43.5
|
||||||
|
|
||||||
|
|
@ -0,0 +1,34 @@
|
||||||
|
From e5609c1f01d0d018484e4d517c725fab3e1bd723 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andrew Lukoshko <alukoshko@almalinux.org>
|
||||||
|
Date: Thu, 8 Aug 2024 16:48:24 +0000
|
||||||
|
Subject: [PATCH 08/10] Bring back deprecated pci ids to megaraid_sas driver
|
||||||
|
|
||||||
|
---
|
||||||
|
drivers/scsi/megaraid/megaraid_sas_base.c | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/drivers/scsi/megaraid/megaraid_sas_base.c
|
||||||
|
index bf57fd3b9..0eaed98ac 100644
|
||||||
|
--- a/drivers/scsi/megaraid/megaraid_sas_base.c
|
||||||
|
+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
|
||||||
|
@@ -149,7 +149,7 @@ megasas_set_ld_removed_by_fw(struct megasas_instance *instance);
|
||||||
|
*/
|
||||||
|
static struct pci_device_id megasas_pci_table[] = {
|
||||||
|
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{PCI_DEVICE(PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_LSI_SAS1064R)},
|
||||||
|
/* xscale IOP */
|
||||||
|
{PCI_DEVICE(PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_LSI_SAS1078R)},
|
||||||
|
@@ -165,7 +165,7 @@ static struct pci_device_id megasas_pci_table[] = {
|
||||||
|
/* skinny*/
|
||||||
|
{PCI_DEVICE(PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_LSI_SAS0071SKINNY)},
|
||||||
|
/* skinny*/
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{PCI_DEVICE(PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_LSI_VERDE_ZCR)},
|
||||||
|
/* xscale IOP, vega */
|
||||||
|
{PCI_DEVICE(PCI_VENDOR_ID_DELL, PCI_DEVICE_ID_DELL_PERC5)},
|
||||||
|
--
|
||||||
|
2.43.5
|
||||||
|
|
||||||
|
|
@ -0,0 +1,34 @@
|
||||||
|
From cf4290fb89163ec4eb55e682063972035f40c648 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andrew Lukoshko <alukoshko@almalinux.org>
|
||||||
|
Date: Thu, 8 Aug 2024 16:49:54 +0000
|
||||||
|
Subject: [PATCH 09/10] Bring back deprecated pci ids to mpt3sas driver
|
||||||
|
|
||||||
|
---
|
||||||
|
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/drivers/scsi/mpt3sas/mpt3sas_scsih.c b/drivers/scsi/mpt3sas/mpt3sas_scsih.c
|
||||||
|
index 21af6aff1..7f8add3e6 100644
|
||||||
|
--- a/drivers/scsi/mpt3sas/mpt3sas_scsih.c
|
||||||
|
+++ b/drivers/scsi/mpt3sas/mpt3sas_scsih.c
|
||||||
|
@@ -12575,7 +12575,7 @@ scsih_pci_mmio_enabled(struct pci_dev *pdev)
|
||||||
|
* The pci device ids are defined in mpi/mpi2_cnfg.h.
|
||||||
|
*/
|
||||||
|
static const struct pci_device_id mpt3sas_pci_table[] = {
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
/* Spitfire ~ 2004 */
|
||||||
|
{ MPI2_MFGPAGE_VENDORID_LSI, MPI2_MFGPAGE_DEVID_SAS2004,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
@@ -12619,7 +12619,7 @@ static const struct pci_device_id mpt3sas_pci_table[] = {
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
{ MPI2_MFGPAGE_VENDORID_LSI, MPI2_MFGPAGE_DEVID_SWITCH_MPI_EP_1,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
/* SSS6200 */
|
||||||
|
{ MPI2_MFGPAGE_VENDORID_LSI, MPI2_MFGPAGE_DEVID_SSS6200,
|
||||||
|
PCI_ANY_ID, PCI_ANY_ID },
|
||||||
|
--
|
||||||
|
2.43.5
|
||||||
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
From c462f778d114958a05afed7f5ba199417fbc7f1a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Andrew Lukoshko <alukoshko@almalinux.org>
|
||||||
|
Date: Thu, 8 Aug 2024 16:50:33 +0000
|
||||||
|
Subject: [PATCH 10/10] Bring back deprecated pci ids to aacraid driver
|
||||||
|
|
||||||
|
---
|
||||||
|
drivers/scsi/aacraid/linit.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/drivers/scsi/aacraid/linit.c b/drivers/scsi/aacraid/linit.c
|
||||||
|
index 90a6070a1..e6d12db09 100644
|
||||||
|
--- a/drivers/scsi/aacraid/linit.c
|
||||||
|
+++ b/drivers/scsi/aacraid/linit.c
|
||||||
|
@@ -77,7 +77,7 @@ char aac_driver_version[] = AAC_DRIVER_FULL_VERSION;
|
||||||
|
* Note: The last field is used to index into aac_drivers below.
|
||||||
|
*/
|
||||||
|
static const struct pci_device_id aac_pci_tbl[] = {
|
||||||
|
-#ifndef CONFIG_RHEL_DIFFERENCES
|
||||||
|
+#ifndef CONFIG_ALMALINUX_DIFFERENCES
|
||||||
|
{ 0x1028, 0x0001, 0x1028, 0x0001, 0, 0, 0 }, /* PERC 2/Si (Iguana/PERC2Si) */
|
||||||
|
{ 0x1028, 0x0002, 0x1028, 0x0002, 0, 0, 1 }, /* PERC 3/Di (Opal/PERC3Di) */
|
||||||
|
{ 0x1028, 0x0003, 0x1028, 0x0003, 0, 0, 2 }, /* PERC 3/Si (SlimFast/PERC3Si */
|
||||||
|
--
|
||||||
|
2.43.5
|
||||||
|
|
||||||
80
my-ostree-os/kernel/Makefile.rhelver
Normal file
80
my-ostree-os/kernel/Makefile.rhelver
Normal file
|
|
@ -0,0 +1,80 @@
|
||||||
|
RHEL_MAJOR = 10
|
||||||
|
RHEL_MINOR = 0
|
||||||
|
|
||||||
|
#
|
||||||
|
# RHEL_RELEASE
|
||||||
|
# -------------
|
||||||
|
#
|
||||||
|
# Represents build number in 'release' part of RPM's name-version-release.
|
||||||
|
# name is <package_name>, e.g. kernel
|
||||||
|
# version is upstream kernel version this kernel is based on, e.g. 4.18.0
|
||||||
|
# release is <RHEL_RELEASE>.<dist_tag>[<buildid>], e.g. 100.el8
|
||||||
|
#
|
||||||
|
# Use this spot to avoid future merge conflicts.
|
||||||
|
# Do not trim this comment.
|
||||||
|
RHEL_RELEASE = 55.40.1
|
||||||
|
|
||||||
|
#
|
||||||
|
# RHEL_REBASE_NUM
|
||||||
|
# ----------------
|
||||||
|
#
|
||||||
|
# Used in RPM version string for Gemini kernels, which dont use upstream
|
||||||
|
# VERSION/PATCHLEVEL/SUBLEVEL. The number represents rebase number for
|
||||||
|
# current MAJOR release.
|
||||||
|
#
|
||||||
|
# Use this spot to avoid future merge conflicts.
|
||||||
|
# Do not trim this comment.
|
||||||
|
RHEL_REBASE_NUM = 1
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# ZSTREAM
|
||||||
|
# -------
|
||||||
|
#
|
||||||
|
# This variable controls whether we use zstream numbering or not for the
|
||||||
|
# package release. The zstream release keeps the build number of the last
|
||||||
|
# build done for ystream for the Beta milestone, and increments a second
|
||||||
|
# number for each build. The third number is used for branched builds
|
||||||
|
# (eg.: for builds with security fixes or hot fixes done outside of the
|
||||||
|
# batch release process).
|
||||||
|
#
|
||||||
|
# For example, with ZSTREAM unset or set to "no", all builds will contain
|
||||||
|
# a release with only the build number, eg.: kernel-<kernel version>-X.el*,
|
||||||
|
# where X is the build number. With ZSTREAM set to "yes", we will have
|
||||||
|
# builds with kernel-<kernel version>-X.Y.Z.el*, where X is the last
|
||||||
|
# RHEL_RELEASE number before ZSTREAM flag was set to yes, Y will now be the
|
||||||
|
# build number and Z will always be 1 except if you're doing a branched build
|
||||||
|
# (when you give RHDISTGIT_BRANCH on the command line, in which case the Z
|
||||||
|
# number will be incremented instead of the Y).
|
||||||
|
#
|
||||||
|
ZSTREAM ?= yes
|
||||||
|
|
||||||
|
#
|
||||||
|
# Early y+1 numbering
|
||||||
|
# --------------------
|
||||||
|
#
|
||||||
|
# In early y+1 process, RHEL_RELEASE consists of 2 numbers: x.y
|
||||||
|
# First is RHEL_RELEASE inherited/merged from y as-is, second number
|
||||||
|
# is incremented with each build starting from 1. After merge from y,
|
||||||
|
# it resets back to 1. This way y+1 nvr reflects status of last merge.
|
||||||
|
#
|
||||||
|
# Example:
|
||||||
|
#
|
||||||
|
# rhel8.0 rhel-8.1
|
||||||
|
# kernel-4.18.0-58.el8 --> kernel-4.18.0-58.1.el8
|
||||||
|
# kernel-4.18.0-58.2.el8
|
||||||
|
# kernel-4.18.0-59.el8 kernel-4.18.0-59.1.el8
|
||||||
|
# kernel-4.18.0-60.el8
|
||||||
|
# kernel-4.18.0-61.el8 --> kernel-4.18.0-61.1.el8
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Use this spot to avoid future merge conflicts.
|
||||||
|
# Do not trim this comment.
|
||||||
|
EARLY_YSTREAM ?= no
|
||||||
|
EARLY_YBUILD:=
|
||||||
|
EARLY_YRELEASE:=
|
||||||
|
ifneq ("$(ZSTREAM)", "yes")
|
||||||
|
ifeq ("$(EARLY_YSTREAM)","yes")
|
||||||
|
RHEL_RELEASE:=$(RHEL_RELEASE).$(EARLY_YRELEASE)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
1249
my-ostree-os/kernel/Module.kabi_aarch64
Normal file
1249
my-ostree-os/kernel/Module.kabi_aarch64
Normal file
File diff suppressed because it is too large
Load diff
0
my-ostree-os/kernel/Module.kabi_dup_aarch64
Normal file
0
my-ostree-os/kernel/Module.kabi_dup_aarch64
Normal file
0
my-ostree-os/kernel/Module.kabi_dup_ppc64le
Normal file
0
my-ostree-os/kernel/Module.kabi_dup_ppc64le
Normal file
0
my-ostree-os/kernel/Module.kabi_dup_riscv64
Normal file
0
my-ostree-os/kernel/Module.kabi_dup_riscv64
Normal file
0
my-ostree-os/kernel/Module.kabi_dup_s390x
Normal file
0
my-ostree-os/kernel/Module.kabi_dup_s390x
Normal file
0
my-ostree-os/kernel/Module.kabi_dup_x86_64
Normal file
0
my-ostree-os/kernel/Module.kabi_dup_x86_64
Normal file
0
my-ostree-os/kernel/Module.kabi_dup_x86_64_v2
Normal file
0
my-ostree-os/kernel/Module.kabi_dup_x86_64_v2
Normal file
1241
my-ostree-os/kernel/Module.kabi_ppc64le
Normal file
1241
my-ostree-os/kernel/Module.kabi_ppc64le
Normal file
File diff suppressed because it is too large
Load diff
0
my-ostree-os/kernel/Module.kabi_riscv64
Normal file
0
my-ostree-os/kernel/Module.kabi_riscv64
Normal file
1179
my-ostree-os/kernel/Module.kabi_s390x
Normal file
1179
my-ostree-os/kernel/Module.kabi_s390x
Normal file
File diff suppressed because it is too large
Load diff
1329
my-ostree-os/kernel/Module.kabi_x86_64
Normal file
1329
my-ostree-os/kernel/Module.kabi_x86_64
Normal file
File diff suppressed because it is too large
Load diff
1329
my-ostree-os/kernel/Module.kabi_x86_64_v2
Normal file
1329
my-ostree-os/kernel/Module.kabi_x86_64_v2
Normal file
File diff suppressed because it is too large
Load diff
25
my-ostree-os/kernel/README.rst
Normal file
25
my-ostree-os/kernel/README.rst
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
===================
|
||||||
|
The Kernel dist-git
|
||||||
|
===================
|
||||||
|
|
||||||
|
The kernel is maintained in a `source tree`_ rather than directly in dist-git.
|
||||||
|
The specfile is maintained as a `template`_ in the source tree along with a set
|
||||||
|
of build scripts to generate configurations, (S)RPMs, and to populate the
|
||||||
|
dist-git repository.
|
||||||
|
|
||||||
|
The `documentation`_ for the source tree covers how to contribute and maintain
|
||||||
|
the tree.
|
||||||
|
|
||||||
|
If you're looking for the downstream patch set it's available in the source
|
||||||
|
tree with "git log master..ark-patches" or
|
||||||
|
`online`_.
|
||||||
|
|
||||||
|
Each release in dist-git is tagged in the source repository so you can easily
|
||||||
|
check out the source tree for a build. The tags are in the format
|
||||||
|
name-version-release, but note release doesn't contain the dist tag since the
|
||||||
|
source can be built in different build roots (Fedora, CentOS, etc.)
|
||||||
|
|
||||||
|
.. _source tree: https://gitlab.com/cki-project/kernel-ark.git
|
||||||
|
.. _template: https://gitlab.com/cki-project/kernel-ark/-/blob/os-build/redhat/kernel.spec.template
|
||||||
|
.. _documentation: https://gitlab.com/cki-project/kernel-ark/-/wikis/home
|
||||||
|
.. _online: https://gitlab.com/cki-project/kernel-ark/-/commits/ark-patches
|
||||||
BIN
my-ostree-os/kernel/almalinuxdup1.x509
Normal file
BIN
my-ostree-os/kernel/almalinuxdup1.x509
Normal file
Binary file not shown.
BIN
my-ostree-os/kernel/almalinuxima.x509
Normal file
BIN
my-ostree-os/kernel/almalinuxima.x509
Normal file
Binary file not shown.
BIN
my-ostree-os/kernel/almalinuximaca1.x509
Normal file
BIN
my-ostree-os/kernel/almalinuximaca1.x509
Normal file
Binary file not shown.
BIN
my-ostree-os/kernel/almalinuxkpatch1.x509
Normal file
BIN
my-ostree-os/kernel/almalinuxkpatch1.x509
Normal file
Binary file not shown.
BIN
my-ostree-os/kernel/almalinuxnvidia1.x509
Normal file
BIN
my-ostree-os/kernel/almalinuxnvidia1.x509
Normal file
Binary file not shown.
166
my-ostree-os/kernel/check-kabi
Executable file
166
my-ostree-os/kernel/check-kabi
Executable file
|
|
@ -0,0 +1,166 @@
|
||||||
|
#!/usr/bin/python3
|
||||||
|
#
|
||||||
|
# check-kabi - Red Hat kABI reference checking tool
|
||||||
|
#
|
||||||
|
# We use this script to check against reference Module.kabi files.
|
||||||
|
#
|
||||||
|
# Author: Jon Masters <jcm@redhat.com>
|
||||||
|
# Copyright (C) 2007-2009 Red Hat, Inc.
|
||||||
|
#
|
||||||
|
# This software may be freely redistributed under the terms of the GNU
|
||||||
|
# General Public License (GPL).
|
||||||
|
|
||||||
|
# Changelog:
|
||||||
|
#
|
||||||
|
# 2018/06/01 - Update for python3 by Petr Oros.
|
||||||
|
# 2009/08/15 - Updated for use in RHEL6.
|
||||||
|
# 2007/06/13 - Initial rewrite in python by Jon Masters.
|
||||||
|
|
||||||
|
__author__ = "Jon Masters <jcm@redhat.com>"
|
||||||
|
__version__ = "2.0"
|
||||||
|
__date__ = "2009/08/15"
|
||||||
|
__copyright__ = "Copyright (C) 2007-2009 Red Hat, Inc"
|
||||||
|
__license__ = "GPL"
|
||||||
|
|
||||||
|
import getopt
|
||||||
|
import string
|
||||||
|
import sys
|
||||||
|
|
||||||
|
true = 1
|
||||||
|
false = 0
|
||||||
|
|
||||||
|
|
||||||
|
def load_symvers(symvers, filename):
|
||||||
|
"""Load a Module.symvers file."""
|
||||||
|
|
||||||
|
symvers_file = open(filename, "r")
|
||||||
|
|
||||||
|
while true:
|
||||||
|
in_line = symvers_file.readline()
|
||||||
|
if in_line == "":
|
||||||
|
break
|
||||||
|
if in_line == "\n":
|
||||||
|
continue
|
||||||
|
checksum, symbol, directory, type, *ns = in_line.split()
|
||||||
|
ns = ns[0] if ns else None
|
||||||
|
|
||||||
|
symvers[symbol] = in_line[0:-1]
|
||||||
|
|
||||||
|
|
||||||
|
def load_kabi(kabi, filename):
|
||||||
|
"""Load a Module.kabi file."""
|
||||||
|
|
||||||
|
kabi_file = open(filename, "r")
|
||||||
|
|
||||||
|
while true:
|
||||||
|
in_line = kabi_file.readline()
|
||||||
|
if in_line == "":
|
||||||
|
break
|
||||||
|
if in_line == "\n":
|
||||||
|
continue
|
||||||
|
checksum, symbol, directory, type, *ns = in_line.split()
|
||||||
|
ns = ns[0] if ns else None
|
||||||
|
|
||||||
|
kabi[symbol] = in_line[0:-1]
|
||||||
|
|
||||||
|
|
||||||
|
def check_kabi(symvers, kabi):
|
||||||
|
"""Check Module.kabi and Module.symvers files."""
|
||||||
|
|
||||||
|
fail = 0
|
||||||
|
warn = 0
|
||||||
|
changed_symbols = []
|
||||||
|
moved_symbols = []
|
||||||
|
ns_symbols = []
|
||||||
|
|
||||||
|
for symbol in kabi:
|
||||||
|
abi_hash, abi_sym, abi_dir, abi_type, *abi_ns = kabi[symbol].split()
|
||||||
|
abi_ns = abi_ns[0] if abi_ns else None
|
||||||
|
if symbol in symvers:
|
||||||
|
sym_hash, sym_sym, sym_dir, sym_type, *sym_ns = symvers[symbol].split()
|
||||||
|
sym_ns = sym_ns[0] if sym_ns else None
|
||||||
|
if abi_hash != sym_hash:
|
||||||
|
fail = 1
|
||||||
|
changed_symbols.append(symbol)
|
||||||
|
|
||||||
|
if abi_dir != sym_dir:
|
||||||
|
warn = 1
|
||||||
|
moved_symbols.append(symbol)
|
||||||
|
|
||||||
|
if abi_ns != sym_ns:
|
||||||
|
warn = 1
|
||||||
|
ns_symbols.append(symbol)
|
||||||
|
else:
|
||||||
|
fail = 1
|
||||||
|
changed_symbols.append(symbol)
|
||||||
|
|
||||||
|
if fail:
|
||||||
|
print("*** ERROR - ABI BREAKAGE WAS DETECTED ***")
|
||||||
|
print("")
|
||||||
|
print("The following symbols have been changed (this will cause an ABI breakage):")
|
||||||
|
print("")
|
||||||
|
for symbol in changed_symbols:
|
||||||
|
print(symbol)
|
||||||
|
print("")
|
||||||
|
|
||||||
|
if warn:
|
||||||
|
print("*** WARNING - ABI SYMBOLS MOVED ***")
|
||||||
|
if moved_symbols:
|
||||||
|
print("")
|
||||||
|
print("The following symbols moved (typically caused by moving a symbol from being")
|
||||||
|
print("provided by the kernel vmlinux out to a loadable module):")
|
||||||
|
print("")
|
||||||
|
for symbol in moved_symbols:
|
||||||
|
print(symbol)
|
||||||
|
print("")
|
||||||
|
if ns_symbols:
|
||||||
|
print("")
|
||||||
|
print("The following symbols changed symbol namespaces:")
|
||||||
|
print("")
|
||||||
|
for symbol in ns_symbols:
|
||||||
|
print(symbol)
|
||||||
|
print("")
|
||||||
|
|
||||||
|
"""Halt the build, if we got errors and/or warnings. In either case,
|
||||||
|
double-checkig is required to avoid introducing / concealing
|
||||||
|
KABI inconsistencies."""
|
||||||
|
if fail or warn:
|
||||||
|
sys.exit(1)
|
||||||
|
sys.exit(0)
|
||||||
|
|
||||||
|
|
||||||
|
def usage():
|
||||||
|
print("""
|
||||||
|
check-kabi: check Module.kabi and Module.symvers files.
|
||||||
|
|
||||||
|
check-kabi [ -k Module.kabi ] [ -s Module.symvers ]
|
||||||
|
|
||||||
|
""")
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
|
||||||
|
symvers_file = ""
|
||||||
|
kabi_file = ""
|
||||||
|
|
||||||
|
opts, args = getopt.getopt(sys.argv[1:], 'hk:s:')
|
||||||
|
|
||||||
|
for o, v in opts:
|
||||||
|
if o == "-s":
|
||||||
|
symvers_file = v
|
||||||
|
if o == "-h":
|
||||||
|
usage()
|
||||||
|
sys.exit(0)
|
||||||
|
if o == "-k":
|
||||||
|
kabi_file = v
|
||||||
|
|
||||||
|
if (symvers_file == "") or (kabi_file == ""):
|
||||||
|
usage()
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
symvers = {}
|
||||||
|
kabi = {}
|
||||||
|
|
||||||
|
load_symvers(symvers, symvers_file)
|
||||||
|
load_kabi(kabi, kabi_file)
|
||||||
|
check_kabi(symvers, kabi)
|
||||||
524
my-ostree-os/kernel/def_variants.yaml.rhel
Normal file
524
my-ostree-os/kernel/def_variants.yaml.rhel
Normal file
|
|
@ -0,0 +1,524 @@
|
||||||
|
packages:
|
||||||
|
- name: modules-core
|
||||||
|
depends-on: []
|
||||||
|
- name: modules
|
||||||
|
depends-on:
|
||||||
|
- modules-core
|
||||||
|
- name: modules-internal
|
||||||
|
depends-on:
|
||||||
|
- modules-core
|
||||||
|
- modules
|
||||||
|
- name: modules-extra
|
||||||
|
depends-on:
|
||||||
|
- modules-core
|
||||||
|
- modules
|
||||||
|
- name: modules-rt-kvm
|
||||||
|
if_variant_in: ["rt"]
|
||||||
|
depends-on:
|
||||||
|
- modules-core
|
||||||
|
- name: modules-rt-64k-kvm
|
||||||
|
if_variant_in: ["rt-64k"]
|
||||||
|
depends-on:
|
||||||
|
- modules-core
|
||||||
|
- name: modules-partner
|
||||||
|
depends-on:
|
||||||
|
- modules-core
|
||||||
|
- modules
|
||||||
|
|
||||||
|
rules:
|
||||||
|
- arch/x86/kvm/kvm(-amd|-intel|\.).*: modules-rt-kvm
|
||||||
|
if_variant_in: ["rt"]
|
||||||
|
- arch/x86/kvm/kvm(-amd|-intel|\.).*: modules-rt-64k-kvm
|
||||||
|
if_variant_in: ["rt-64k"]
|
||||||
|
|
||||||
|
- arch/.*: modules-core
|
||||||
|
- block/t10-pi.ko: modules-core
|
||||||
|
- crypto/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/accel/.*: modules-core
|
||||||
|
- drivers/accessibility/.*: modules-core
|
||||||
|
- drivers/acpi/video.*: modules
|
||||||
|
- drivers/acpi/.*: modules-core
|
||||||
|
- drivers/ata/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/base/.*(kunit|test).*: modules-internal
|
||||||
|
- drivers/base/regmap/regmap-sdw.*: modules
|
||||||
|
- drivers/base/.*: modules-core
|
||||||
|
- drivers/block/floppy.*: modules-extra
|
||||||
|
- drivers/block/rnbd.*: modules
|
||||||
|
- drivers/block/.*: modules-core
|
||||||
|
- drivers/bus/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/cdrom/.*: modules-core
|
||||||
|
- drivers/cdx/.*: modules-core
|
||||||
|
- drivers/char/mwave.*: modules
|
||||||
|
- drivers/char/.*: modules-core
|
||||||
|
- drivers/clk/.*(test|kunit).*: modules-internal
|
||||||
|
- drivers/clk/.*: modules-core
|
||||||
|
- drivers/counter/.*: modules-core
|
||||||
|
- drivers/cpufreq/amd-pstate-ut.ko: modules-internal
|
||||||
|
- drivers/cpufreq/.*: modules-core
|
||||||
|
- drivers/crypto/caam/.*: modules
|
||||||
|
- drivers/crypto/cavium/.*: modules
|
||||||
|
- drivers/crypto/chelsio/.*: modules
|
||||||
|
- drivers/crypto/hisilicon/.*: modules
|
||||||
|
- drivers/crypto/marvell/.*: modules
|
||||||
|
- drivers/crypto/.*: modules-core
|
||||||
|
- drivers/cxl/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/dax/.*: modules-core
|
||||||
|
- drivers/dca/.*: modules-core
|
||||||
|
- drivers/devfreq/.*: modules-core
|
||||||
|
- drivers/dma/dmatest.*: modules-internal
|
||||||
|
- drivers/dma/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/edac/.*: modules-core
|
||||||
|
- drivers/extcon/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/firmware/iscsi_ibft.*: modules
|
||||||
|
- drivers/firmware/.*: modules-core
|
||||||
|
- drivers/fsi/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/gnss/.*: modules-core
|
||||||
|
- drivers/gpio/gpio-dln2.*: modules-extra
|
||||||
|
- drivers/gpio/gpio-ljca.*: modules
|
||||||
|
- drivers/gpio/.*: modules-core
|
||||||
|
- drivers/gpu/drm/i915/kvmgt.*: modules-rt-kvm
|
||||||
|
if_variant_in: ["rt"]
|
||||||
|
- drivers/gpu/drm/i915/kvmgt.*: modules-rt-64k-kvm
|
||||||
|
if_variant_in: ["rt-64k"]
|
||||||
|
- drivers/gpu/drm/display/drm_.*: modules-core
|
||||||
|
- drivers/gpu/drm/drm.*: modules-core
|
||||||
|
- drivers/gpu/drm/etnaviv/.*: modules-core
|
||||||
|
- drivers/gpu/drm/gud/.*: modules-core
|
||||||
|
- drivers/gpu/drm/hyperv/.*: modules-core
|
||||||
|
- drivers/gpu/drm/imagination/.*: modules-core
|
||||||
|
- drivers/gpu/drm/lima/.*: modules-core
|
||||||
|
- drivers/gpu/drm/mxsfb/.*: modules-core
|
||||||
|
- drivers/gpu/drm/panfrost/.*: modules-core
|
||||||
|
- drivers/gpu/drm/qxl/.*: modules-core
|
||||||
|
- drivers/gpu/drm/scheduler/.*: modules-core
|
||||||
|
- drivers/gpu/drm/solomon/.*: modules-core
|
||||||
|
- drivers/gpu/drm/tests/.*: modules-internal
|
||||||
|
- drivers/gpu/drm/tidss/.*: modules-core
|
||||||
|
- drivers/gpu/drm/tiny/.*: modules-core
|
||||||
|
- drivers/gpu/drm/ttm/.*: modules-core
|
||||||
|
- drivers/gpu/drm/udl/.*: modules-core
|
||||||
|
- drivers/gpu/drm/v3d/.*: modules-core
|
||||||
|
- drivers/gpu/drm/vgem/.*: modules-core
|
||||||
|
- drivers/gpu/drm/virtio/.*: modules-core
|
||||||
|
- drivers/gpu/drm/vkms/.*: modules-core
|
||||||
|
- drivers/gpu/drm/vmwgfx/.*: modules-core
|
||||||
|
- drivers/gpu/drm/xlnx/.*: modules-core
|
||||||
|
- drivers/gpu/host1x/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/hid/.*test.*: modules-internal
|
||||||
|
- drivers/hid/hid-asus.*: modules
|
||||||
|
- drivers/hid/hid-nintendo.*: modules
|
||||||
|
- drivers/hid/hid-picolcd.*: modules
|
||||||
|
- drivers/hid/hid-playstation.*: modules
|
||||||
|
- drivers/hid/surface-hid.*: modules
|
||||||
|
- drivers/hid/hid-prodikeys.*: modules
|
||||||
|
- drivers/hid/.*: modules-core
|
||||||
|
- drivers/hte/.*: modules-core
|
||||||
|
- drivers/hv/.*: modules-core
|
||||||
|
- drivers/hwmon/asus_wmi_sensors.*: modules
|
||||||
|
- drivers/hwmon/dell-smm-hwmon.*: modules
|
||||||
|
- drivers/hwmon/hp-wmi-sensors.*: modules
|
||||||
|
- drivers/hwmon/intel-m10-bmc-hwmon.*: modules
|
||||||
|
- drivers/hwmon/nct6775.*: modules
|
||||||
|
- drivers/hwmon/ntc_thermistor.*: modules
|
||||||
|
- drivers/hwmon/.*: modules-core
|
||||||
|
- drivers/hwspinlock/.*: modules-core
|
||||||
|
- drivers/hwtracing/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/i2c/busses/i2c-dln2.*: modules-extra
|
||||||
|
- drivers/i2c/busses/i2c-ljca.*: modules
|
||||||
|
- drivers/i2c/.*: modules-core
|
||||||
|
- drivers/i3c/.*: modules-core
|
||||||
|
- drivers/iio/adc/dln2-adc.*: modules-extra
|
||||||
|
- drivers/iio/test/.*: modules-internal
|
||||||
|
- drivers/input/gameport/.*: modules
|
||||||
|
- drivers/input/joystick/.*: modules-extra
|
||||||
|
- drivers/input/tablet/.*: modules
|
||||||
|
- drivers/input/tests/.*: modules-internal
|
||||||
|
- drivers/input/touchscreen/.*: modules
|
||||||
|
- drivers/input/.*: modules-core
|
||||||
|
- drivers/interconnect/.*: modules-core
|
||||||
|
- drivers/iommu/.*test.ko: modules-internal
|
||||||
|
- drivers/iommu/.*: modules-core
|
||||||
|
- drivers/irqchip/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/mailbox/.*: modules-core
|
||||||
|
- drivers/md/.*: modules-core
|
||||||
|
- drivers/memory/dfl-emif.*: modules
|
||||||
|
- drivers/memory/.*: modules-core
|
||||||
|
- drivers/message/fusion/mptctl.*: modules-extra
|
||||||
|
- drivers/message/fusion/mptfc.*: modules-extra
|
||||||
|
- drivers/message/fusion/.*: modules
|
||||||
|
- drivers/message/.*: modules-core
|
||||||
|
- drivers/mfd/dln2.*: modules-extra
|
||||||
|
- drivers/misc/.*: modules-core
|
||||||
|
- drivers/mux/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/net/amt.ko: modules-core
|
||||||
|
- drivers/net/bareudp.ko: modules-core
|
||||||
|
- drivers/net/bonding/.*: modules-core
|
||||||
|
- drivers/net/can/slcan/slcan.*: modules-extra
|
||||||
|
- drivers/net/can/usb/ems_usb.*: modules-extra
|
||||||
|
- drivers/net/can/vcan.*: modules-extra
|
||||||
|
- drivers/net/dummy.ko: modules-core
|
||||||
|
- drivers/net/eql.ko: modules-core
|
||||||
|
|
||||||
|
- drivers/net/ethernet/8390/.*: modules-core
|
||||||
|
- drivers/net/ethernet/adi/.*: modules-core
|
||||||
|
- drivers/net/ethernet/agere/.*: modules-core
|
||||||
|
- drivers/net/ethernet/altera/.*: modules-core
|
||||||
|
- drivers/net/ethernet/amazon/.*: modules-core
|
||||||
|
- drivers/net/ethernet/amd/.*: modules-core
|
||||||
|
- drivers/net/ethernet/apm/.*: modules-core
|
||||||
|
- drivers/net/ethernet/asix/.*: modules-core
|
||||||
|
- drivers/net/ethernet/brocade/.*: modules-core
|
||||||
|
- drivers/net/ethernet/cavium/.*: modules-core
|
||||||
|
- drivers/net/ethernet/dnet.ko: modules-core
|
||||||
|
- drivers/net/ethernet/engleder/.*: modules-core
|
||||||
|
- drivers/net/ethernet/ethoc.ko: modules-core
|
||||||
|
- drivers/net/ethernet/fealnx.ko: modules-core
|
||||||
|
- drivers/net/ethernet/freescale/.*: modules-core
|
||||||
|
- drivers/net/ethernet/fungible/.*: modules-core
|
||||||
|
- drivers/net/ethernet/google/.*: modules-core
|
||||||
|
- drivers/net/ethernet/hisilicon/.*: modules-core
|
||||||
|
- drivers/net/ethernet/huawei/.*: modules-core
|
||||||
|
- drivers/net/ethernet/ibm/.*: modules-core
|
||||||
|
- drivers/net/ethernet/intel/.*: modules-core
|
||||||
|
- drivers/net/ethernet/jme.ko: modules-core
|
||||||
|
- drivers/net/ethernet/litex/.*: modules-core
|
||||||
|
- drivers/net/ethernet/mellanox/.*: modules-core
|
||||||
|
- drivers/net/ethernet/microsoft/.*: modules-core
|
||||||
|
- drivers/net/ethernet/myricom/.*: modules-core
|
||||||
|
- drivers/net/ethernet/natsemi/.*: modules-core
|
||||||
|
- drivers/net/ethernet/netronome/.*: modules-core
|
||||||
|
- drivers/net/ethernet/pensando/.*: modules-core
|
||||||
|
- drivers/net/ethernet/rocker/rocker.*: modules-internal
|
||||||
|
- drivers/net/ethernet/qualcomm/.*: modules-core
|
||||||
|
- drivers/net/ethernet/realtek/.*: modules-core
|
||||||
|
- drivers/net/ethernet/renesas/.*: modules-core
|
||||||
|
- drivers/net/ethernet/socionext/.*: modules-core
|
||||||
|
- drivers/net/ethernet/vertexcom/.*: modules-core
|
||||||
|
- drivers/net/ethernet/wangxun/.*: modules-core
|
||||||
|
- drivers/net/ethernet/xilinx/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/net/fjes/.*: modules-core
|
||||||
|
- drivers/net/geneve.ko: modules-core
|
||||||
|
- drivers/net/gtp.ko: modules-core
|
||||||
|
- drivers/net/hamradio/.*: modules-extra
|
||||||
|
- drivers/net/hyperv/.*: modules-core
|
||||||
|
- drivers/net/ifb.ko: modules-core
|
||||||
|
- drivers/net/ipa/.*: modules-core
|
||||||
|
- drivers/net/ipvlan/.*: modules-core
|
||||||
|
- drivers/net/macsec.ko: modules-core
|
||||||
|
- drivers/net/macvlan.ko: modules-core
|
||||||
|
- drivers/net/macvtap.ko: modules-core
|
||||||
|
- drivers/net/mctp/.*: modules-core
|
||||||
|
- drivers/net/mdio.*: modules-core
|
||||||
|
- drivers/net/mhi_net.ko: modules-core
|
||||||
|
- drivers/net/mii.ko: modules-core
|
||||||
|
- drivers/net/net_failover.ko: modules-core
|
||||||
|
- drivers/net/netdevsim/netdevsim.*: modules-internal
|
||||||
|
- drivers/net/netconsole.ko: modules-core
|
||||||
|
- drivers/net/nlmon.ko: modules-core
|
||||||
|
- drivers/net/pcs/.*: modules-core
|
||||||
|
- drivers/net/phy/.*: modules-core
|
||||||
|
- drivers/net/rionet.ko: modules-core
|
||||||
|
- drivers/net/slip/slip.*: modules-extra
|
||||||
|
- drivers/net/sungem_phy.ko: modules-core
|
||||||
|
- drivers/net/tap.ko: modules-core
|
||||||
|
- drivers/net/team/.*: modules-core
|
||||||
|
- drivers/net/thunderbolt/.*: modules-core
|
||||||
|
- drivers/net/tun.ko: modules-core
|
||||||
|
- drivers/net/veth.ko: modules-core
|
||||||
|
- drivers/net/virtio_net.ko: modules-core
|
||||||
|
- drivers/net/vmxnet3/.*: modules-core
|
||||||
|
- drivers/net/vrf.ko: modules-core
|
||||||
|
- drivers/net/vsockmon.ko: modules-core
|
||||||
|
- drivers/net/vxlan/.*: modules-core
|
||||||
|
- drivers/net/wan/hdlc.*: modules-core
|
||||||
|
- drivers/net/wireguard/.*: modules-core
|
||||||
|
- drivers/net/wireless/virtual/mac80211_hwsim.*: modules-internal
|
||||||
|
- drivers/net/wwan/wwan_hwsim.*: modules-internal
|
||||||
|
- drivers/net/wwan/.*: modules-core
|
||||||
|
- drivers/net/xen.*: modules-core
|
||||||
|
|
||||||
|
- drivers/nvdimm/.*: modules-core
|
||||||
|
- drivers/nvme/host/nvme-rdma.*: modules
|
||||||
|
- drivers/nvme/target/nvmet-rdma.*: modules
|
||||||
|
- drivers/nvme/.*: modules-core
|
||||||
|
- drivers/nvmem/nvmem_u-boot-env.*: modules
|
||||||
|
- drivers/nvmem/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/parport/parport_serial.*: modules
|
||||||
|
- drivers/parport/.*: modules-core
|
||||||
|
- drivers/pci/pcie/aer_inject.*: modules-extra
|
||||||
|
- drivers/pci/.*: modules-core
|
||||||
|
- drivers/perf/.*: modules-core
|
||||||
|
- drivers/phy/.*: modules-core
|
||||||
|
- drivers/pinctrl/.*: modules-core
|
||||||
|
- drivers/platform/chrome/.*test.*: modules-internal
|
||||||
|
- drivers/platform/x86/intel/intel_vsec.*: modules-core
|
||||||
|
- drivers/pmdomain/.*: modules-core
|
||||||
|
- drivers/powercap/intel_rapl_tpmi.*: modules
|
||||||
|
- drivers/powercap/.*: modules-core
|
||||||
|
- drivers/pps/.*: modules-core
|
||||||
|
- drivers/ptp/ptp_kvm.*: modules-rt-kvm
|
||||||
|
if_variant_in: ["rt"]
|
||||||
|
- drivers/ptp/ptp_kvm.*: modules-rt-64k-kvm
|
||||||
|
if_variant_in: ["rt-64k"]
|
||||||
|
- drivers/ptp/ptp_mock.*: modules-internal
|
||||||
|
- drivers/ptp/ptp_dfl_tod.*: modules
|
||||||
|
- drivers/ptp/.*: modules-core
|
||||||
|
- drivers/pwm/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/rapidio/.*: modules-core
|
||||||
|
- drivers/regulator/arizona-micsupp.*: modules
|
||||||
|
- drivers/regulator/.*: modules-core
|
||||||
|
- drivers/remoteproc/.*: modules-core
|
||||||
|
- drivers/reset/.*: modules-core
|
||||||
|
- drivers/rpmsg/.*: modules-core
|
||||||
|
- drivers/rtc/.*test.*: modules-internal
|
||||||
|
- drivers/rtc/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/s390/net/ism.*: modules
|
||||||
|
- drivers/s390/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/scsi/3w.*: modules-core
|
||||||
|
- drivers/scsi/BusLogic.ko: modules-core
|
||||||
|
- drivers/scsi/a100u2w.ko: modules-core
|
||||||
|
- drivers/scsi/advansys.ko: modules-core
|
||||||
|
- drivers/scsi/am53c974.ko: modules-core
|
||||||
|
- drivers/scsi/arcmsr.*: modules-core
|
||||||
|
- drivers/scsi/atp870u.ko: modules-core
|
||||||
|
- drivers/scsi/ch.ko: modules-core
|
||||||
|
- drivers/scsi/cxlflash/.*: modules-core
|
||||||
|
- drivers/scsi/dc395x.ko: modules-core
|
||||||
|
- drivers/scsi/device_handler/.*: modules-core
|
||||||
|
- drivers/scsi/dmx3191d.ko: modules-core
|
||||||
|
- drivers/scsi/elx/.*: modules-core
|
||||||
|
- drivers/scsi/esp_scsi.ko: modules-core
|
||||||
|
- drivers/scsi/fdomain.*: modules-core
|
||||||
|
- drivers/scsi/hpsa.ko: modules-core
|
||||||
|
- drivers/scsi/hptiop.ko: modules-core
|
||||||
|
- drivers/scsi/hv_storvsc.ko: modules-core
|
||||||
|
- drivers/scsi/ibmvscsi.*: modules-core
|
||||||
|
- drivers/scsi/initio.ko: modules-core
|
||||||
|
- drivers/scsi/ipr.ko: modules-core
|
||||||
|
- drivers/scsi/ips.ko: modules-core
|
||||||
|
- drivers/scsi/iscsi_tcp.ko: modules-core
|
||||||
|
- drivers/scsi/libfc/.*: modules-core
|
||||||
|
- drivers/scsi/libiscsi.*: modules-core
|
||||||
|
- drivers/scsi/mpi3mr/.*: modules-core
|
||||||
|
- drivers/scsi/mvumi.ko: modules-core
|
||||||
|
- drivers/scsi/myrb.ko: modules-core
|
||||||
|
- drivers/scsi/myrs.ko: modules-core
|
||||||
|
- drivers/scsi/raid_class.ko: modules-core
|
||||||
|
- drivers/scsi/scsi_debug.ko: modules-core
|
||||||
|
- drivers/scsi/scsi_transport_.*: modules-core
|
||||||
|
- drivers/scsi/sd_mod.ko: modules-core
|
||||||
|
- drivers/scsi/ses.ko: modules-core
|
||||||
|
- drivers/scsi/sg.ko: modules-core
|
||||||
|
- drivers/scsi/smartpqi/.*: modules-core
|
||||||
|
- drivers/scsi/snic/.*: modules-core
|
||||||
|
- drivers/scsi/sr_mod.ko: modules-core
|
||||||
|
- drivers/scsi/st.ko: modules-core
|
||||||
|
- drivers/scsi/stex.ko: modules-core
|
||||||
|
- drivers/scsi/virtio_scsi.ko: modules-core
|
||||||
|
- drivers/scsi/vmw_pvscsi.ko: modules-core
|
||||||
|
- drivers/scsi/wd719x.ko: modules-core
|
||||||
|
- drivers/scsi/xen-scsifront.ko: modules-core
|
||||||
|
|
||||||
|
- drivers/slimbus/.*: modules-core
|
||||||
|
- drivers/soc/.*: modules-core
|
||||||
|
- drivers/spi/spi-altera-dfl.*: modules
|
||||||
|
- drivers/spi/spi-dln2.*: modules-extra
|
||||||
|
- drivers/spi/spi-ljca.*: modules
|
||||||
|
- drivers/spi/.*: modules-core
|
||||||
|
- drivers/spmi/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/target/iscsi/cxgbit/cxgbit.*: modules
|
||||||
|
- drivers/target/sbp/sbp_target.*: modules
|
||||||
|
- drivers/target/target_core_user.*: modules
|
||||||
|
- drivers/target/.*: modules-core
|
||||||
|
- drivers/tee/.*: modules-core
|
||||||
|
- drivers/thermal/intel/int340x_thermal/int3406_thermal.*: modules
|
||||||
|
- drivers/thermal/.*: modules-core
|
||||||
|
- drivers/thunderbolt/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/ufs/.*: modules-core
|
||||||
|
- drivers/usb/atm/.*: modules
|
||||||
|
- drivers/usb/gadget/function/usb_f_midi2.*: modules
|
||||||
|
- drivers/usb/image/.*: modules
|
||||||
|
- drivers/usb/misc/trancevibrator.*: modules-extra
|
||||||
|
- drivers/usb/misc/.*: modules
|
||||||
|
- drivers/usb/serial/.*: modules
|
||||||
|
- drivers/usb/typec/mux/nb7vpq904m.*: modules
|
||||||
|
- drivers/usb/usbip/.*: modules-internal
|
||||||
|
- drivers/usb/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/vdpa/mlx5/mlx5_vdpa.*: modules
|
||||||
|
- drivers/vdpa/pds/pds_vdpa.*: modules
|
||||||
|
- drivers/vdpa/.*: modules-core
|
||||||
|
- drivers/vfio/pci/mlx5/mlx5-vfio-pci.*: modules
|
||||||
|
- drivers/vfio/pci/pds/pds-vfio-pc.*: modules
|
||||||
|
- drivers/vfio/.*: modules-core
|
||||||
|
- drivers/vhost/.*: modules-core
|
||||||
|
- drivers/video/backlight/apple_bl.*: modules
|
||||||
|
- drivers/video/.*: modules-core
|
||||||
|
- drivers/virt/.*: modules-core
|
||||||
|
- drivers/virtio/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/watchdog/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/xen/.*: modules-core
|
||||||
|
|
||||||
|
- drivers/w1/masters/ds2482.*: modules-extra
|
||||||
|
- drivers/w1/masters/ds2490.*: modules-extra
|
||||||
|
- drivers/w1/slaves/w1_ds2408.*: modules-extra
|
||||||
|
- drivers/w1/slaves/w1_ds2423.*: modules-extra
|
||||||
|
- drivers/w1/slaves/w1_ds2431.*: modules-extra
|
||||||
|
- drivers/w1/slaves/w1_ds2433.*: modules-extra
|
||||||
|
- drivers/w1/slaves/w1_ds2780.*: modules-extra
|
||||||
|
- drivers/w1/slaves/w1_ds2781.*: modules-extra
|
||||||
|
- drivers/w1/slaves/w1_ds28e04.*: modules-extra
|
||||||
|
- drivers/w1/slaves/w1_smem.*: modules-extra
|
||||||
|
- drivers/w1/slaves/w1_therm.*: modules-extra
|
||||||
|
|
||||||
|
- fs/.*test.*: modules-internal
|
||||||
|
- fs/9p/.*: modules-core
|
||||||
|
- fs/afs/.*: modules-partner
|
||||||
|
- fs/affs/affs.*: modules-extra
|
||||||
|
- fs/bcachefs/.*: modules-core
|
||||||
|
- fs/befs/befs.*: modules-extra
|
||||||
|
- fs/binfmt_misc.ko: modules-core
|
||||||
|
- fs/cachefiles/.*: modules-core
|
||||||
|
- fs/ceph/.*: modules-core
|
||||||
|
- fs/coda/coda.*: modules-extra
|
||||||
|
- fs/dlm/.*: modules-core
|
||||||
|
- fs/erofs/.*: modules-core
|
||||||
|
- fs/exfat/.*: modules-core
|
||||||
|
- fs/ext4/.*: modules-core
|
||||||
|
- fs/f2fs/.*: modules-core
|
||||||
|
- fs/fat/.*: modules-core
|
||||||
|
- fs/fuse/cuse.*: modules-extra
|
||||||
|
- fs/fuse/.*: modules-core
|
||||||
|
- fs/gfs2/.*: modules-core
|
||||||
|
- fs/isofs/.*: modules-core
|
||||||
|
- fs/jbd2/.*: modules-core
|
||||||
|
- fs/lockd/.*: modules-core
|
||||||
|
- fs/mbcache.ko: modules-core
|
||||||
|
- fs/netfs/.*: modules-core
|
||||||
|
- fs/nfs.*: modules-core
|
||||||
|
- fs/nilfs2/nilfs2.*: modules-extra
|
||||||
|
- fs/nls/.*: modules-core
|
||||||
|
- fs/ntfs3/.*: modules-core
|
||||||
|
- fs/ocfs2/.*: modules-extra
|
||||||
|
- fs/orangefs/.*: modules-core
|
||||||
|
- fs/overlayfs/.*: modules-core
|
||||||
|
- fs/pstore/.*: modules-core
|
||||||
|
- fs/sysv/.*: modules-extra
|
||||||
|
- fs/ubifs/.*: modules-extra
|
||||||
|
- fs/udf/.*: modules-core
|
||||||
|
- fs/ufs/.*: modules-extra
|
||||||
|
- fs/vboxsf/.*: modules-core
|
||||||
|
- fs/xfs/.*: modules-core
|
||||||
|
- fs/zonefs/.*: modules-core
|
||||||
|
|
||||||
|
- kernel/.*test.*: modules-internal
|
||||||
|
- kernel/locking/locktorture.*: modules-internal
|
||||||
|
- kernel/rcu/rcuscale.*: modules-internal
|
||||||
|
- kernel/rcu/rcutorture.*: modules-internal
|
||||||
|
- kernel/rcu/refscale.*: modules-internal
|
||||||
|
- kernel/resource_kunit.*: modules-internal
|
||||||
|
- kernel/scftorture.*: modules-internal
|
||||||
|
- kernel/torture.*: modules-internal
|
||||||
|
- kernel/.*: modules-core
|
||||||
|
|
||||||
|
- lib/test_lockup.*: modules-extra
|
||||||
|
- lib/.*(test|kunit).*: modules-internal
|
||||||
|
exact_pkg: True
|
||||||
|
- lib/.*: modules-core
|
||||||
|
|
||||||
|
- mm/kasan/kasan_test: modules-internal
|
||||||
|
- mm/kfence/.*test.*: modules-internal
|
||||||
|
- mm/zsmalloc.ko: modules-core
|
||||||
|
|
||||||
|
- net/.*test.*: modules-internal
|
||||||
|
- net/802/.*: modules-core
|
||||||
|
- net/8021q/.*: modules-core
|
||||||
|
- net/9p/9pnet_rdma.ko: modules
|
||||||
|
- net/9p/.*: modules-core
|
||||||
|
- net/appletalk/appletalk.*: modules-extra
|
||||||
|
- net/atm/br2684.*: modules-extra
|
||||||
|
- net/atm/clip.*: modules-extra
|
||||||
|
- net/atm/lec.*: modules-extra
|
||||||
|
- net/atm/pppoatm.*: modules-extra
|
||||||
|
- net/ax25/ax25.*: modules-extra
|
||||||
|
- net/batman-adv/batman-adv.*: modules-extra
|
||||||
|
- net/bridge/br_netfilter.*: modules-extra
|
||||||
|
- net/bridge/netfilter/ebt.*: modules-extra
|
||||||
|
- net/bridge/.*: modules-core
|
||||||
|
- net/ceph/.*: modules-core
|
||||||
|
- net/core/pktgen.*: modules-internal
|
||||||
|
- net/core/.*: modules-core
|
||||||
|
- net/dns_resolver/.*: modules-core
|
||||||
|
- net/hsr/.*: modules-core
|
||||||
|
- net/ife/.*: modules-core
|
||||||
|
- net/ipv4/netfilter/arp.*: modules-extra
|
||||||
|
- net/ipv4/netfilter/ip[_t].*: modules-extra
|
||||||
|
- net/ipv4/tcp_bic.*: modules-extra
|
||||||
|
- net/ipv4/tcp_highspeed.*: modules-extra
|
||||||
|
- net/ipv4/tcp_htcp.*: modules-extra
|
||||||
|
- net/ipv4/tcp_hybla.*: modules-extra
|
||||||
|
- net/ipv4/tcp_illinois.*: modules-extra
|
||||||
|
- net/ipv4/tcp_lp.*: modules-extra
|
||||||
|
- net/ipv4/tcp_scalable.*: modules-extra
|
||||||
|
- net/ipv4/tcp_vegas.*: modules-extra
|
||||||
|
- net/ipv4/tcp_veno.*: modules-extra
|
||||||
|
- net/ipv4/tcp_westwood.*: modules-extra
|
||||||
|
- net/ipv4/tcp_yeah.*: modules-extra
|
||||||
|
- net/ipv4/.*: modules-core
|
||||||
|
- net/ipv6/netfilter/ebt.*: modules-extra
|
||||||
|
- net/ipv6/netfilter/ip6[_t].*: modules-extra
|
||||||
|
- net/ipv6/.*: modules-core
|
||||||
|
- net/iucv/.*: modules-core
|
||||||
|
- net/kcm/.*: modules-core
|
||||||
|
- net/key/.*: modules-core
|
||||||
|
- net/l2tp/.*: modules-extra
|
||||||
|
- net/llc/.*: modules-core
|
||||||
|
- net/netfilter/ipset/.*: modules-extra
|
||||||
|
- net/netfilter/nft_compat.*: modules-extra
|
||||||
|
- net/netfilter/xt_.*: modules-extra
|
||||||
|
- net/netfilter/.*: modules-core
|
||||||
|
- net/netrom/netrom.*: modules-extra
|
||||||
|
- net/nsh/.*: modules-core
|
||||||
|
- net/openvswitch/.*: modules-core
|
||||||
|
- net/psample/.*: modules-core
|
||||||
|
- net/qrtr/.*: modules-core
|
||||||
|
- net/rds/rds.*: modules-extra
|
||||||
|
- net/rose/rose.*: modules-extra
|
||||||
|
- net/rxrpc/.*: modules-partner
|
||||||
|
- net/sched/.*: modules-core
|
||||||
|
- net/sctp/.*: modules-extra
|
||||||
|
- net/sunrpc/xprtrdma/rpcrdma.*: modules
|
||||||
|
- net/sunrpc/.*: modules-core
|
||||||
|
- net/tipc/.*: modules-extra
|
||||||
|
- net/tls/.*: modules-core
|
||||||
|
- net/vmw_vsock/.*: modules-core
|
||||||
|
- net/xdp/.*: modules-core
|
||||||
|
- net/xfrm/.*: modules-core
|
||||||
|
|
||||||
|
- samples/.*: modules-internal
|
||||||
|
- sound/pci/.*test.*: modules-internal
|
||||||
|
- sound/soc/.*test.*: modules-internal
|
||||||
|
|
||||||
|
- virt/.*: modules-core
|
||||||
|
|
||||||
|
- default: modules
|
||||||
53
my-ostree-os/kernel/dracut-virt.conf
Normal file
53
my-ostree-os/kernel/dracut-virt.conf
Normal file
|
|
@ -0,0 +1,53 @@
|
||||||
|
# generic + compressed please
|
||||||
|
hostonly="no"
|
||||||
|
compress="xz"
|
||||||
|
|
||||||
|
# VMs can't update microcode anyway
|
||||||
|
early_microcode="no"
|
||||||
|
|
||||||
|
# modules: basics
|
||||||
|
dracutmodules+=" dracut-systemd i18n shutdown "
|
||||||
|
|
||||||
|
# modules: storage support
|
||||||
|
dracutmodules+=" dm lvm rootfs-block fs-lib "
|
||||||
|
|
||||||
|
# modules: tpm and crypto
|
||||||
|
dracutmodules+=" crypt crypt-loop tpm2-tss systemd-pcrphase "
|
||||||
|
|
||||||
|
# dracut >= 102 separated systemd-cryptsetup into its own module
|
||||||
|
CSMODULE=`dracut --list-modules --no-kernel | grep '^systemd-cryptsetup$'`
|
||||||
|
dracutmodules+=" $CSMODULE "
|
||||||
|
|
||||||
|
# modules: support root on virtiofs
|
||||||
|
dracutmodules+=" virtiofs "
|
||||||
|
|
||||||
|
# modules: use sysext images (see 'man systemd-sysext')
|
||||||
|
dracutmodules+=" systemd-sysext "
|
||||||
|
|
||||||
|
# modules: root disk integrity protection
|
||||||
|
dracutmodules+=" systemd-veritysetup "
|
||||||
|
|
||||||
|
# modules: FIPS
|
||||||
|
dracutmodules+=" fips "
|
||||||
|
# FIPS mode requires early crypto drivers test
|
||||||
|
drivers+=" =crypto "
|
||||||
|
|
||||||
|
# drivers: virtual buses, pci
|
||||||
|
drivers+=" virtio-pci virtio-mmio " # qemu-kvm
|
||||||
|
drivers+=" hv-vmbus pci-hyperv " # hyperv
|
||||||
|
drivers+=" xen-pcifront " # xen
|
||||||
|
|
||||||
|
# drivers: storage
|
||||||
|
drivers+=" ahci nvme sd_mod sr_mod " # generic
|
||||||
|
drivers+=" virtio-blk virtio-scsi " # qemu-kvm
|
||||||
|
drivers+=" hv-storvsc " # hyperv
|
||||||
|
drivers+=" xen-blkfront " # xen
|
||||||
|
|
||||||
|
# root encryption
|
||||||
|
drivers+=" dm_crypt "
|
||||||
|
|
||||||
|
# root disk integrity protection
|
||||||
|
drivers+=" dm_verity overlay "
|
||||||
|
|
||||||
|
# filesystems
|
||||||
|
filesystems+=" vfat ext4 xfs overlay "
|
||||||
1096
my-ostree-os/kernel/filtermods.py
Executable file
1096
my-ostree-os/kernel/filtermods.py
Executable file
File diff suppressed because it is too large
Load diff
1
my-ostree-os/kernel/flavors
Normal file
1
my-ostree-os/kernel/flavors
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
rhel
|
||||||
26
my-ostree-os/kernel/gating.yaml
Normal file
26
my-ostree-os/kernel/gating.yaml
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
--- !Policy
|
||||||
|
product_versions:
|
||||||
|
- rhel-10
|
||||||
|
decision_context: osci_compose_gate
|
||||||
|
rules:
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-64k-aarch64.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-64k-debug-aarch64.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-aarch64.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-debug-aarch64.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-debug-ppc64le.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-debug-s390x.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-debug-x86_64.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-ppc64le.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-rt-64k-aarch64.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-rt-64k-debug-aarch64.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-rt-aarch64.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-rt-debug-aarch64.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-rt-debug-x86_64.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-rt-x86_64.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-s390x.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: kernel-qe.kernel-ci.kernel-x86_64.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: s1-aws-ci_x86_64.brew-build.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: s1-aws-ci_aarch64.brew-build.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: s1-azure-ci_x86_64.brew-build.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: s1-azure-ci_aarch64.brew-build.tier1.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: s1-gcp-ci.brew-build.tier1.functional}
|
||||||
38
my-ostree-os/kernel/generate_all_configs.sh
Executable file
38
my-ostree-os/kernel/generate_all_configs.sh
Executable file
|
|
@ -0,0 +1,38 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Adjusts the configuration options to build the variants correctly
|
||||||
|
|
||||||
|
test -n "$RHTEST" && exit 0
|
||||||
|
|
||||||
|
DEBUGBUILDSENABLED=$1
|
||||||
|
if [ -z "$DEBUGBUILDSENABLED" ]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$FLAVOR" ]; then
|
||||||
|
FLAVOR=rhel
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$FLAVOR" = "fedora" ]; then
|
||||||
|
SECONDARY=rhel
|
||||||
|
else
|
||||||
|
SECONDARY=fedora
|
||||||
|
fi
|
||||||
|
|
||||||
|
# The +1 is to remove the - at the end of the SPECPACKAGE_NAME string
|
||||||
|
specpackage_name_len=$((${#SPECPACKAGE_NAME} + 1))
|
||||||
|
for i in "${SPECPACKAGE_NAME}"*-"$FLAVOR".config; do
|
||||||
|
# shellcheck disable=SC3057
|
||||||
|
NEW=${SPECPACKAGE_NAME}-"$SPECRPMVERSION"-$(echo "${i:$specpackage_name_len}" | sed s/-"$FLAVOR"//)
|
||||||
|
mv "$i" "$NEW"
|
||||||
|
done
|
||||||
|
|
||||||
|
rm -f kernel-*-"$SECONDARY".config
|
||||||
|
|
||||||
|
if [ "$DEBUGBUILDSENABLED" -eq 0 ]; then
|
||||||
|
for i in "${SPECPACKAGE_NAME}"-*debug*.config; do
|
||||||
|
base=$(echo "$i" | sed -r s/-?debug//g)
|
||||||
|
NEW=${SPECPACKAGE_NAME}-$(echo "$base" | cut -d - -f2-)
|
||||||
|
mv "$i" "$NEW"
|
||||||
|
done
|
||||||
|
fi
|
||||||
8330
my-ostree-os/kernel/kernel-aarch64-64k-debug-rhel.config
Normal file
8330
my-ostree-os/kernel/kernel-aarch64-64k-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8305
my-ostree-os/kernel/kernel-aarch64-64k-rhel.config
Normal file
8305
my-ostree-os/kernel/kernel-aarch64-64k-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
9125
my-ostree-os/kernel/kernel-aarch64-automotive-debug-rhel.config
Normal file
9125
my-ostree-os/kernel/kernel-aarch64-automotive-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
9100
my-ostree-os/kernel/kernel-aarch64-automotive-rhel.config
Normal file
9100
my-ostree-os/kernel/kernel-aarch64-automotive-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8326
my-ostree-os/kernel/kernel-aarch64-debug-rhel.config
Normal file
8326
my-ostree-os/kernel/kernel-aarch64-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8301
my-ostree-os/kernel/kernel-aarch64-rhel.config
Normal file
8301
my-ostree-os/kernel/kernel-aarch64-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8385
my-ostree-os/kernel/kernel-aarch64-rt-64k-debug-rhel.config
Normal file
8385
my-ostree-os/kernel/kernel-aarch64-rt-64k-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8360
my-ostree-os/kernel/kernel-aarch64-rt-64k-rhel.config
Normal file
8360
my-ostree-os/kernel/kernel-aarch64-rt-64k-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8381
my-ostree-os/kernel/kernel-aarch64-rt-debug-rhel.config
Normal file
8381
my-ostree-os/kernel/kernel-aarch64-rt-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8356
my-ostree-os/kernel/kernel-aarch64-rt-rhel.config
Normal file
8356
my-ostree-os/kernel/kernel-aarch64-rt-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
2
my-ostree-os/kernel/kernel-local
Normal file
2
my-ostree-os/kernel/kernel-local
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
# This file is intentionally left empty in the stock kernel. Its a nicety
|
||||||
|
# added for those wanting to do custom rebuilds with altered config opts.
|
||||||
7768
my-ostree-os/kernel/kernel-ppc64le-debug-rhel.config
Normal file
7768
my-ostree-os/kernel/kernel-ppc64le-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
7745
my-ostree-os/kernel/kernel-ppc64le-rhel.config
Normal file
7745
my-ostree-os/kernel/kernel-ppc64le-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
7751
my-ostree-os/kernel/kernel-s390x-debug-rhel.config
Normal file
7751
my-ostree-os/kernel/kernel-s390x-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
7728
my-ostree-os/kernel/kernel-s390x-rhel.config
Normal file
7728
my-ostree-os/kernel/kernel-s390x-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
7750
my-ostree-os/kernel/kernel-s390x-zfcpdump-rhel.config
Normal file
7750
my-ostree-os/kernel/kernel-s390x-zfcpdump-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8517
my-ostree-os/kernel/kernel-x86_64-automotive-debug-rhel.config
Normal file
8517
my-ostree-os/kernel/kernel-x86_64-automotive-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8493
my-ostree-os/kernel/kernel-x86_64-automotive-rhel.config
Normal file
8493
my-ostree-os/kernel/kernel-x86_64-automotive-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8239
my-ostree-os/kernel/kernel-x86_64-debug-rhel.config
Normal file
8239
my-ostree-os/kernel/kernel-x86_64-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8215
my-ostree-os/kernel/kernel-x86_64-rhel.config
Normal file
8215
my-ostree-os/kernel/kernel-x86_64-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8295
my-ostree-os/kernel/kernel-x86_64-rt-debug-rhel.config
Normal file
8295
my-ostree-os/kernel/kernel-x86_64-rt-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8271
my-ostree-os/kernel/kernel-x86_64-rt-rhel.config
Normal file
8271
my-ostree-os/kernel/kernel-x86_64-rt-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8239
my-ostree-os/kernel/kernel-x86_64_v2-debug-rhel.config
Normal file
8239
my-ostree-os/kernel/kernel-x86_64_v2-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8215
my-ostree-os/kernel/kernel-x86_64_v2-rhel.config
Normal file
8215
my-ostree-os/kernel/kernel-x86_64_v2-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8295
my-ostree-os/kernel/kernel-x86_64_v2-rt-debug-rhel.config
Normal file
8295
my-ostree-os/kernel/kernel-x86_64_v2-rt-debug-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
8271
my-ostree-os/kernel/kernel-x86_64_v2-rt-rhel.config
Normal file
8271
my-ostree-os/kernel/kernel-x86_64_v2-rt-rhel.config
Normal file
File diff suppressed because it is too large
Load diff
6151
my-ostree-os/kernel/kernel.changelog
Normal file
6151
my-ostree-os/kernel/kernel.changelog
Normal file
File diff suppressed because it is too large
Load diff
10483
my-ostree-os/kernel/kernel.spec
Normal file
10483
my-ostree-os/kernel/kernel.spec
Normal file
File diff suppressed because it is too large
Load diff
11
my-ostree-os/kernel/kvm_stat.logrotate
Normal file
11
my-ostree-os/kernel/kvm_stat.logrotate
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
/var/log/kvm_stat.csv {
|
||||||
|
size 10M
|
||||||
|
missingok
|
||||||
|
compress
|
||||||
|
maxage 30
|
||||||
|
rotate 5
|
||||||
|
nodateext
|
||||||
|
postrotate
|
||||||
|
/usr/bin/systemctl try-restart kvm_stat.service
|
||||||
|
endscript
|
||||||
|
}
|
||||||
0
my-ostree-os/kernel/linux-kernel-test.patch
Normal file
0
my-ostree-os/kernel/linux-kernel-test.patch
Normal file
88
my-ostree-os/kernel/merge.py
Executable file
88
my-ostree-os/kernel/merge.py
Executable file
|
|
@ -0,0 +1,88 @@
|
||||||
|
#!/usr/bin/python3
|
||||||
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
|
# Author: Clark Williams <williams@redhat.com>
|
||||||
|
# Copyright (C) 2022 Red Hat, Inc.
|
||||||
|
#
|
||||||
|
# merge.py - a direct replacement for merge.pl in the redhat/configs directory
|
||||||
|
#
|
||||||
|
# invocation: python merge.py overrides baseconfig [arch]
|
||||||
|
#
|
||||||
|
# This script merges two kernel configuration files, an override file and a
|
||||||
|
# base config file and writes the results to stdout.
|
||||||
|
#
|
||||||
|
# The script reads the overrides into a dictionary, then reads the baseconfig
|
||||||
|
# file, looking for overrides and replacing any found, then printing the result
|
||||||
|
# to stdout. Finally any remaining (new) configs in the override are appended to the
|
||||||
|
# end of the output
|
||||||
|
|
||||||
|
import sys
|
||||||
|
import re
|
||||||
|
import os.path
|
||||||
|
|
||||||
|
def usage(msg):
|
||||||
|
'''print a usage message and exit'''
|
||||||
|
sys.stderr.write(msg + "\n")
|
||||||
|
sys.stderr.write("usage: merge.py overrides baseconfig [arch]\n")
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
isset = re.compile(r'^(CONFIG_\w+)=')
|
||||||
|
notset = re.compile(r'^#\s+(CONFIG_\w+)\s+is not set')
|
||||||
|
|
||||||
|
# search an input line for a config (set or notset) pattern
|
||||||
|
# if we get a match return the config that is being changed
|
||||||
|
def find_config(line):
|
||||||
|
'''find a configuration line in the input and return the config name'''
|
||||||
|
m = isset.match(line)
|
||||||
|
if (m is not None):
|
||||||
|
return m.group(1)
|
||||||
|
|
||||||
|
m = notset.match(line)
|
||||||
|
if (m is not None):
|
||||||
|
return m.group(1)
|
||||||
|
|
||||||
|
return None
|
||||||
|
|
||||||
|
#########################################################
|
||||||
|
|
||||||
|
if len(sys.argv) < 3:
|
||||||
|
usage("must have two input files")
|
||||||
|
|
||||||
|
override_file = sys.argv[1]
|
||||||
|
baseconfig_file = sys.argv[2]
|
||||||
|
|
||||||
|
if not os.path.exists(override_file):
|
||||||
|
usage(f"overrides config file {override_file:s} does not exist!")
|
||||||
|
|
||||||
|
if not os.path.exists(baseconfig_file):
|
||||||
|
usage(f"base configs file {baseconfig_file:s} does not exist")
|
||||||
|
|
||||||
|
if len(sys.argv) == 4:
|
||||||
|
print(f"# {sys.argv[3]:s}")
|
||||||
|
|
||||||
|
# read each line of the override file and store any configuration values
|
||||||
|
# in the overrides dictionary, keyed by the configuration name.
|
||||||
|
overrides = {}
|
||||||
|
with open(override_file, "rt", encoding="utf-8") as f:
|
||||||
|
for line in [l.strip() for l in f.readlines()]:
|
||||||
|
c = find_config(line)
|
||||||
|
if c and c not in overrides:
|
||||||
|
overrides[c] = line
|
||||||
|
|
||||||
|
# now read and print the base config, checking each line
|
||||||
|
# that defines a config value and printing the override if
|
||||||
|
# it exists
|
||||||
|
with open(baseconfig_file, "rt", encoding="utf-8") as f:
|
||||||
|
for line in [ l.strip() for l in f.readlines() ]:
|
||||||
|
c = find_config(line)
|
||||||
|
if c and c in overrides:
|
||||||
|
print(overrides[c])
|
||||||
|
del overrides[c]
|
||||||
|
else:
|
||||||
|
print(line)
|
||||||
|
|
||||||
|
# print out the remaining configs (new values)
|
||||||
|
# from the overrides file
|
||||||
|
for v in overrides.values():
|
||||||
|
print (v)
|
||||||
|
|
||||||
|
sys.exit(0)
|
||||||
67
my-ostree-os/kernel/mod-denylist.sh
Executable file
67
my-ostree-os/kernel/mod-denylist.sh
Executable file
|
|
@ -0,0 +1,67 @@
|
||||||
|
#! /bin/bash
|
||||||
|
# shellcheck disable=SC2164
|
||||||
|
|
||||||
|
rpm_buildroot="$1"
|
||||||
|
module_dir="$2"
|
||||||
|
module_list="$3"
|
||||||
|
|
||||||
|
blacklist_conf_files="$(mktemp)"
|
||||||
|
|
||||||
|
blacklist()
|
||||||
|
{
|
||||||
|
mkdir -p "$rpm_buildroot/etc/modprobe.d/"
|
||||||
|
cat > "$rpm_buildroot/etc/modprobe.d/$1-blacklist.conf" <<-__EOF__
|
||||||
|
# This kernel module can be automatically loaded by non-root users. To
|
||||||
|
# enhance system security, the module is blacklisted by default to ensure
|
||||||
|
# system administrators make the module available for use as needed.
|
||||||
|
# See https://access.redhat.com/articles/3760101 for more details.
|
||||||
|
#
|
||||||
|
# Remove the blacklist by adding a comment # at the start of the line.
|
||||||
|
blacklist $1
|
||||||
|
__EOF__
|
||||||
|
echo "%config(noreplace) /etc/modprobe.d/$1-blacklist.conf" >> "$blacklist_conf_files"
|
||||||
|
}
|
||||||
|
|
||||||
|
check_blacklist()
|
||||||
|
{
|
||||||
|
mod="$rpm_buildroot/$1"
|
||||||
|
[ ! "$mod" ] && return 0
|
||||||
|
if modinfo "$mod" | grep -q '^alias:\s\+net-'; then
|
||||||
|
mod="${1##*/}"
|
||||||
|
mod="${mod%.ko*}"
|
||||||
|
echo "$mod has an alias that allows auto-loading. Blacklisting."
|
||||||
|
blacklist "$mod"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
foreachp()
|
||||||
|
{
|
||||||
|
P=$(nproc)
|
||||||
|
bgcount=0
|
||||||
|
while read -r mod; do
|
||||||
|
$1 "$mod" &
|
||||||
|
|
||||||
|
bgcount=$((bgcount + 1))
|
||||||
|
if [ $bgcount -eq "$P" ]; then
|
||||||
|
wait -n
|
||||||
|
bgcount=$((bgcount - 1))
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
wait
|
||||||
|
}
|
||||||
|
|
||||||
|
# Many BIOS-es export a PNP-id which causes the floppy driver to autoload
|
||||||
|
# even though most modern systems don't have a 3.5" floppy driver anymore
|
||||||
|
# this replaces the old die_floppy_die.patch which removed the PNP-id from
|
||||||
|
# the module
|
||||||
|
|
||||||
|
floppylist=("$rpm_buildroot"/"$module_dir"/kernel/drivers/block/floppy.ko*)
|
||||||
|
if [[ -n ${floppylist[0]} && -f ${floppylist[0]} ]]; then
|
||||||
|
blacklist "floppy"
|
||||||
|
fi
|
||||||
|
|
||||||
|
foreachp check_blacklist < "$module_list"
|
||||||
|
|
||||||
|
cat "$blacklist_conf_files" >> "$module_list"
|
||||||
|
rm -f "$blacklist_conf_files"
|
||||||
37
my-ostree-os/kernel/mod-sign.sh
Executable file
37
my-ostree-os/kernel/mod-sign.sh
Executable file
|
|
@ -0,0 +1,37 @@
|
||||||
|
#! /bin/bash
|
||||||
|
|
||||||
|
# The modules_sign target checks for corresponding .o files for every .ko that
|
||||||
|
# is signed. This doesn't work for package builds which re-use the same build
|
||||||
|
# directory for every variant, and the .config may change between variants.
|
||||||
|
# So instead of using this script to just sign lib/modules/$KernelVer/extra,
|
||||||
|
# sign all .ko in the buildroot.
|
||||||
|
|
||||||
|
# This essentially duplicates the 'modules_sign' Kbuild target and runs the
|
||||||
|
# same commands for those modules.
|
||||||
|
|
||||||
|
MODSECKEY=$1
|
||||||
|
MODPUBKEY=$2
|
||||||
|
moddir=$3
|
||||||
|
|
||||||
|
modules=$(find "$moddir" -type f -name '*.ko')
|
||||||
|
|
||||||
|
NPROC=$(nproc)
|
||||||
|
[ -z "$NPROC" ] && NPROC=1
|
||||||
|
|
||||||
|
# NB: this loop runs 2000+ iterations. Try to be fast.
|
||||||
|
echo "$modules" | xargs -r -n16 -P "$NPROC" sh -c "
|
||||||
|
for mod; do
|
||||||
|
./scripts/sign-file sha256 $MODSECKEY $MODPUBKEY \$mod
|
||||||
|
rm -f \$mod.sig \$mod.dig
|
||||||
|
done
|
||||||
|
" DUMMYARG0 # xargs appends ARG1 ARG2..., which go into $mod in for loop.
|
||||||
|
|
||||||
|
RANDOMMOD=$(echo "$modules" | sort -R | head -n 1)
|
||||||
|
if [ "~Module signature appended~" != "$(tail -c 28 "$RANDOMMOD")" ]; then
|
||||||
|
echo "*****************************"
|
||||||
|
echo "*** Modules are unsigned! ***"
|
||||||
|
echo "*****************************"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
exit 0
|
||||||
BIN
my-ostree-os/kernel/nvidiagpuoot001.x509
Normal file
BIN
my-ostree-os/kernel/nvidiagpuoot001.x509
Normal file
Binary file not shown.
4
my-ostree-os/kernel/partial-clang-debug-snip.config
Normal file
4
my-ostree-os/kernel/partial-clang-debug-snip.config
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
# clang
|
||||||
|
# CONFIG_DRM_WERROR is not set
|
||||||
|
CONFIG_KASAN_STACK=y
|
||||||
|
# CONFIG_KMSAN is not set
|
||||||
4
my-ostree-os/kernel/partial-clang-snip.config
Normal file
4
my-ostree-os/kernel/partial-clang-snip.config
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
# clang
|
||||||
|
# CONFIG_DRM_WERROR is not set
|
||||||
|
# CONFIG_KASAN_STACK is not set
|
||||||
|
# CONFIG_KMSAN is not set
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
# clang_lto
|
||||||
|
# CONFIG_DRM_WERROR is not set
|
||||||
|
CONFIG_KASAN_STACK=y
|
||||||
|
# CONFIG_KMSAN is not set
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
# clang_lto
|
||||||
|
# CONFIG_DRM_WERROR is not set
|
||||||
|
# CONFIG_KASAN_STACK is not set
|
||||||
|
# CONFIG_KMSAN is not set
|
||||||
|
CONFIG_LTO_CLANG_THIN=y
|
||||||
|
# CONFIG_LTO_NONE is not set
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
# clang_lto
|
||||||
|
# CONFIG_DRM_WERROR is not set
|
||||||
|
CONFIG_KASAN_STACK=y
|
||||||
|
# CONFIG_KMSAN is not set
|
||||||
6
my-ostree-os/kernel/partial-clang_lto-x86_64-snip.config
Normal file
6
my-ostree-os/kernel/partial-clang_lto-x86_64-snip.config
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
# clang_lto
|
||||||
|
# CONFIG_DRM_WERROR is not set
|
||||||
|
# CONFIG_KASAN_STACK is not set
|
||||||
|
# CONFIG_KMSAN is not set
|
||||||
|
CONFIG_LTO_CLANG_THIN=y
|
||||||
|
# CONFIG_LTO_NONE is not set
|
||||||
6
my-ostree-os/kernel/partial-kgcov-debug-snip.config
Normal file
6
my-ostree-os/kernel/partial-kgcov-debug-snip.config
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
# kgcov
|
||||||
|
CONFIG_GCOV_KERNEL=y
|
||||||
|
CONFIG_GCOV_PROFILE_ALL=y
|
||||||
|
# CONFIG_GCOV_PROFILE_FTRACE is not set
|
||||||
|
CONFIG_GCOV_PROFILE_RDS=y
|
||||||
|
CONFIG_GCOV_PROFILE_URING=y
|
||||||
6
my-ostree-os/kernel/partial-kgcov-snip.config
Normal file
6
my-ostree-os/kernel/partial-kgcov-snip.config
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
# kgcov
|
||||||
|
CONFIG_GCOV_KERNEL=y
|
||||||
|
CONFIG_GCOV_PROFILE_ALL=y
|
||||||
|
# CONFIG_GCOV_PROFILE_FTRACE is not set
|
||||||
|
CONFIG_GCOV_PROFILE_RDS=y
|
||||||
|
CONFIG_GCOV_PROFILE_URING=y
|
||||||
0
my-ostree-os/kernel/patch-6.12-redhat.patch
Normal file
0
my-ostree-os/kernel/patch-6.12-redhat.patch
Normal file
424
my-ostree-os/kernel/process_configs.sh
Executable file
424
my-ostree-os/kernel/process_configs.sh
Executable file
|
|
@ -0,0 +1,424 @@
|
||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# This script takes the merged config files and processes them through oldconfig
|
||||||
|
# and listnewconfig
|
||||||
|
#
|
||||||
|
# Globally disable suggestion of appending '|| exit' or '|| return' to cd/pushd/popd commands
|
||||||
|
# shellcheck disable=SC2164
|
||||||
|
|
||||||
|
test -n "$RHTEST" && exit 0
|
||||||
|
|
||||||
|
usage()
|
||||||
|
{
|
||||||
|
# alphabetical order please
|
||||||
|
echo "process_configs.sh [ options ] package_name kernel_version"
|
||||||
|
echo " -a: report all errors, equivalent to [-c -n -w -i]"
|
||||||
|
echo " -c: error on mismatched config options"
|
||||||
|
echo " -i: continue on error"
|
||||||
|
echo " -n: error on unset config options"
|
||||||
|
echo " -t: test run, do not overwrite original config"
|
||||||
|
echo " -w: error on misconfigured config options"
|
||||||
|
echo " -z: commit new configs to pending directory"
|
||||||
|
echo ""
|
||||||
|
echo " A special CONFIG file tag, process_configs_known_broken can be added as a"
|
||||||
|
echo " comment to any CONFIG file. This tag indicates that there is no way to "
|
||||||
|
echo " fix a CONFIG's entry. This tag should only be used in extreme cases"
|
||||||
|
echo " and is not to be used as a workaround to solve CONFIG problems."
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
die()
|
||||||
|
{
|
||||||
|
echo "$1"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
get_cross_compile()
|
||||||
|
{
|
||||||
|
arch=$1
|
||||||
|
if [[ "$CC_IS_CLANG" -eq 1 ]]; then
|
||||||
|
echo "$arch"
|
||||||
|
else
|
||||||
|
echo "scripts/dummy-tools/"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# stupid function to find top of tree to do kernel make configs
|
||||||
|
switch_to_toplevel()
|
||||||
|
{
|
||||||
|
path="$(pwd)"
|
||||||
|
while test -n "$path"
|
||||||
|
do
|
||||||
|
test -e "$path"/MAINTAINERS && \
|
||||||
|
test -d "$path"/drivers && \
|
||||||
|
break
|
||||||
|
|
||||||
|
path=$(dirname "$path")
|
||||||
|
done
|
||||||
|
|
||||||
|
test -n "$path" || die "Can't find toplevel"
|
||||||
|
echo "$path"
|
||||||
|
}
|
||||||
|
|
||||||
|
checkoptions()
|
||||||
|
{
|
||||||
|
count=$3
|
||||||
|
variant=$4
|
||||||
|
|
||||||
|
/usr/bin/awk '
|
||||||
|
|
||||||
|
/is not set/ {
|
||||||
|
split ($0, a, "#");
|
||||||
|
split(a[2], b);
|
||||||
|
if (NR==FNR) {
|
||||||
|
configs[b[1]]="is not set";
|
||||||
|
} else {
|
||||||
|
if (configs[b[1]] != "" && configs[b[1]] != "is not set")
|
||||||
|
print "Found # "b[1] " is not set, after generation, had " b[1] " " configs[b[1]] " in Source tree";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/=/ {
|
||||||
|
split ($0, a, "=");
|
||||||
|
if (NR==FNR) {
|
||||||
|
configs[a[1]]=a[2];
|
||||||
|
} else {
|
||||||
|
if (configs[a[1]] != "" && configs[a[1]] != a[2])
|
||||||
|
print "Found "a[1]"="a[2]" after generation, had " a[1]"="configs[a[1]]" in Source tree";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
' "$1" "$2" > .mismatches"${count}"
|
||||||
|
|
||||||
|
checkoptions_error=false
|
||||||
|
if test -s .mismatches"${count}"
|
||||||
|
then
|
||||||
|
while read -r LINE
|
||||||
|
do
|
||||||
|
if find "${REDHAT}"/configs -name "$(echo "$LINE" | awk -F "=" ' { print $1 } ' | awk ' { print $2 }')" -print0 | xargs -0 grep ^ | grep -q "process_configs_known_broken"; then
|
||||||
|
# This is a known broken config.
|
||||||
|
# See script help warning.
|
||||||
|
checkoptions_error=false
|
||||||
|
else
|
||||||
|
checkoptions_error=true
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done < .mismatches"${count}"
|
||||||
|
|
||||||
|
! $checkoptions_error && return
|
||||||
|
|
||||||
|
sed -i "1s/^/Error: Mismatches found in configuration files for ${arch} ${variant}\n/" .mismatches"${count}"
|
||||||
|
else
|
||||||
|
rm -f .mismatches"${count}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
parsenewconfigs()
|
||||||
|
{
|
||||||
|
tmpdir=$(mktemp -d)
|
||||||
|
|
||||||
|
# This awk script reads the output of make listnewconfig
|
||||||
|
# and puts it into CONFIG_FOO files. Using the output of
|
||||||
|
# listnewconfig is much easier to ensure we get the default
|
||||||
|
# output.
|
||||||
|
/usr/bin/awk -v BASE="$tmpdir" '
|
||||||
|
/is not set/ {
|
||||||
|
split ($0, a, "#");
|
||||||
|
split(a[2], b);
|
||||||
|
OUT_FILE=BASE"/"b[1];
|
||||||
|
print $0 >> OUT_FILE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/=/ {
|
||||||
|
split ($0, a, "=");
|
||||||
|
OUT_FILE=BASE"/"a[1];
|
||||||
|
if (a[2] == "n")
|
||||||
|
print "# " a[1] " is not set" >> OUT_FILE;
|
||||||
|
else
|
||||||
|
print $0 >> OUT_FILE;
|
||||||
|
}
|
||||||
|
|
||||||
|
' .newoptions
|
||||||
|
|
||||||
|
# This awk script parses the output of helpnewconfig.
|
||||||
|
# Each option is separated between ----- markers
|
||||||
|
# The goal is to put all the help text as a comment in
|
||||||
|
# each CONFIG_FOO file. Because of how awk works
|
||||||
|
# there's a lot of moving files around and catting to
|
||||||
|
# get what we need.
|
||||||
|
/usr/bin/awk -v BASE="$tmpdir" '
|
||||||
|
BEGIN { inpatch=0;
|
||||||
|
outfile="none";
|
||||||
|
symbol="none";
|
||||||
|
commit=""; }
|
||||||
|
/^Symbol: .*$/ {
|
||||||
|
split($0, a, " ");
|
||||||
|
symbol="CONFIG_"a[2];
|
||||||
|
outfile=BASE "/fake_"symbol
|
||||||
|
}
|
||||||
|
/-----/ {
|
||||||
|
if (inpatch == 0) {
|
||||||
|
inpatch = 1;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if (symbol != "none") {
|
||||||
|
print "# Commit: "commit >> outfile
|
||||||
|
system("cat " outfile " " BASE "/" symbol " > " BASE "/tmpf");
|
||||||
|
system("mv " BASE "/tmpf " BASE "/" symbol);
|
||||||
|
symbol="none"
|
||||||
|
commit=""
|
||||||
|
}
|
||||||
|
outfile="none"
|
||||||
|
inpatch = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
!/-----/ {
|
||||||
|
if (inpatch == 1 && outfile != "none") {
|
||||||
|
print "# "$0 >> outfile;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/^Defined at .*$/ {
|
||||||
|
split($0, x, " ");
|
||||||
|
filenum=x[3];
|
||||||
|
split(filenum, x, ":");
|
||||||
|
file=x[1]
|
||||||
|
line=x[2]
|
||||||
|
cmd="git blame -L " line "," line " " file " | cut -d \" \" -f1 | xargs git log --pretty=format:\"%C(auto)%h %C(cyan)('%s')\" -1"
|
||||||
|
cmd | getline commit
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
' .helpnewconfig
|
||||||
|
|
||||||
|
pushd "$tmpdir" &> /dev/null
|
||||||
|
rm fake_*
|
||||||
|
popd &> /dev/null
|
||||||
|
for f in "$tmpdir"/*; do
|
||||||
|
[[ -e "$f" ]] || break
|
||||||
|
cp "$f" "$SCRIPT_DIR/pending$FLAVOR/generic/"
|
||||||
|
done
|
||||||
|
|
||||||
|
rm -rf "$tmpdir"
|
||||||
|
}
|
||||||
|
|
||||||
|
function commit_new_configs()
|
||||||
|
{
|
||||||
|
# assume we are in $source_tree/configs, need to get to top level
|
||||||
|
pushd "$(switch_to_toplevel)" &>/dev/null
|
||||||
|
|
||||||
|
for cfg in "$SCRIPT_DIR/${SPECPACKAGE_NAME}${KVERREL}"*.config
|
||||||
|
do
|
||||||
|
arch=$(head -1 "$cfg" | cut -b 3-)
|
||||||
|
cfgtmp="${cfg}.tmp"
|
||||||
|
cfgorig="${cfg}.orig"
|
||||||
|
cat "$cfg" > "$cfgorig"
|
||||||
|
|
||||||
|
if [ "$arch" = "EMPTY" ]
|
||||||
|
then
|
||||||
|
# This arch is intentionally left blank
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
echo -n "Checking for new configs in $cfg ... "
|
||||||
|
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
make ${MAKEOPTS} ARCH="$arch" CROSS_COMPILE="$(get_cross_compile "$arch")" KCONFIG_CONFIG="$cfgorig" listnewconfig >& .listnewconfig
|
||||||
|
grep -E 'CONFIG_' .listnewconfig > .newoptions
|
||||||
|
if test -s .newoptions
|
||||||
|
then
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
make ${MAKEOPTS} ARCH="$arch" CROSS_COMPILE="$(get_cross_compile "$arch")" KCONFIG_CONFIG="$cfgorig" helpnewconfig >& .helpnewconfig
|
||||||
|
parsenewconfigs
|
||||||
|
fi
|
||||||
|
rm .newoptions
|
||||||
|
echo "done"
|
||||||
|
done
|
||||||
|
|
||||||
|
git add "$SCRIPT_DIR/pending$FLAVOR"
|
||||||
|
git commit -m "[redhat] AUTOMATIC: New configs"
|
||||||
|
}
|
||||||
|
|
||||||
|
function process_config()
|
||||||
|
{
|
||||||
|
local cfg
|
||||||
|
local arch
|
||||||
|
local cfgtmp
|
||||||
|
local cfgorig
|
||||||
|
local count
|
||||||
|
local variant
|
||||||
|
|
||||||
|
cfg=$1
|
||||||
|
count=$2
|
||||||
|
|
||||||
|
arch=$(head -1 "$cfg" | cut -b 3-)
|
||||||
|
|
||||||
|
if [ "$arch" = "EMPTY" ]
|
||||||
|
then
|
||||||
|
# This arch is intentionally left blank
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
variant=$(basename "$cfg" | cut -d"-" -f3- | cut -d"." -f1)
|
||||||
|
|
||||||
|
cfgtmp="${cfg}.tmp"
|
||||||
|
cfgorig="${cfg}.orig"
|
||||||
|
cat "$cfg" > "$cfgorig"
|
||||||
|
|
||||||
|
echo "Processing $cfg ... "
|
||||||
|
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
make ${MAKEOPTS} ARCH="$arch" CROSS_COMPILE="$(get_cross_compile "$arch")" KCONFIG_CONFIG="$cfgorig" listnewconfig >& .listnewconfig"${count}"
|
||||||
|
grep -E 'CONFIG_' .listnewconfig"${count}" > .newoptions"${count}"
|
||||||
|
if test -n "$NEWOPTIONS" && test -s .newoptions"${count}"
|
||||||
|
then
|
||||||
|
echo "Found unset config items in ${arch} ${variant}, please set them to an appropriate value" >> .errors"${count}"
|
||||||
|
cat .newoptions"${count}" >> .errors"${count}"
|
||||||
|
rm .newoptions"${count}"
|
||||||
|
RETURNCODE=1
|
||||||
|
fi
|
||||||
|
rm -f .newoptions"${count}"
|
||||||
|
|
||||||
|
grep -E 'config.*warning' .listnewconfig"${count}" > .warnings"${count}"
|
||||||
|
if test -n "$CHECKWARNINGS" && test -s .warnings"${count}"
|
||||||
|
then
|
||||||
|
echo "Found misconfigured config items in ${arch} ${variant}, please set them to an appropriate value" >> .errors"${count}"
|
||||||
|
cat .warnings"${count}" >> .errors"${count}"
|
||||||
|
fi
|
||||||
|
rm .warnings"${count}"
|
||||||
|
|
||||||
|
rm .listnewconfig"${count}"
|
||||||
|
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
make ${MAKEOPTS} ARCH="$arch" CROSS_COMPILE="$(get_cross_compile "$arch")" KCONFIG_CONFIG="$cfgorig" olddefconfig > /dev/null || exit 1
|
||||||
|
echo "# $arch" > "$cfgtmp"
|
||||||
|
cat "$cfgorig" >> "$cfgtmp"
|
||||||
|
if test -n "$CHECKOPTIONS"
|
||||||
|
then
|
||||||
|
checkoptions "$cfg" "$cfgtmp" "$count" "$variant"
|
||||||
|
fi
|
||||||
|
# if test run, don't overwrite original
|
||||||
|
if test -n "$TESTRUN"
|
||||||
|
then
|
||||||
|
rm -f "$cfgtmp"
|
||||||
|
else
|
||||||
|
mv "$cfgtmp" "$cfg"
|
||||||
|
fi
|
||||||
|
rm -f "$cfgorig"
|
||||||
|
echo "Processing $cfg complete"
|
||||||
|
}
|
||||||
|
|
||||||
|
function process_configs()
|
||||||
|
{
|
||||||
|
# assume we are in $source_tree/configs, need to get to top level
|
||||||
|
pushd "$(switch_to_toplevel)" &>/dev/null
|
||||||
|
|
||||||
|
# The next line is throwaway code for transition to parallel
|
||||||
|
# processing. Leaving this line in place is harmless, but it can be
|
||||||
|
# removed the next time anyone updates this function.
|
||||||
|
[ -f .mismatches ] && rm -f .mismatches
|
||||||
|
|
||||||
|
count=0
|
||||||
|
for cfg in "$SCRIPT_DIR/${SPECPACKAGE_NAME}${KVERREL}"*.config
|
||||||
|
do
|
||||||
|
if [ "$count" -eq 0 ]; then
|
||||||
|
# do the first one by itself so that tools are built
|
||||||
|
process_config "$cfg" "$count"
|
||||||
|
fi
|
||||||
|
process_config "$cfg" "$count" &
|
||||||
|
# shellcheck disable=SC2004
|
||||||
|
waitpids[${count}]=$!
|
||||||
|
((count++))
|
||||||
|
while [ "$(jobs | grep -c Running)" -ge "$RHJOBS" ]; do :; done
|
||||||
|
done
|
||||||
|
# shellcheck disable=SC2048
|
||||||
|
for pid in ${waitpids[*]}; do
|
||||||
|
wait "${pid}"
|
||||||
|
done
|
||||||
|
|
||||||
|
rm "$SCRIPT_DIR"/*.config*.old
|
||||||
|
|
||||||
|
if ls .errors* 1> /dev/null 2>&1; then
|
||||||
|
RETURNCODE=1
|
||||||
|
cat .errors*
|
||||||
|
rm .errors* -f
|
||||||
|
fi
|
||||||
|
if ls .mismatches* 1> /dev/null 2>&1; then
|
||||||
|
RETURNCODE=1
|
||||||
|
cat .mismatches*
|
||||||
|
rm .mismatches* -f
|
||||||
|
fi
|
||||||
|
|
||||||
|
popd > /dev/null
|
||||||
|
|
||||||
|
[ $RETURNCODE -eq 0 ] && echo "Processed config files are in $SCRIPT_DIR"
|
||||||
|
}
|
||||||
|
|
||||||
|
CHECKOPTIONS=""
|
||||||
|
NEWOPTIONS=""
|
||||||
|
TESTRUN=""
|
||||||
|
CHECKWARNINGS=""
|
||||||
|
MAKEOPTS=""
|
||||||
|
CC_IS_CLANG=0
|
||||||
|
|
||||||
|
RETURNCODE=0
|
||||||
|
|
||||||
|
while [[ $# -gt 0 ]]
|
||||||
|
do
|
||||||
|
key="$1"
|
||||||
|
case $key in
|
||||||
|
-a)
|
||||||
|
CHECKOPTIONS="x"
|
||||||
|
NEWOPTIONS="x"
|
||||||
|
CHECKWARNINGS="x"
|
||||||
|
;;
|
||||||
|
-c)
|
||||||
|
CHECKOPTIONS="x"
|
||||||
|
;;
|
||||||
|
-h)
|
||||||
|
usage
|
||||||
|
;;
|
||||||
|
-n)
|
||||||
|
NEWOPTIONS="x"
|
||||||
|
;;
|
||||||
|
-t)
|
||||||
|
TESTRUN="x"
|
||||||
|
;;
|
||||||
|
-w)
|
||||||
|
CHECKWARNINGS="x"
|
||||||
|
;;
|
||||||
|
-z)
|
||||||
|
COMMITNEWCONFIGS="x"
|
||||||
|
;;
|
||||||
|
-m)
|
||||||
|
shift
|
||||||
|
if [ "$1" = "CC=clang" ] || [ "$1" = "LLVM=1" ]; then
|
||||||
|
CC_IS_CLANG=1
|
||||||
|
fi
|
||||||
|
MAKEOPTS="$MAKEOPTS $1"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
break;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
KVERREL="$(test -n "$1" && echo "-$1" || echo "")"
|
||||||
|
FLAVOR="$(test -n "$2" && echo "-$2" || echo "-rhel")"
|
||||||
|
# shellcheck disable=SC2015
|
||||||
|
SCRIPT=$(readlink -f "$0")
|
||||||
|
SCRIPT_DIR=$(dirname "$SCRIPT")
|
||||||
|
|
||||||
|
# Config options for RHEL should target the pending-rhel directory, not pending-common.
|
||||||
|
if [ "$FLAVOR" = "-rhel" ]
|
||||||
|
then
|
||||||
|
FLAVOR="-rhel"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# to handle this script being a symlink
|
||||||
|
cd "$SCRIPT_DIR"
|
||||||
|
|
||||||
|
if test -n "$COMMITNEWCONFIGS"; then
|
||||||
|
commit_new_configs
|
||||||
|
else
|
||||||
|
process_configs
|
||||||
|
fi
|
||||||
|
|
||||||
|
exit $RETURNCODE
|
||||||
BIN
my-ostree-os/kernel/redhatsecureboot501.cer
Normal file
BIN
my-ostree-os/kernel/redhatsecureboot501.cer
Normal file
Binary file not shown.
BIN
my-ostree-os/kernel/redhatsecurebootca5.cer
Normal file
BIN
my-ostree-os/kernel/redhatsecurebootca5.cer
Normal file
Binary file not shown.
54
my-ostree-os/kernel/rpminspect.yaml
Normal file
54
my-ostree-os/kernel/rpminspect.yaml
Normal file
|
|
@ -0,0 +1,54 @@
|
||||||
|
# additional rpminspect configuration for this branch
|
||||||
|
|
||||||
|
---
|
||||||
|
inspections:
|
||||||
|
abidiff: off
|
||||||
|
kmidiff: off
|
||||||
|
upstream: off
|
||||||
|
subpackages: off
|
||||||
|
license: off
|
||||||
|
debuginfo: off
|
||||||
|
removedfiles: off
|
||||||
|
|
||||||
|
badfuncs:
|
||||||
|
ignore:
|
||||||
|
- /usr/libexec/ksamples/*
|
||||||
|
- /usr/libexec/kselftests/*
|
||||||
|
|
||||||
|
emptyrpm:
|
||||||
|
expected_empty:
|
||||||
|
- kernel
|
||||||
|
- kernel-debug
|
||||||
|
- kernel-debug-devel-matched
|
||||||
|
- kernel-devel-matched
|
||||||
|
- kernel-lpae
|
||||||
|
- kernel-zfcpdump
|
||||||
|
- kernel-zfcpdump-devel-matched
|
||||||
|
- kernel-zfcpdump-modules
|
||||||
|
|
||||||
|
patches:
|
||||||
|
ignore_list:
|
||||||
|
- linux-kernel-test.patch
|
||||||
|
- patch-6.12-redhat.patch
|
||||||
|
- patch-%{patchversion}-redhat.patch
|
||||||
|
|
||||||
|
runpath:
|
||||||
|
ignore:
|
||||||
|
- /usr/libexec/kselftests/bpf/urandom_read
|
||||||
|
- /usr/libexec/kselftests/bpf/no_alu32/urandom_read
|
||||||
|
- /usr/libexec/kselftests/bpf/cpuv4/urandom_read
|
||||||
|
|
||||||
|
debuginfo:
|
||||||
|
ignore:
|
||||||
|
- /usr/libexec/kselftests/bpf/*
|
||||||
|
- /usr/lib/debug/usr/libexec/perf-core/tests/shell/coresight/*
|
||||||
|
|
||||||
|
elf:
|
||||||
|
ignore:
|
||||||
|
- /usr/libexec/kselftests/*
|
||||||
|
- /usr/libexec/perf-core/tests/shell/coresight/*
|
||||||
|
- /usr/lib/debug/usr/libexec/perf-core/tests/shell/coresight/*
|
||||||
|
|
||||||
|
annocheck:
|
||||||
|
ignore:
|
||||||
|
- /usr/libexec/kselftests/*
|
||||||
45
my-ostree-os/kernel/uki_addons.json
Normal file
45
my-ostree-os/kernel/uki_addons.json
Normal file
|
|
@ -0,0 +1,45 @@
|
||||||
|
{
|
||||||
|
"common": {
|
||||||
|
"crashkernel-1536M.addon": [
|
||||||
|
"crashkernel=1536M\n"
|
||||||
|
],
|
||||||
|
"crashkernel-192M.addon": [
|
||||||
|
"crashkernel=192M\n"
|
||||||
|
],
|
||||||
|
"crashkernel-1G.addon": [
|
||||||
|
"crashkernel=1G\n"
|
||||||
|
],
|
||||||
|
"crashkernel-256M.addon": [
|
||||||
|
"crashkernel=256M\n"
|
||||||
|
],
|
||||||
|
"crashkernel-2G.addon": [
|
||||||
|
"crashkernel=2G\n"
|
||||||
|
],
|
||||||
|
"crashkernel-512M.addon": [
|
||||||
|
"crashkernel=512M\n"
|
||||||
|
],
|
||||||
|
"crashkernel-default.addon": [
|
||||||
|
"crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M\n"
|
||||||
|
],
|
||||||
|
"debug.addon": [
|
||||||
|
"debug"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"virt": {
|
||||||
|
"common": {
|
||||||
|
"fips-disable.addon": [
|
||||||
|
"fips=0\n"
|
||||||
|
],
|
||||||
|
"fips-enable.addon": [
|
||||||
|
"fips=1\n"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"rhel": {
|
||||||
|
"aarch64": {
|
||||||
|
"crashkernel-default.addon": [
|
||||||
|
"crashkernel=1G-4G:256M,4G-64G:320M,64G-:576M\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
151
my-ostree-os/kernel/uki_create_addons.py
Executable file
151
my-ostree-os/kernel/uki_create_addons.py
Executable file
|
|
@ -0,0 +1,151 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
#
|
||||||
|
# This script inspects a given json proving a list of addons, and
|
||||||
|
# creates an addon for each key/value pair matching the given uki, distro and
|
||||||
|
# arch provided in input.
|
||||||
|
#
|
||||||
|
# Usage: python uki_create_addons.py input_json out_dir uki distro arch
|
||||||
|
#
|
||||||
|
# This tool requires the systemd-ukify and systemd-boot packages.
|
||||||
|
#
|
||||||
|
# Addon file
|
||||||
|
#-----------
|
||||||
|
# Each addon terminates with .addon
|
||||||
|
# Each addon contains only two types of lines:
|
||||||
|
# Lines beginning with '#' are description and thus ignored
|
||||||
|
# All other lines are command line to be added.
|
||||||
|
# The name of the end resulting addon is taken from the json hierarchy.
|
||||||
|
# For example, and addon in json['virt']['rhel']['x86_64']['hello.addon'] will
|
||||||
|
# result in an UKI addon file generated in out_dir called
|
||||||
|
# hello-virt.rhel.x86_64.addon.efi
|
||||||
|
#
|
||||||
|
# The common key, present in any sub-dict in the provided json (except the leaf dict)
|
||||||
|
# is used as place for default addons when the same addon is not defined deep
|
||||||
|
# in the hierarchy. For example, if we define test.addon (text: 'test1\n') in
|
||||||
|
# json['common']['test.addon'] = ['test1\n'] and another test.addon (text: test2) in
|
||||||
|
# json['virt']['common']['test.addon'] = ['test2'], any other uki except virt
|
||||||
|
# will have a test.addon.efi with text "test1", and virt will have a
|
||||||
|
# test.addon.efi with "test2"
|
||||||
|
#
|
||||||
|
# sbat.conf
|
||||||
|
#----------
|
||||||
|
# This dict is containing the sbat string for *all* addons being created.
|
||||||
|
# This dict is optional, but when used has to be put in a sub-dict with
|
||||||
|
# { 'sbat' : { 'sbat.conf' : ['your text here'] }}
|
||||||
|
# It follows the same syntax as the addon files, meaning '#' is comment and
|
||||||
|
# the rest is taken as sbat string and feed to ukify.
|
||||||
|
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
import json
|
||||||
|
import collections
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
|
||||||
|
UKIFY_PATH = '/usr/lib/systemd/ukify'
|
||||||
|
|
||||||
|
def usage(err):
|
||||||
|
print(f'Usage: {os.path.basename(__file__)} input_json output_dir uki distro arch')
|
||||||
|
print(f'Error:{err}')
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
def check_clean_arguments(input_json, out_dir):
|
||||||
|
# Remove end '/'
|
||||||
|
if out_dir[-1:] == '/':
|
||||||
|
out_dir = out_dir[:-1]
|
||||||
|
if not os.path.isfile(input_json):
|
||||||
|
usage(f'input_json {input_json} is not a file, or does not exist!')
|
||||||
|
if not os.path.isdir(out_dir):
|
||||||
|
usage(f'out_dir_dir {out_dir} is not a dir, or does not exist!')
|
||||||
|
return out_dir
|
||||||
|
|
||||||
|
UKICmdlineAddon = collections.namedtuple('UKICmdlineAddon', ['name', 'cmdline'])
|
||||||
|
uki_addons_list = []
|
||||||
|
uki_addons = {}
|
||||||
|
addon_sbat_string = None
|
||||||
|
|
||||||
|
def parse_lines(lines, rstrip=True):
|
||||||
|
cmdline = ''
|
||||||
|
for l in lines:
|
||||||
|
l = l.lstrip()
|
||||||
|
if not l:
|
||||||
|
continue
|
||||||
|
if l[0] == '#':
|
||||||
|
continue
|
||||||
|
# rstrip is used only for addons cmdline, not sbat.conf, as it replaces
|
||||||
|
# return lines with spaces.
|
||||||
|
if rstrip:
|
||||||
|
l = l.rstrip() + ' '
|
||||||
|
cmdline += l
|
||||||
|
if cmdline == '':
|
||||||
|
return ''
|
||||||
|
return cmdline
|
||||||
|
|
||||||
|
def parse_all_addons(in_obj):
|
||||||
|
global addon_sbat_string
|
||||||
|
|
||||||
|
for el in in_obj.keys():
|
||||||
|
# addon found: copy it in our global dict uki_addons
|
||||||
|
if el.endswith('.addon'):
|
||||||
|
uki_addons[el] = in_obj[el]
|
||||||
|
|
||||||
|
if 'sbat' in in_obj and 'sbat.conf' in in_obj['sbat']:
|
||||||
|
# sbat.conf found: override sbat with the most specific one found
|
||||||
|
addon_sbat_string = parse_lines(in_obj['sbat']['sbat.conf'], rstrip=False)
|
||||||
|
|
||||||
|
def recursively_find_addons(in_obj, folder_list):
|
||||||
|
# end of recursion, leaf directory. Search all addons here
|
||||||
|
if len(folder_list) == 0:
|
||||||
|
parse_all_addons(in_obj)
|
||||||
|
return
|
||||||
|
|
||||||
|
# first, check for common folder
|
||||||
|
if 'common' in in_obj:
|
||||||
|
parse_all_addons(in_obj['common'])
|
||||||
|
|
||||||
|
# second, check if there is a match with the searched folder
|
||||||
|
if folder_list[0] in in_obj:
|
||||||
|
folder_next = in_obj[folder_list[0]]
|
||||||
|
folder_list = folder_list[1:]
|
||||||
|
recursively_find_addons(folder_next, folder_list)
|
||||||
|
|
||||||
|
def parse_in_json(in_json, uki_name, distro, arch):
|
||||||
|
with open(in_json, 'r') as f:
|
||||||
|
in_obj = json.load(f)
|
||||||
|
recursively_find_addons(in_obj, [uki_name, distro, arch])
|
||||||
|
|
||||||
|
for addon_name, cmdline in uki_addons.items():
|
||||||
|
addon_name = addon_name.replace(".addon","")
|
||||||
|
addon_full_name = f'{addon_name}-{uki_name}.{distro}.{arch}.addon.efi'
|
||||||
|
cmdline = parse_lines(cmdline).rstrip()
|
||||||
|
if cmdline:
|
||||||
|
uki_addons_list.append(UKICmdlineAddon(addon_full_name, cmdline))
|
||||||
|
|
||||||
|
def create_addons(out_dir):
|
||||||
|
for uki_addon in uki_addons_list:
|
||||||
|
out_path = os.path.join(out_dir, uki_addon.name)
|
||||||
|
cmd = [
|
||||||
|
f'{UKIFY_PATH}', 'build',
|
||||||
|
'--cmdline', uki_addon.cmdline,
|
||||||
|
'--output', out_path]
|
||||||
|
if addon_sbat_string:
|
||||||
|
cmd.extend(['--sbat', addon_sbat_string.rstrip()])
|
||||||
|
|
||||||
|
subprocess.check_call(cmd, text=True)
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
argc = len(sys.argv) - 1
|
||||||
|
if argc != 5:
|
||||||
|
usage('too few or too many parameters!')
|
||||||
|
|
||||||
|
input_json = sys.argv[1]
|
||||||
|
out_dir = sys.argv[2]
|
||||||
|
uki_name = sys.argv[3]
|
||||||
|
distro = sys.argv[4]
|
||||||
|
arch = sys.argv[5]
|
||||||
|
|
||||||
|
out_dir = check_clean_arguments(input_json, out_dir)
|
||||||
|
parse_in_json(input_json, uki_name, distro, arch)
|
||||||
|
create_addons(out_dir)
|
||||||
|
|
||||||
|
|
||||||
16
my-ostree-os/kernel/x509.genkey.centos
Normal file
16
my-ostree-os/kernel/x509.genkey.centos
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
[ req ]
|
||||||
|
default_bits = 3072
|
||||||
|
distinguished_name = req_distinguished_name
|
||||||
|
prompt = no
|
||||||
|
x509_extensions = myexts
|
||||||
|
|
||||||
|
[ req_distinguished_name ]
|
||||||
|
O = AlmaLinux
|
||||||
|
CN = AlmaLinux kernel signing key
|
||||||
|
emailAddress = security@almalinux.org
|
||||||
|
|
||||||
|
[ myexts ]
|
||||||
|
basicConstraints=critical,CA:FALSE
|
||||||
|
keyUsage=digitalSignature
|
||||||
|
subjectKeyIdentifier=hash
|
||||||
|
authorityKeyIdentifier=keyid
|
||||||
16
my-ostree-os/kernel/x509.genkey.rhel
Normal file
16
my-ostree-os/kernel/x509.genkey.rhel
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
[ req ]
|
||||||
|
default_bits = 3072
|
||||||
|
distinguished_name = req_distinguished_name
|
||||||
|
prompt = no
|
||||||
|
x509_extensions = myexts
|
||||||
|
|
||||||
|
[ req_distinguished_name ]
|
||||||
|
O = AlmaLinux
|
||||||
|
CN = AlmaLinux kernel signing key
|
||||||
|
emailAddress = security@almalinux.org
|
||||||
|
|
||||||
|
[ myexts ]
|
||||||
|
basicConstraints=critical,CA:FALSE
|
||||||
|
keyUsage=digitalSignature
|
||||||
|
subjectKeyIdentifier=hash
|
||||||
|
authorityKeyIdentifier=keyid
|
||||||
Loading…
Add table
Add a link
Reference in a new issue