hpsa: bring back deprecated PCI ids #CFHack #CFHack2024

mptsas: bring back deprecated PCI ids #CFHack #CFHack2024

megaraid_sas: bring back deprecated PCI ids #CFHack #CFHack2024

qla2xxx: bring back deprecated PCI ids #CFHack #CFHack2024

qla4xxx: bring back deprecated PCI ids

lpfc: bring back deprecated PCI ids

be2iscsi: bring back deprecated PCI ids

kernel/rh_messages.h: enable all disabled pci devices by moving to unmaintained

NFSD: fix hang in nfsd4_shutdown_callback

Use AlmaLinux OS secure boot cert

Debrand for AlmaLinux OS

Add KVM support for ppc64le
This commit is contained in:
Andrew Lukoshko 2025-11-11 14:24:20 +00:00 committed by root
parent ba8a1c1b3f
commit 2a47f4b8ee
36 changed files with 14479 additions and 104 deletions

View File

@ -0,0 +1,38 @@
From 2ecae960349c68360744ed3cba0c47ad18b402cc Mon Sep 17 00:00:00 2001
From: eabdullin <eabdullin@almalinux.org>
Date: Tue, 11 Mar 2025 10:22:08 +0300
Subject: [PATCH] Enable all disabled pci devices by moving to unmaintained
---
kernel/rh_messages.h | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/kernel/rh_messages.h b/kernel/rh_messages.h
index 647d7b9a4..483824c9c 100644
--- a/kernel/rh_messages.h
+++ b/kernel/rh_messages.h
@@ -123,6 +123,10 @@ 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[] = {
{ 0x1011, 0x0046, 0x103c, 0x10c2 },
{ 0x1011, 0x0046, 0x9005, 0x0364 },
{ 0x1011, 0x0046, 0x9005, 0x0365 },
@@ -288,10 +292,6 @@ static const struct pci_device_id rh_disabled_pci_devices[] = {
{ 0x1077, 0x8022, PCI_ANY_ID, PCI_ANY_ID },
{ 0x1077, 0x8032, PCI_ANY_ID, PCI_ANY_ID },
{ 0x1077, 0x8042, PCI_ANY_ID, PCI_ANY_ID },
- {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 },
--
2.39.5 (Apple Git-154)

View File

@ -0,0 +1,39 @@
From ac6e3b155d35bfea32b1c3c6015a18b6e5046652 Mon Sep 17 00:00:00 2001
From: Andrew Lukoshko <alukoshko@almalinux.org>
Date: Mon, 8 Apr 2024 13:17:47 +0000
Subject: [PATCH 2/4] 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 9d2f13f12..b25686049 100644
--- a/drivers/message/fusion/mptsas.c
+++ b/drivers/message/fusion/mptsas.c
@@ -5381,7 +5381,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 fd4a10b78..f9616de2a 100644
--- a/drivers/message/fusion/mptspi.c
+++ b/drivers/message/fusion/mptspi.c
@@ -1238,7 +1238,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.27.0

View File

@ -0,0 +1,51 @@
From f9ab10cebe6411dd26fec2ef354db2e527386b4f Mon Sep 17 00:00:00 2001
From: Andrew Lukoshko <alukoshko@almalinux.org>
Date: Mon, 8 Apr 2024 13:20:29 +0000
Subject: [PATCH 3/4] Bring back deprecated pci ids to hpsa driver
---
drivers/scsi/hpsa.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
index bd5880cbd..060bd914a 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
@@ -82,9 +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
MODULE_ALIAS("cciss");
-#endif
static int hpsa_simple_mode;
module_param(hpsa_simple_mode, int, S_IRUGO|S_IWUSR);
@@ -93,6 +91,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,12 +149,10 @@ 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
{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,
PCI_CLASS_STORAGE_RAID << 8, 0xffff << 8, 0},
-#endif
{0,}
};
--
2.27.0

View File

@ -0,0 +1,43 @@
From 091c13878c5d53a9ca8c78d8d3dc20598ff11c88 Mon Sep 17 00:00:00 2001
From: Andrew Lukoshko <alukoshko@almalinux.org>
Date: Mon, 8 Apr 2024 13:22:27 +0000
Subject: [PATCH 4/4] Bring back deprecated pci ids to qla2xxx driver
---
drivers/scsi/qla2xxx/qla_os.c | 6 ------
1 file changed, 6 deletions(-)
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 036f26c42..1d7b684dc 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -8121,7 +8121,6 @@ static const struct pci_error_handlers qla2xxx_err_handler = {
};
static struct pci_device_id qla2xxx_pci_tbl[] = {
-#ifndef CONFIG_RHEL_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) },
@@ -8134,18 +8133,13 @@ static struct pci_device_id qla2xxx_pci_tbl[] = {
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP8432) },
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP5422) },
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP5432) },
-#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
{ 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
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISPF001) },
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP8044) },
-#endif
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2071) },
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2271) },
{ PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2261) },
--
2.27.0

View File

@ -0,0 +1,86 @@
From 0e54f93854865b95b50e8023645e423af634e4ec Mon Sep 17 00:00:00 2001
From: Andrew Lukoshko <alukoshko@almalinux.org>
Date: Tue, 9 Apr 2024 17:27:35 +0000
Subject: [PATCH 1/3] Bring back deprecated pci ids to lpfc driver
---
drivers/scsi/lpfc/lpfc_ids.h | 12 ------------
1 file changed, 12 deletions(-)
diff --git a/drivers/scsi/lpfc/lpfc_ids.h b/drivers/scsi/lpfc/lpfc_ids.h
index 85fc52038..0b1616e93 100644
--- a/drivers/scsi/lpfc/lpfc_ids.h
+++ b/drivers/scsi/lpfc/lpfc_ids.h
@@ -24,7 +24,6 @@
#include <linux/pci.h>
const struct pci_device_id lpfc_id_table[] = {
-#ifndef CONFIG_RHEL_DIFFERENCES
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_VIPER,
PCI_ANY_ID, PCI_ANY_ID, },
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_FIREFLY,
@@ -55,13 +54,10 @@ const struct pci_device_id lpfc_id_table[] = {
PCI_ANY_ID, PCI_ANY_ID, },
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_HELIOS_DCSP,
PCI_ANY_ID, PCI_ANY_ID, },
-#endif
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_BMID,
PCI_ANY_ID, PCI_ANY_ID, },
-#ifndef CONFIG_RHEL_DIFFERENCES
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_BSMB,
PCI_ANY_ID, PCI_ANY_ID, },
-#endif
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZEPHYR,
PCI_ANY_ID, PCI_ANY_ID, },
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZEPHYR_SCSP,
@@ -72,7 +68,6 @@ 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
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_TFLY,
PCI_ANY_ID, PCI_ANY_ID, },
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LP101,
@@ -83,7 +78,6 @@ const struct pci_device_id lpfc_id_table[] = {
PCI_ANY_ID, PCI_ANY_ID, },
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LPE11000S,
PCI_ANY_ID, PCI_ANY_ID, },
-#endif
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_SAT,
PCI_ANY_ID, PCI_ANY_ID, },
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_SAT_MID,
@@ -96,7 +90,6 @@ 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
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_PROTEUS_VF,
PCI_ANY_ID, PCI_ANY_ID, },
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_PROTEUS_PF,
@@ -107,23 +100,18 @@ const struct pci_device_id lpfc_id_table[] = {
PCI_ANY_ID, PCI_ANY_ID, },
{PCI_VENDOR_ID_SERVERENGINE, PCI_DEVICE_ID_TOMCAT,
PCI_ANY_ID, PCI_ANY_ID, },
-#endif
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_FALCON,
PCI_ANY_ID, PCI_ANY_ID, },
-#ifndef CONFIG_RHEL_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
{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,
PCI_ANY_ID, PCI_ANY_ID, },
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LANCER_FCOE_VF,
PCI_ANY_ID, PCI_ANY_ID, },
-#endif
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LANCER_G6_FC,
PCI_ANY_ID, PCI_ANY_ID, },
{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LANCER_G7_FC,
--
2.27.0

View File

@ -0,0 +1,32 @@
From b4fdb240a1102876c03e0dbbef57758550e6e334 Mon Sep 17 00:00:00 2001
From: Andrew Lukoshko <alukoshko@almalinux.org>
Date: Tue, 9 Apr 2024 17:35:14 +0000
Subject: [PATCH 2/3] Bring back deprecated pci ids to qla4xxx driver
---
drivers/scsi/qla4xxx/ql4_os.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/drivers/scsi/qla4xxx/ql4_os.c b/drivers/scsi/qla4xxx/ql4_os.c
index c72c44087..2dd7a9b0d 100644
--- a/drivers/scsi/qla4xxx/ql4_os.c
+++ b/drivers/scsi/qla4xxx/ql4_os.c
@@ -9865,7 +9865,6 @@ static struct pci_device_id qla4xxx_pci_tbl[] = {
.subvendor = PCI_ANY_ID,
.subdevice = PCI_ANY_ID,
},
-#ifndef CONFIG_RHEL_DIFFERENCES
{
.vendor = PCI_VENDOR_ID_QLOGIC,
.device = PCI_DEVICE_ID_QLOGIC_ISP8022,
@@ -9884,7 +9883,6 @@ static struct pci_device_id qla4xxx_pci_tbl[] = {
.subvendor = PCI_ANY_ID,
.subdevice = PCI_ANY_ID,
},
-#endif
{0, 0},
};
MODULE_DEVICE_TABLE(pci, qla4xxx_pci_tbl);
--
2.27.0

View File

@ -0,0 +1,30 @@
From 3c0cc7c69970a50fae40e8f6376fd50eb053db2d Mon Sep 17 00:00:00 2001
From: Andrew Lukoshko <alukoshko@almalinux.org>
Date: Tue, 9 Apr 2024 17:36:30 +0000
Subject: [PATCH 3/3] Bring back deprecated pci ids to be2iscsi driver
---
drivers/scsi/be2iscsi/be_main.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c
index 9079d4d83..3b4778ac4 100644
--- a/drivers/scsi/be2iscsi/be_main.c
+++ b/drivers/scsi/be2iscsi/be_main.c
@@ -384,13 +384,11 @@ 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
{ PCI_DEVICE(BE_VENDOR_ID, BE_DEVICE_ID1) },
{ PCI_DEVICE(BE_VENDOR_ID, BE_DEVICE_ID2) },
{ PCI_DEVICE(BE_VENDOR_ID, OC_DEVICE_ID1) },
{ PCI_DEVICE(BE_VENDOR_ID, OC_DEVICE_ID2) },
{ PCI_DEVICE(BE_VENDOR_ID, OC_DEVICE_ID3) },
-#endif
{ PCI_DEVICE(ELX_VENDOR_ID, OC_SKH_ID1) },
{ 0 }
};
--
2.27.0

BIN
SOURCES/almalinuxdup1.x509 Normal file

Binary file not shown.

BIN
SOURCES/almalinuxima.x509 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,54 @@
From b86dbf455d75ce54314efc826364259b8a87a8d0 Mon Sep 17 00:00:00 2001
From: Olga Kornievskaia <okorniev@redhat.com>
Date: Mon, 3 Mar 2025 12:09:08 -0500
Subject: [PATCH] NFSD: fix hang in nfsd4_shutdown_callback
JIRA: https://issues.redhat.com/browse/RHEL-81291
CVE: CVE-2025-21795
commit 036ac2778f7b28885814c6fbc07e156ad1624d03
Author: Dai Ngo <dai.ngo@oracle.com>
Date: Thu Jan 30 11:01:27 2025 -0800
NFSD: fix hang in nfsd4_shutdown_callback
If nfs4_client is in courtesy state then there is no point to send
the callback. This causes nfsd4_shutdown_callback to hang since
cl_cb_inflight is not 0. This hang lasts about 15 minutes until TCP
notifies NFSD that the connection was dropped.
This patch modifies nfsd4_run_cb_work to skip the RPC call if
nfs4_client is in courtesy state.
Signed-off-by: Dai Ngo <dai.ngo@oracle.com>
Fixes: 66af25799940 ("NFSD: add courteous server support for thread with only delegation")
Cc: stable@vger.kernel.org
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Olga Kornievskaia <okorniev@redhat.com>
---
fs/nfsd/nfs4callback.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/fs/nfsd/nfs4callback.c b/fs/nfsd/nfs4callback.c
index 0d7cc2f9a8e07..d8eed853d528d 100644
--- a/fs/nfsd/nfs4callback.c
+++ b/fs/nfsd/nfs4callback.c
@@ -1480,8 +1480,11 @@ nfsd4_run_cb_work(struct work_struct *work)
nfsd4_process_cb_update(cb);
clnt = clp->cl_cb_client;
- if (!clnt) {
- /* Callback channel broken, or client killed; give up: */
+ if (!clnt || clp->cl_state == NFSD4_COURTESY) {
+ /*
+ * Callback channel broken, client killed or
+ * nfs4_client in courtesy state; give up.
+ */
nfsd41_destroy_cb(cb);
return;
}
--
GitLab

View File

@ -509,8 +509,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SR_THERMAL is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3478,7 +3478,7 @@ CONFIG_MII=m
CONFIG_MISC_FILESYSTEMS=y
# CONFIG_MISC_RTSX_PCI is not set
# CONFIG_MISC_RTSX_USB is not set
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m

View File

@ -509,8 +509,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SR_THERMAL is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3457,7 +3457,7 @@ CONFIG_MII=m
CONFIG_MISC_FILESYSTEMS=y
# CONFIG_MISC_RTSX_PCI is not set
# CONFIG_MISC_RTSX_USB is not set
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m

View File

@ -507,8 +507,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SR_THERMAL is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3476,7 +3476,7 @@ CONFIG_MII=m
CONFIG_MISC_FILESYSTEMS=y
# CONFIG_MISC_RTSX_PCI is not set
# CONFIG_MISC_RTSX_USB is not set
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m

View File

@ -507,8 +507,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SR_THERMAL is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3455,7 +3455,7 @@ CONFIG_MII=m
CONFIG_MISC_FILESYSTEMS=y
# CONFIG_MISC_RTSX_PCI is not set
# CONFIG_MISC_RTSX_USB is not set
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m

View File

@ -518,8 +518,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SR_THERMAL is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3538,7 +3538,7 @@ CONFIG_MISC_FILESYSTEMS=y
# CONFIG_MISC_RTSX_PCI is not set
# CONFIG_MISC_RTSX_USB is not set
CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_DEBUG=y
CONFIG_MLX4_EN_DCB=y

View File

@ -518,8 +518,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SR_THERMAL is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3517,7 +3517,7 @@ CONFIG_MISC_FILESYSTEMS=y
# CONFIG_MISC_RTSX_PCI is not set
# CONFIG_MISC_RTSX_USB is not set
CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_DEBUG=y
CONFIG_MLX4_EN_DCB=y

View File

@ -516,8 +516,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SR_THERMAL is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3536,7 +3536,7 @@ CONFIG_MISC_FILESYSTEMS=y
# CONFIG_MISC_RTSX_PCI is not set
# CONFIG_MISC_RTSX_USB is not set
CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_DEBUG=y
CONFIG_MLX4_EN_DCB=y

View File

@ -516,8 +516,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SR_THERMAL is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3515,7 +3515,7 @@ CONFIG_MISC_FILESYSTEMS=y
# CONFIG_MISC_RTSX_PCI is not set
# CONFIG_MISC_RTSX_USB is not set
CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_DEBUG=y
CONFIG_MLX4_EN_DCB=y

View File

@ -356,8 +356,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SBA_RAID is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3153,7 +3153,7 @@ CONFIG_MINIX_SUBPARTITION=y
CONFIG_MISC_FILESYSTEMS=y
CONFIG_MISC_RTSX_PCI=m
CONFIG_MISC_RTSX_USB=m
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
CONFIG_MLX4_INFINIBAND=m

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -356,8 +356,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SBA_RAID is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3133,7 +3133,7 @@ CONFIG_MINIX_SUBPARTITION=y
CONFIG_MISC_FILESYSTEMS=y
CONFIG_MISC_RTSX_PCI=m
CONFIG_MISC_RTSX_USB=m
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
CONFIG_MLX4_INFINIBAND=m

View File

@ -355,8 +355,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SBA_RAID is not set
# CONFIG_BCM_VK is not set
# CONFIG_BE2ISCSI is not set
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3146,7 +3146,7 @@ CONFIG_MINIX_SUBPARTITION=y
CONFIG_MISC_FILESYSTEMS=y
# CONFIG_MISC_RTSX_PCI is not set
CONFIG_MISC_RTSX_USB=m
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
CONFIG_MLX4_INFINIBAND=m

View File

@ -355,8 +355,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SBA_RAID is not set
# CONFIG_BCM_VK is not set
# CONFIG_BE2ISCSI is not set
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3126,7 +3126,7 @@ CONFIG_MINIX_SUBPARTITION=y
CONFIG_MISC_FILESYSTEMS=y
# CONFIG_MISC_RTSX_PCI is not set
CONFIG_MISC_RTSX_USB=m
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
CONFIG_MLX4_INFINIBAND=m

View File

@ -358,8 +358,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SBA_RAID is not set
# CONFIG_BCM_VK is not set
# CONFIG_BE2ISCSI is not set
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3138,7 +3138,7 @@ CONFIG_MIGRATION=y
# CONFIG_MISC_FILESYSTEMS is not set
# CONFIG_MISC_RTSX_PCI is not set
CONFIG_MISC_RTSX_USB=m
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
CONFIG_MLX4_INFINIBAND=m

View File

@ -385,8 +385,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SBA_RAID is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3378,7 +3378,7 @@ CONFIG_MITIGATION_TSA=y
CONFIG_MITIGATION_UNRET_ENTRY=y
CONFIG_MITIGATION_VMSCAPE=y
# CONFIG_MK8 is not set
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
CONFIG_MLX4_INFINIBAND=m

View File

@ -385,8 +385,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SBA_RAID is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3358,7 +3358,7 @@ CONFIG_MITIGATION_TSA=y
CONFIG_MITIGATION_UNRET_ENTRY=y
CONFIG_MITIGATION_VMSCAPE=y
# CONFIG_MK8 is not set
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
CONFIG_MLX4_INFINIBAND=m

View File

@ -394,8 +394,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SBA_RAID is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3436,7 +3436,7 @@ CONFIG_MITIGATION_TSA=y
CONFIG_MITIGATION_UNRET_ENTRY=y
CONFIG_MITIGATION_VMSCAPE=y
# CONFIG_MK8 is not set
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_DEBUG=y
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m

View File

@ -394,8 +394,8 @@ CONFIG_BCMGENET=m
# CONFIG_BCM_SBA_RAID is not set
# CONFIG_BCM_VK is not set
CONFIG_BE2ISCSI=m
# CONFIG_BE2NET_BE2 is not set
# CONFIG_BE2NET_BE3 is not set
CONFIG_BE2NET_BE2=y
CONFIG_BE2NET_BE3=y
CONFIG_BE2NET_HWMON=y
CONFIG_BE2NET_LANCER=y
CONFIG_BE2NET=m
@ -3416,7 +3416,7 @@ CONFIG_MITIGATION_TSA=y
CONFIG_MITIGATION_UNRET_ENTRY=y
CONFIG_MITIGATION_VMSCAPE=y
# CONFIG_MK8 is not set
# CONFIG_MLX4_CORE_GEN2 is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_DEBUG=y
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m

View File

@ -0,0 +1,310 @@
From 3c806e795bf954e4dc28b75887a89095815325ed Mon Sep 17 00:00:00 2001
From: Andrew Lukoshko <alukoshko@almalinux.org>
Date: Sat, 17 May 2025 08:48:11 +0000
Subject: [PATCH] =?UTF-8?q?Bring=20back=20KVM=20support=20for=20PPC=C2=A7?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Backport of the following upstream commits:
524ab50336b1190547ceb8074260a1fbebfee0be
93b71801a8274cd9511557faf04365a5de487197
f771b55731fc82b1e8e9ef123f6f1b8d8c92bc63
---
Documentation/virt/kvm/api.rst | 14 ++++++++++++++
arch/powerpc/include/asm/kvm_ppc.h | 4 ----
arch/powerpc/include/asm/setup.h | 2 ++
arch/powerpc/kvm/book3s.c | 6 ++----
arch/powerpc/kvm/book3s_64_vio_hv.c | 2 +-
arch/powerpc/kvm/book3s_hv.c | 12 +++---------
arch/powerpc/kvm/book3s_pr.c | 2 --
arch/powerpc/kvm/booke.c | 2 --
arch/powerpc/kvm/powerpc.c | 21 +++++++++++++++++++--
arch/powerpc/platforms/pseries/setup.c | 13 ++++++++++++-
10 files changed, 53 insertions(+), 25 deletions(-)
diff --git a/Documentation/virt/kvm/api.rst b/Documentation/virt/kvm/api.rst
index 9f2f130c6..64aca1034 100644
--- a/Documentation/virt/kvm/api.rst
+++ b/Documentation/virt/kvm/api.rst
@@ -7735,6 +7735,20 @@ indicated by the fd to the VM this is called on.
This is intended to support intra-host migration of VMs between userspace VMMs,
upgrading the VMM process without interrupting the guest.
+7.30 KVM_CAP_PPC_AIL_MODE_3
+-------------------------------
+
+:Capability: KVM_CAP_PPC_AIL_MODE_3
+:Architectures: ppc
+:Type: vm
+
+This capability indicates that the kernel supports the mode 3 setting for the
+"Address Translation Mode on Interrupt" aka "Alternate Interrupt Location"
+resource that is controlled with the H_SET_MODE hypercall.
+
+This capability allows a guest kernel to use a better-performance mode for
+handling interrupts and system calls.
+
7.31 KVM_CAP_DISABLE_QUIRKS2
----------------------------
diff --git a/arch/powerpc/include/asm/kvm_ppc.h b/arch/powerpc/include/asm/kvm_ppc.h
index 254a41648..e16491011 100644
--- a/arch/powerpc/include/asm/kvm_ppc.h
+++ b/arch/powerpc/include/asm/kvm_ppc.h
@@ -199,12 +199,10 @@ extern void kvmppc_core_destroy_vm(struct kvm *kvm);
extern void kvmppc_core_free_memslot(struct kvm *kvm,
struct kvm_memory_slot *slot);
extern int kvmppc_core_prepare_memory_region(struct kvm *kvm,
- const struct kvm_userspace_memory_region *mem,
const struct kvm_memory_slot *old,
struct kvm_memory_slot *new,
enum kvm_mr_change change);
extern void kvmppc_core_commit_memory_region(struct kvm *kvm,
- const struct kvm_userspace_memory_region *mem,
struct kvm_memory_slot *old,
const struct kvm_memory_slot *new,
enum kvm_mr_change change);
@@ -274,12 +272,10 @@ struct kvmppc_ops {
int (*get_dirty_log)(struct kvm *kvm, struct kvm_dirty_log *log);
void (*flush_memslot)(struct kvm *kvm, struct kvm_memory_slot *memslot);
int (*prepare_memory_region)(struct kvm *kvm,
- const struct kvm_userspace_memory_region *mem,
const struct kvm_memory_slot *old,
struct kvm_memory_slot *new,
enum kvm_mr_change change);
void (*commit_memory_region)(struct kvm *kvm,
- const struct kvm_userspace_memory_region *mem,
struct kvm_memory_slot *old,
const struct kvm_memory_slot *new,
enum kvm_mr_change change);
diff --git a/arch/powerpc/include/asm/setup.h b/arch/powerpc/include/asm/setup.h
index 31f315223..1868e4a07 100644
--- a/arch/powerpc/include/asm/setup.h
+++ b/arch/powerpc/include/asm/setup.h
@@ -27,11 +27,13 @@ void setup_panic(void);
#define ARCH_PANIC_TIMEOUT 180
#ifdef CONFIG_PPC_PSERIES
+extern bool pseries_reloc_on_exception(void);
extern bool pseries_enable_reloc_on_exc(void);
extern void pseries_disable_reloc_on_exc(void);
extern void pseries_big_endian_exceptions(void);
extern void pseries_little_endian_exceptions(void);
#else
+static inline bool pseries_reloc_on_exception(void) { return false; }
static inline bool pseries_enable_reloc_on_exc(void) { return false; }
static inline void pseries_disable_reloc_on_exc(void) {}
static inline void pseries_big_endian_exceptions(void) {}
diff --git a/arch/powerpc/kvm/book3s.c b/arch/powerpc/kvm/book3s.c
index 64fd4b3ea..cb7b5f365 100644
--- a/arch/powerpc/kvm/book3s.c
+++ b/arch/powerpc/kvm/book3s.c
@@ -847,21 +847,19 @@ void kvmppc_core_flush_memslot(struct kvm *kvm, struct kvm_memory_slot *memslot)
}
int kvmppc_core_prepare_memory_region(struct kvm *kvm,
- const struct kvm_userspace_memory_region *mem,
const struct kvm_memory_slot *old,
struct kvm_memory_slot *new,
enum kvm_mr_change change)
{
- return kvm->arch.kvm_ops->prepare_memory_region(kvm, mem, old, new, change);
+ return kvm->arch.kvm_ops->prepare_memory_region(kvm, old, new, change);
}
void kvmppc_core_commit_memory_region(struct kvm *kvm,
- const struct kvm_userspace_memory_region *mem,
struct kvm_memory_slot *old,
const struct kvm_memory_slot *new,
enum kvm_mr_change change)
{
- kvm->arch.kvm_ops->commit_memory_region(kvm, mem, old, new, change);
+ kvm->arch.kvm_ops->commit_memory_region(kvm, old, new, change);
}
bool kvm_unmap_gfn_range(struct kvm *kvm, struct kvm_gfn_range *range)
diff --git a/arch/powerpc/kvm/book3s_64_vio_hv.c b/arch/powerpc/kvm/book3s_64_vio_hv.c
index f38dfe195..16e5872a1 100644
--- a/arch/powerpc/kvm/book3s_64_vio_hv.c
+++ b/arch/powerpc/kvm/book3s_64_vio_hv.c
@@ -488,7 +488,7 @@ long kvmppc_rm_h_put_tce_indirect(struct kvm_vcpu *vcpu,
/*
* used to check for invalidations in progress
*/
- mmu_seq = kvm->mmu_notifier_seq;
+ mmu_seq = kvm->mmu_invalidate_seq;
smp_rmb();
stt = kvmppc_find_table(vcpu->kvm, liobn);
diff --git a/arch/powerpc/kvm/book3s_hv.c b/arch/powerpc/kvm/book3s_hv.c
index 5b2530818..f6ce07b4b 100644
--- a/arch/powerpc/kvm/book3s_hv.c
+++ b/arch/powerpc/kvm/book3s_hv.c
@@ -4777,15 +4777,12 @@ static void kvmppc_core_free_memslot_hv(struct kvm_memory_slot *slot)
}
static int kvmppc_core_prepare_memory_region_hv(struct kvm *kvm,
- const struct kvm_userspace_memory_region *mem,
const struct kvm_memory_slot *old,
struct kvm_memory_slot *new,
enum kvm_mr_change change)
{
- unsigned long npages = mem->memory_size >> PAGE_SHIFT;
-
if (change == KVM_MR_CREATE) {
- new->arch.rmap = vzalloc(array_size(npages,
+ new->arch.rmap = vzalloc(array_size(new->npages,
sizeof(*new->arch.rmap)));
if (!new->arch.rmap)
return -ENOMEM;
@@ -4797,20 +4794,17 @@ static int kvmppc_core_prepare_memory_region_hv(struct kvm *kvm,
}
static void kvmppc_core_commit_memory_region_hv(struct kvm *kvm,
- const struct kvm_userspace_memory_region *mem,
struct kvm_memory_slot *old,
const struct kvm_memory_slot *new,
enum kvm_mr_change change)
{
- unsigned long npages = mem->memory_size >> PAGE_SHIFT;
-
/*
- * If we are making a new memslot, it might make
+ * If we are creating or modifying a memslot, it might make
* some address that was previously cached as emulated
* MMIO be no longer emulated MMIO, so invalidate
* all the caches of emulated MMIO translations.
*/
- if (npages)
+ if (change != KVM_MR_DELETE)
atomic64_inc(&kvm->arch.mmio_update);
/*
diff --git a/arch/powerpc/kvm/book3s_pr.c b/arch/powerpc/kvm/book3s_pr.c
index 48b48311a..6884c04f2 100644
--- a/arch/powerpc/kvm/book3s_pr.c
+++ b/arch/powerpc/kvm/book3s_pr.c
@@ -1892,7 +1892,6 @@ static void kvmppc_core_flush_memslot_pr(struct kvm *kvm,
}
static int kvmppc_core_prepare_memory_region_pr(struct kvm *kvm,
- const struct kvm_userspace_memory_region *mem,
const struct kvm_memory_slot *old,
struct kvm_memory_slot *new,
enum kvm_mr_change change)
@@ -1901,7 +1900,6 @@ static int kvmppc_core_prepare_memory_region_pr(struct kvm *kvm,
}
static void kvmppc_core_commit_memory_region_pr(struct kvm *kvm,
- const struct kvm_userspace_memory_region *mem,
struct kvm_memory_slot *old,
const struct kvm_memory_slot *new,
enum kvm_mr_change change)
diff --git a/arch/powerpc/kvm/booke.c b/arch/powerpc/kvm/booke.c
index b06ca6646..6cf2db284 100644
--- a/arch/powerpc/kvm/booke.c
+++ b/arch/powerpc/kvm/booke.c
@@ -1806,7 +1806,6 @@ void kvmppc_core_free_memslot(struct kvm *kvm, struct kvm_memory_slot *slot)
}
int kvmppc_core_prepare_memory_region(struct kvm *kvm,
- const struct kvm_userspace_memory_region *mem,
const struct kvm_memory_slot *old,
struct kvm_memory_slot *new,
enum kvm_mr_change change)
@@ -1815,7 +1814,6 @@ int kvmppc_core_prepare_memory_region(struct kvm *kvm,
}
void kvmppc_core_commit_memory_region(struct kvm *kvm,
- const struct kvm_userspace_memory_region *mem,
struct kvm_memory_slot *old,
const struct kvm_memory_slot *new,
enum kvm_mr_change change)
diff --git a/arch/powerpc/kvm/powerpc.c b/arch/powerpc/kvm/powerpc.c
index 818815e15..b89271923 100644
--- a/arch/powerpc/kvm/powerpc.c
+++ b/arch/powerpc/kvm/powerpc.c
@@ -662,6 +662,23 @@ int kvm_vm_ioctl_check_extension(struct kvm *kvm, long ext)
r = 1;
break;
#endif
+ case KVM_CAP_PPC_AIL_MODE_3:
+ r = 0;
+ /*
+ * KVM PR, POWER7, and some POWER9s don't support AIL=3 mode.
+ * The POWER9s can support it if the guest runs in hash mode,
+ * but QEMU doesn't necessarily query the capability in time.
+ */
+ if (hv_enabled) {
+ if (kvmhv_on_pseries()) {
+ if (pseries_reloc_on_exception())
+ r = 1;
+ } else if (cpu_has_feature(CPU_FTR_ARCH_207S) &&
+ !cpu_has_feature(CPU_FTR_P9_RADIX_PREFETCH_BUG)) {
+ r = 1;
+ }
+ }
+ break;
default:
r = 0;
break;
@@ -686,7 +703,7 @@ int kvm_arch_prepare_memory_region(struct kvm *kvm,
struct kvm_memory_slot *new,
enum kvm_mr_change change)
{
- return kvmppc_core_prepare_memory_region(kvm, mem, old, new, change);
+ return kvmppc_core_prepare_memory_region(kvm, old, new, change);
}
void kvm_arch_commit_memory_region(struct kvm *kvm,
@@ -694,7 +711,7 @@ void kvm_arch_commit_memory_region(struct kvm *kvm,
const struct kvm_memory_slot *new,
enum kvm_mr_change change)
{
- kvmppc_core_commit_memory_region(kvm, mem, old, new, change);
+ kvmppc_core_commit_memory_region(kvm, old, new, change);
}
void kvm_arch_flush_shadow_memslot(struct kvm *kvm,
diff --git a/arch/powerpc/platforms/pseries/setup.c b/arch/powerpc/platforms/pseries/setup.c
index f5c2718e2..1f7e535ab 100644
--- a/arch/powerpc/platforms/pseries/setup.c
+++ b/arch/powerpc/platforms/pseries/setup.c
@@ -367,6 +367,14 @@ static void pseries_lpar_idle(void)
pseries_idle_epilog();
}
+static bool pseries_reloc_on_exception_enabled;
+
+bool pseries_reloc_on_exception(void)
+{
+ return pseries_reloc_on_exception_enabled;
+}
+EXPORT_SYMBOL_GPL(pseries_reloc_on_exception);
+
/*
* Enable relocation on during exceptions. This has partition wide scope and
* may take a while to complete, if it takes longer than one second we will
@@ -391,6 +399,7 @@ bool pseries_enable_reloc_on_exc(void)
" on exceptions: %ld\n", rc);
return false;
}
+ pseries_reloc_on_exception_enabled = true;
return true;
}
@@ -418,7 +427,9 @@ void pseries_disable_reloc_on_exc(void)
break;
mdelay(get_longbusy_msecs(rc));
}
- if (rc != H_SUCCESS)
+ if (rc == H_SUCCESS)
+ pseries_reloc_on_exception_enabled = false;
+ else
pr_warn("Warning: Failed to disable relocation on exceptions: %ld\n",
rc);
}
--
2.43.5

View File

@ -5,9 +5,9 @@ prompt = no
x509_extensions = myexts
[ req_distinguished_name ]
O = The CentOS Project
CN = CentOS Stream kernel signing key
emailAddress = security@centos.org
O = AlmaLinux
CN = AlmaLinux kernel signing key
emailAddress = security@almalinux.org
[ myexts ]
basicConstraints=critical,CA:FALSE

View File

@ -5,9 +5,9 @@ prompt = no
x509_extensions = myexts
[ req_distinguished_name ]
O = Red Hat
CN = Red Hat Enterprise Linux kernel signing key
emailAddress = secalert@redhat.com
O = AlmaLinux
CN = AlmaLinux kernel signing key
emailAddress = security@almalinux.org
[ myexts ]
basicConstraints=critical,CA:FALSE

View File

@ -200,6 +200,8 @@ Summary: The Linux kernel
%define with_zfcpdump %{?_without_zfcpdump: 0} %{?!_without_zfcpdump: 1}
# kernel-64k (aarch64 kernel with 64K page_size)
%define with_arm64_64k %{?_without_arm64_64k: 0} %{?!_without_arm64_64k: 1}
# kernel-kvm ppc64le kernel with kvm support)
%define with_ppc_kvm %{?_without_ppc_kvm: 0} %{?!_without_ppc_kvm: 1}
# kernel-rt (x86_64 and aarch64 only PREEMPT_RT enabled kernel)
%define with_realtime %{?_without_realtime: 0} %{?!_without_realtime: 1}
# kernel-rt-64k (aarch64 RT kernel with 64K page_size)
@ -428,14 +430,14 @@ Summary: The Linux kernel
%define use_vdso 1
%endif
%ifnarch noarch
%ifnarch x86_64
%define with_kernel_abi_stablelists 0
%endif
# Overrides for generic default options
# only package docs noarch
%ifnarch noarch
%ifnarch x86_64
%define with_doc 0
%define doc_build_fail true
%endif
@ -476,6 +478,11 @@ Summary: The Linux kernel
%define with_realtime_arm64_64k 0
%endif
# kvm variant only for ppc64le
%ifnarch ppc64le
%define with_ppc_kvm 0
%endif
%if 0%{?fedora}
# This is not for Fedora
%define with_zfcpdump 0
@ -567,6 +574,7 @@ Summary: The Linux kernel
%define with_pae 0
%define with_zfcpdump 0
%define with_arm64_64k 0
%define with_ppc_kvm 0
%define with_realtime 0
%define with_realtime_arm64_64k 0
@ -809,19 +817,7 @@ Source2: kernel.changelog
%define secureboot_ca_0 %{_datadir}/pki/sb-certs/secureboot-ca-%{_arch}.cer
%define secureboot_key_0 %{_datadir}/pki/sb-certs/secureboot-kernel-%{_arch}.cer
%if 0%{?centos}
%define pesign_name_0 centossecureboot201
%else
%ifarch x86_64 aarch64
%define pesign_name_0 redhatsecureboot501
%endif
%ifarch s390x
%define pesign_name_0 redhatsecureboot302
%endif
%ifarch ppc64le
%define pesign_name_0 redhatsecureboot701
%endif
%endif
%define pesign_name_0 almalinuxsecurebootca0
# signkernel
%endif
@ -863,6 +859,10 @@ Source44: kernel-x86_64-rt-rhel.config
Source45: kernel-x86_64-rt-debug-rhel.config
Source46: kernel-aarch64-rt-rhel.config
Source47: kernel-aarch64-rt-debug-rhel.config
# PPC64le KVM support config
Source10001: kernel-ppc64le-kvm-rhel.config
Source10002: kernel-ppc64le-kvm-debug-rhel.config
Source48: kernel-aarch64-rt-64k-rhel.config
Source49: kernel-aarch64-rt-64k-debug-rhel.config
%endif
@ -902,11 +902,6 @@ Source84: mod-internal.list
Source85: mod-partner.list
Source86: mod-kvm.list
Source100: rheldup3.x509
Source101: rhelkpatch1.x509
Source102: rhelimaca1.x509
Source103: rhelima.x509
Source104: rhelima_centos.x509
Source105: nvidiagpuoot001.x509
%if 0%{?centos}
@ -955,6 +950,14 @@ Source4000: README.rst
Source4001: rpminspect.yaml
Source4002: gating.yaml
# AlmaLinux Source
Source100: almalinuxdup1.x509
Source101: almalinuxkpatch1.x509
Source102: almalinuximaca1.x509
Source103: almalinuxima.x509
Source104: almalinuxima.x509
Source106: almalinuxnvidia1.x509
## Patches needed for building this package
%if !%{nopatches}
@ -965,6 +968,18 @@ Patch1: patch-%{patchversion}-redhat.patch
# empty final patch to facilitate testing of kernel patches
Patch999999: linux-kernel-test.patch
# AlmaLinux Patch
Patch2001: 0001-Enable-all-disabled-pci-devices-by-moving-to-unmaint.patch
Patch2002: 0002-Bring-back-deprecated-pci-ids-to-mptsas-mptspi-drive.patch
Patch2003: 0003-Bring-back-deprecated-pci-ids-to-hpsa-driver.patch
Patch2004: 0004-Bring-back-deprecated-pci-ids-to-qla2xxx-driver.patch
Patch2005: 0005-Bring-back-deprecated-pci-ids-to-lpfc-driver.patch
Patch2006: 0006-Bring-back-deprecated-pci-ids-to-qla4xxx-driver.patch
Patch2007: 0007-Bring-back-deprecated-pci-ids-to-be2iscsi-driver.patch
Patch3001: b86dbf455d75ce54314efc826364259b8a87a8d0.patch
Patch11111: ppc64le-kvm-support.patch
# END OF PATCH DEFINITIONS
%description
@ -1004,6 +1019,7 @@ AutoProv: yes\
%package doc
Summary: Various documentation bits found in the kernel source
BuildArch: noarch
Group: Documentation
%description doc
This package contains documentation files from the kernel
@ -1212,11 +1228,12 @@ Summary: gcov graph and source files for coverage data collection.\
%{nil}
%package -n kernel-abi-stablelists
Summary: The Red Hat Enterprise Linux kernel ABI symbol stablelists
Summary: The AlmaLinux kernel ABI symbol stablelists
BuildArch: noarch
AutoReqProv: no
%description -n kernel-abi-stablelists
The kABI package contains information pertaining to the Red Hat Enterprise
Linux kernel ABI, including lists of kernel symbols that are needed by
The kABI package contains information pertaining to the AlmaLinux
kernel ABI, including lists of kernel symbols that are needed by
external Linux kernel modules, and a yum plugin to aid enforcement.
%if %{with_kabidw_base}
@ -1225,8 +1242,8 @@ Summary: The baseline dataset for kABI verification using DWARF data
Group: System Environment/Kernel
AutoReqProv: no
%description kernel-kabidw-base-internal
The package contains data describing the current ABI of the Red Hat Enterprise
Linux kernel, suitable for the kabi-dw tool.
The package contains data describing the current ABI of the AlmaLinux
kernel, suitable for the kabi-dw tool.
%endif
#
@ -1325,7 +1342,7 @@ Requires: kernel%{?1:-%{1}}-modules-core-uname-r = %{KVERREL}%{uname_suffix %{?1
AutoReq: no\
AutoProv: yes\
%description %{?1:%{1}-}modules-internal\
This package provides kernel modules for the %{?2:%{2} }kernel package for Red Hat internal usage.\
This package provides kernel modules for the %{?2:%{2} }kernel package for AlmaLinux internal usage.\
%{nil}
%if %{with_realtime} || %{with_realtime_arm64_64k}
@ -1447,6 +1464,11 @@ Provides: installonlypkg(kernel)\
Requires: kernel-core-uname-r = %{KVERREL}%{uname_variant %{?1:%{1}}}\
Requires: kernel-%{?1:%{1}-}-modules-core-uname-r = %{KVERREL}%{uname_variant %{?1:%{1}}}\
%endif\
%if "%{1}" == "rt" || "%{?1}" == ""\
Provides: almalinux(kernel-sig-key) = 202303\
Conflicts: shim-ia32 < 15.8-4.el9_3.alma.2\
Conflicts: shim-x64 < 15.8-4.el9_3.alma.2\
%endif\
%{expand:%%kernel_reqprovconf %{?1:%{1}} %{-o:%{-o}}}\
%if %{?1:1} %{!?1:0} \
%{expand:%%kernel_meta_package %{?1:%{1}}}\
@ -1535,6 +1557,29 @@ The kernel package contains a variant of the ARM64 Linux kernel using
a 64K page size.
%endif
%if %{with_ppc_kvm}
%define variant_summary The Linux kernel compiled for KVM usage on ppc64le
%kernel_variant_package kvm
%description kvm-core
The kernel package contains a variant of the PPC64le Linux kernel with
KVM support.
%endif
%if %{with_ppc_kvm} && %{with_debug}
%define variant_summary The Linux kernel compiled with extra debugging enabled
%if !%{debugbuildsenabled}
%kernel_variant_package -m kvm-debug
%else
%kernel_variant_package kvm-debug
%endif
%description kvm-debug-core
The debug kernel package contains a variant of the PPC64le Linux kernel with
KVM support.
This variant of the kernel has numerous debugging options enabled.
It should only be installed when trying to gather additional information
on kernel bugs, as some of these options impact performance noticably.
%endif
%if %{with_arm64_64k} && %{with_debug}
%define variant_summary The Linux kernel compiled with extra debugging enabled
%if !%{debugbuildsenabled}
@ -1702,6 +1747,16 @@ ApplyOptionalPatch patch-%{patchversion}-redhat.patch
ApplyOptionalPatch linux-kernel-test.patch
# Applying AlmaLinux Patch
ApplyPatch 0001-Enable-all-disabled-pci-devices-by-moving-to-unmaint.patch
ApplyPatch 0002-Bring-back-deprecated-pci-ids-to-mptsas-mptspi-drive.patch
ApplyPatch 0003-Bring-back-deprecated-pci-ids-to-hpsa-driver.patch
ApplyPatch 0004-Bring-back-deprecated-pci-ids-to-qla2xxx-driver.patch
ApplyPatch 0005-Bring-back-deprecated-pci-ids-to-lpfc-driver.patch
ApplyPatch 0006-Bring-back-deprecated-pci-ids-to-qla4xxx-driver.patch
ApplyPatch 0007-Bring-back-deprecated-pci-ids-to-be2iscsi-driver.patch
ApplyPatch b86dbf455d75ce54314efc826364259b8a87a8d0.patch
# END OF PATCH APPLICATIONS
# Any further pre-build tree manipulations happen here.
@ -1778,7 +1833,8 @@ openssl x509 -inform der -in %{SOURCE100} -out rheldup3.pem
openssl x509 -inform der -in %{SOURCE101} -out rhelkpatch1.pem
openssl x509 -inform der -in %{SOURCE102} -out rhelimaca1.pem
openssl x509 -inform der -in %{SOURCE105} -out nvidiagpuoot001.pem
cat rheldup3.pem rhelkpatch1.pem rhelimaca1.pem nvidiagpuoot001.pem > ../certs/rhel.pem
openssl x509 -inform der -in %{SOURCE106} -out almalinuxnvidia.pem
cat rheldup3.pem rhelkpatch1.pem rhelimaca1.pem nvidiagpuoot001.pem almalinuxnvidia.pem > ../certs/rhel.pem
%if %{signkernel}
%ifarch s390x ppc64le
openssl x509 -inform der -in %{secureboot_ca_0} -out secureboot.pem
@ -1794,7 +1850,7 @@ done
# Adjust FIPS module name for RHEL
%if 0%{?rhel}
for i in *.config; do
sed -i 's/CONFIG_CRYPTO_FIPS_NAME=.*/CONFIG_CRYPTO_FIPS_NAME="Red Hat Enterprise Linux %{rhel} - Kernel Cryptographic API"/' $i
sed -i 's/CONFIG_CRYPTO_FIPS_NAME=.*/CONFIG_CRYPTO_FIPS_NAME="AlmaLinux %{rhel} - Kernel Cryptographic API"/' $i
done
%endif
@ -1813,17 +1869,6 @@ RHJOBS=$RPM_BUILD_NCPUS PACKAGE_NAME=kernel ./process_configs.sh $OPTS ${specver
cp %{SOURCE82} .
RPM_SOURCE_DIR=$RPM_SOURCE_DIR ./update_scripts.sh %{primary_target}
# We may want to override files from the primary target in case of building
# against a flavour of it (eg. centos not rhel), thus override it here if
# necessary
if [ "%{primary_target}" == "rhel" ]; then
%if 0%{?centos}
echo "Updating scripts/sources to centos version"
RPM_SOURCE_DIR=$RPM_SOURCE_DIR ./update_scripts.sh centos
%else
echo "Not updating scripts/sources to centos version"
%endif
fi
# end of kernel config
%endif
@ -2016,9 +2061,6 @@ BuildKernel() {
exit 1
fi
mv vmlinuz.signed $SignImage
if [ "$KernelExtension" == "gz" ]; then
gzip -f9 $SignImage
fi
# signkernel
%endif
@ -2441,14 +2483,17 @@ BuildKernel() {
# RHEL/CentOS specific .SBAT entries
%if 0%{?centos}
SBATsuffix="centos"
SBATsuffix="rhel"
%else
SBATsuffix="rhel"
%endif
SBAT=$(cat <<- EOF
linux,1,Red Hat,linux,$KernelVer,mailto:secalert@redhat.com
linux,1,AlmaLinux,linux,$KernelVer,mailto:security@almalinux.org
linux.$SBATsuffix,1,Red Hat,linux,$KernelVer,mailto:secalert@redhat.com
linux.almalinux,1,AlmaLinux,linux,$KernelVer,mailto:security@almalinux.org
kernel-uki-virt.$SBATsuffix,1,Red Hat,kernel-uki-virt,$KernelVer,mailto:secalert@redhat.com
kernel-uki-virt.almalinux,1,AlmaLinux,kernel-uki-virt,$KernelVer,mailto:security@almalinux.org
EOF
)
@ -2476,9 +2521,9 @@ BuildKernel() {
%if %{signkernel}
%if 0%{?centos}
UKI_secureboot_name=centossecureboot204
UKI_secureboot_name=alsecureboot001
%else
UKI_secureboot_name=redhatsecureboot504
UKI_secureboot_name=alsecureboot001
%endif
UKI_secureboot_cert=%{_datadir}/pki/sb-certs/secureboot-uki-virt-%{_arch}.cer
@ -2579,7 +2624,7 @@ BuildKernel() {
# prune junk from kernel-devel
find $RPM_BUILD_ROOT/usr/src/kernels -name ".*.cmd" -delete
# Red Hat UEFI Secure Boot CA cert, which can be used to authenticate the kernel
# AlmaLinux UEFI Secure Boot CA cert, which can be used to authenticate the kernel
mkdir -p $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer
%if %{signkernel}
install -m 0644 %{secureboot_ca_0} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/kernel-signing-ca.cer
@ -2675,8 +2720,16 @@ BuildKernel %make_target %kernel_image %{_use_vdso} rt-64k
BuildKernel %make_target %kernel_image %{_use_vdso}
%endif
%if %{with_ppc_kvm}
git apply $RPM_SOURCE_DIR/ppc64le-kvm-support.patch
%if %{with_debug}
BuildKernel %make_target %kernel_image %{_use_vdso} kvm-debug
%endif
BuildKernel %make_target %kernel_image %{_use_vdso} kvm
%endif
%ifnarch noarch i686
%if !%{with_debug} && !%{with_zfcpdump} && !%{with_pae} && !%{with_up} && !%{with_arm64_64k} && !%{with_realtime} && !%{with_realtime_arm64_64k}
%if !%{with_debug} && !%{with_zfcpdump} && !%{with_pae} && !%{with_up} && !%{with_arm64_64k} && !%{with_realtime} && !%{with_ppc_kvm} && !%{with_realtime_arm64_64k}
# If only building the user space tools, then initialize the build environment
# and some variables so that the various userspace tools can be built.
InitBuildVars
@ -2846,6 +2899,12 @@ find Documentation -type d | xargs chmod u+w
if [ "%{with_arm64_64k}" -ne "0" ] && [ "%{with_debug}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign+64k-debug certs/signing_key.x509.sign+64k-debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+64k-debug/ \
fi \
if [ "%{with_ppc_kvm}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign+kvm certs/signing_key.x509.sign+kvm $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+kvm/ \
fi \
if [ "%{with_ppc_kvm}" -ne "0" ] && [ "%{with_debug}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign+kvm-debug certs/signing_key.x509.sign+kvm-debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+kvm-debug/ \
fi \
if [ "%{with_realtime}" -ne "0" ] && [ "%{with_debug}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign+rt-debug certs/signing_key.x509.sign+rt-debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+rt-debug/ \
fi \
@ -3413,6 +3472,16 @@ fi\
%kernel_variant_post -v 64k
%endif
%if %{with_ppc_kvm}
%kernel_variant_preun -v kvm
%kernel_variant_post -v kvm
%endif
%if %{with_ppc_kvm} && %{with_debug}
%kernel_variant_preun -v kvm-debug
%kernel_variant_post -v kvm-debug
%endif
%if %{with_debug} && %{with_arm64_64k}
%kernel_variant_preun -v 64k-debug
%kernel_variant_post -v 64k-debug
@ -3761,10 +3830,22 @@ fi
%files 64k-debug-modules
%files 64k-debug-modules-extra
%endif
%if %{with_ppc_kvm}
%files kvm-debug
%files kvm-debug-core
%files kvm-debug-devel
%files kvm-debug-devel-matched
%files kvm-debug-modules
%files kvm-debug-modules-extra
%endif
%endif
%kernel_variant_files %{use_vdso} %{with_pae} lpae
%kernel_variant_files %{_use_vdso} %{with_zfcpdump} zfcpdump
%kernel_variant_files %{_use_vdso} %{with_arm64_64k} 64k
%if %{with_ppc_kvm}
%kernel_variant_files %{_use_vdso} %{with_ppc_kvm} kvm
%kernel_variant_files %{_use_vdso} %{with_debug} kvm-debug
%endif
%kernel_variant_files %{_use_vdso} %{with_realtime_arm64_64k} rt-64k
%define kernel_variant_ipaclones(k:) \
@ -3785,6 +3866,23 @@ fi
#
#
%changelog
* Tue Nov 11 2025 Andrew Lukoshko <alukoshko@almalinux.org> - 5.14.0-570.62.1
- hpsa: bring back deprecated PCI ids #CFHack #CFHack2024
- mptsas: bring back deprecated PCI ids #CFHack #CFHack2024
- megaraid_sas: bring back deprecated PCI ids #CFHack #CFHack2024
- qla2xxx: bring back deprecated PCI ids #CFHack #CFHack2024
- qla4xxx: bring back deprecated PCI ids
- lpfc: bring back deprecated PCI ids
- be2iscsi: bring back deprecated PCI ids
- kernel/rh_messages.h: enable all disabled pci devices by moving to
unmaintained
- NFSD: fix hang in nfsd4_shutdown_callback
* Tue Nov 11 2025 Eduard Abdullin <eabdullin@almalinux.org> - 5.14.0-570.62.1
- Use AlmaLinux OS secure boot cert
- Debrand for AlmaLinux OS
- Add KVM support for ppc64le
* Mon Nov 03 2025 CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> [5.14.0-570.62.1.el9_6]
- redhat/configs: Enable CONFIG_MITIGATION_VMSCAPE for x86 (Waiman Long) [RHEL-114270]
- x86/vmscape: Add old Intel CPUs to affected list (Waiman Long) [RHEL-114270] {CVE-2025-40300}