From 1142e095bc063438fc9ee277a18d9c5f44a0da92 Mon Sep 17 00:00:00 2001 From: Eduard Abdullin Date: Thu, 25 Dec 2025 09:05:42 +0000 Subject: [PATCH] Debrand for AlmaLinux OS Use AlmaLinux OS secure boot cert Enable Btrfs support for all kernel variants 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 --- Makefile.rhelver | 4 +- kernel-x86_64-debug-rhel.config | 1 + kernel-x86_64-rhel.config | 1 + kernel-x86_64-rt-debug-rhel.config | 1 + kernel-x86_64-rt-rhel.config | 1 + kernel.changelog | 166 +++++++++++++++++++++++++ kernel.spec | 186 +++++++++++++++++++++++++++-- redhatsecureboot504.cer | Bin 964 -> 0 bytes sources | 6 +- 9 files changed, 351 insertions(+), 15 deletions(-) delete mode 100644 redhatsecureboot504.cer diff --git a/Makefile.rhelver b/Makefile.rhelver index e0a8e8c2a..e9afe906b 100644 --- a/Makefile.rhelver +++ b/Makefile.rhelver @@ -12,7 +12,7 @@ RHEL_MINOR = 2 # # Use this spot to avoid future merge conflicts. # Do not trim this comment. -RHEL_RELEASE = 174 +RHEL_RELEASE = 176 # # RHEL_REBASE_NUM @@ -55,6 +55,6 @@ ZSTREAM ?= no # # Represents the major and minor release used by automotive. # Primarily this is used to to identify the build target when -# building the kernel-automotive packages. +# building the automotive kernel package. AUTOMOTIVE_MAJOR = 2 AUTOMOTIVE_MINOR = 0 diff --git a/kernel-x86_64-debug-rhel.config b/kernel-x86_64-debug-rhel.config index 37252e48e..8229725ba 100644 --- a/kernel-x86_64-debug-rhel.config +++ b/kernel-x86_64-debug-rhel.config @@ -3860,6 +3860,7 @@ CONFIG_MICROCHIP_PHY=m CONFIG_MICROCHIP_T1_PHY=m # CONFIG_MICROCHIP_T1S_PHY is not set CONFIG_MICROCODE_AMD=y +# CONFIG_MICROCODE_DBG is not set CONFIG_MICROCODE_INTEL=y # CONFIG_MICROCODE_LATE_LOADING is not set CONFIG_MICROCODE=y diff --git a/kernel-x86_64-rhel.config b/kernel-x86_64-rhel.config index da16a6ccc..e7ed30ce9 100644 --- a/kernel-x86_64-rhel.config +++ b/kernel-x86_64-rhel.config @@ -3840,6 +3840,7 @@ CONFIG_MICROCHIP_PHY=m CONFIG_MICROCHIP_T1_PHY=m # CONFIG_MICROCHIP_T1S_PHY is not set CONFIG_MICROCODE_AMD=y +# CONFIG_MICROCODE_DBG is not set CONFIG_MICROCODE_INTEL=y # CONFIG_MICROCODE_LATE_LOADING is not set CONFIG_MICROCODE=y diff --git a/kernel-x86_64-rt-debug-rhel.config b/kernel-x86_64-rt-debug-rhel.config index 57354e0b6..0f20c93ae 100644 --- a/kernel-x86_64-rt-debug-rhel.config +++ b/kernel-x86_64-rt-debug-rhel.config @@ -3901,6 +3901,7 @@ CONFIG_MICROCHIP_PHY=m CONFIG_MICROCHIP_T1_PHY=m # CONFIG_MICROCHIP_T1S_PHY is not set CONFIG_MICROCODE_AMD=y +# CONFIG_MICROCODE_DBG is not set CONFIG_MICROCODE_INTEL=y # CONFIG_MICROCODE_LATE_LOADING is not set CONFIG_MICROCODE=y diff --git a/kernel-x86_64-rt-rhel.config b/kernel-x86_64-rt-rhel.config index 2f67adc4a..da5a153c9 100644 --- a/kernel-x86_64-rt-rhel.config +++ b/kernel-x86_64-rt-rhel.config @@ -3881,6 +3881,7 @@ CONFIG_MICROCHIP_PHY=m CONFIG_MICROCHIP_T1_PHY=m # CONFIG_MICROCHIP_T1S_PHY is not set CONFIG_MICROCODE_AMD=y +# CONFIG_MICROCODE_DBG is not set CONFIG_MICROCODE_INTEL=y # CONFIG_MICROCODE_LATE_LOADING is not set CONFIG_MICROCODE=y diff --git a/kernel.changelog b/kernel.changelog index 538d10fd8..62468beff 100644 --- a/kernel.changelog +++ b/kernel.changelog @@ -1,3 +1,168 @@ +* Thu Dec 18 2025 CKI KWF Bot [6.12.0-176.el10] +- redhat/kernel.spec.template: Let kernel-modules installation rebuild initrd in UKI system (Li Tian) [RHEL-134892] +- selftests: netfilter: Ignore tainted kernels in interface stress test (Phil Sutter) [RHEL-108859] +- selftests: netfilter: Fix skip of wildcard interface test (Phil Sutter) [RHEL-108859] +- selftests: netfilter: Torture nftables netdev hooks (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Introduce NFTA_DEVICE_PREFIX (Phil Sutter) [RHEL-108859] +- netfilter: nfnetlink_hook: Dump flowtable info (Phil Sutter) [RHEL-108859] +- netfilter: nfnetlink: New NFNLA_HOOK_INFO_DESC helper (Phil Sutter) [RHEL-108859] +- Revert "netfilter: nf_tables: Add notifications for hook changes" (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Add notifications for hook changes (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Support wildcard netdev hook specs (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Sort labels in nft_netdev_hook_alloc() (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Handle NETDEV_CHANGENAME events (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Wrap netdev notifiers (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Respect NETDEV_REGISTER events (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Prepare for handling NETDEV_REGISTER events (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Have a list of nf_hook_ops in nft_hook (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Pass nf_hook_ops to nft_unregister_flowtable_hook() (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Introduce nft_register_flowtable_ops() (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Introduce nft_hook_find_ops{,_rcu}() (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Simplify chain netdev notifier (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Tolerate chains with no remaining hooks (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Compare netdev hooks based on stored name (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Use stored ifname in netdev hook dumps (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Store user-defined hook ifname (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Flowtable hook's pf value never varies (Phil Sutter) [RHEL-108859] +- x86/microcode/AMD: Select which microcode patch to load (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Add Zen5 model 0x44, stepping 0x1 minrev (Waiman Long) [RHEL-124710] +- x86/microcode: Mark early_parse_cmdline() as __init (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Add more known models to entry sign checking (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Limit Entrysign signature checking to known generations (Waiman Long) [RHEL-124710] +- x86/microcode: Fix Entrysign revision check for Zen1/Naples (Waiman Long) [RHEL-124710] +- redhat/configs: Add CONFIG_MICROCODE_DBG [=n] (Waiman Long) [RHEL-124710] +- x86/microcode: Add microcode loader debugging functionality (Waiman Long) [RHEL-124710] +- x86/microcode: Add microcode= cmdline parsing (Waiman Long) [RHEL-124710] +- x86/microcode/intel: Refresh the revisions that determine old_microcode (Waiman Long) [RHEL-124710] +- x86/microcode: Move away from using a fake platform device (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Do not return error when microcode update is not necessary (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Use sha256() instead of init/update/final (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Clean the cache if update did not load microcode (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Extend the SHA check to Zen5, block loading of any unreleased standalone Zen5 microcode patches (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Make __verify_patch_size() return bool (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Remove bogus comment from parse_container() (Waiman Long) [RHEL-124710] +- octeon_ep: Validate the VF ID (Kamal Heib) [RHEL-116103] +- octeon_ep: fix VF MAC address lifecycle handling (Kamal Heib) [RHEL-116104] +Resolves: RHEL-108859, RHEL-116103, RHEL-116104, RHEL-124710, RHEL-134892 + +* Wed Dec 17 2025 CKI KWF Bot [6.12.0-175.el10] +- redhat/self-test: refresh with new automotive variables (Scott Weaver) +- automotive: add configurable package name and disttag variables (Scott Weaver) +- PCI: endpoint: pci-epf-test: Fix doorbell test support (Myron Stowe) [RHEL-107898] +- PCI: qcom: Restrict port parsing only to PCIe bridge child nodes (Myron Stowe) [RHEL-107898] +- PCI: rcar-host: Pass proper IRQ domain to generic_handle_domain_irq() (Myron Stowe) [RHEL-107898] +- misc: pci_endpoint_test: Fix array underflow in pci_endpoint_test_ioctl() (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Return negative -EINVAL in xgene_msi_handler_setup() (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-ep-msi: Fix NULL vs IS_ERR() check in pci_epf_write_msi_msg() (Myron Stowe) [RHEL-107898] +- PCI: xilinx: Fix NULL pointer dereference in xilinx_pcie_intr_handler() (Myron Stowe) [RHEL-107898] +- PCI: Fix typos (Myron Stowe) [RHEL-107898] +- PCI: hotplug: Remove TODO about unused .get_power(), .hardware_test() (Myron Stowe) [RHEL-107898] +- cpu/hotplug: Remove unused cpuhp_state CPUHP_PCI_XGENE_DEAD (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Restructure handler setup/teardown (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Probe as a standard platform driver (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Resend an MSI racing with itself on a different CPU (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Sanitise MSI allocation and affinity setting (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Get rid of intermediate tracking structure (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Use device-managed memory allocations (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Drop superfluous fields from xgene_msi structure (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Make per-CPU interrupt setup robust (Myron Stowe) [RHEL-107898] +- PCI: xgene: Drop XGENE_PCIE_IP_VER_UNKN (Myron Stowe) [RHEL-107898] +- PCI: xgene: Drop useless conditional compilation (Myron Stowe) [RHEL-107898] +- PCI: xgene: Defer probing if the MSI widget driver hasn't probed yet (Myron Stowe) [RHEL-107898] +- PCI: rockchip-host: Remove unused header includes (Myron Stowe) [RHEL-107898] +- PCI: rockchip-host: Correct non-fatal error log message (Myron Stowe) [RHEL-107898] +- PCI: rockchip-host: Fix "Unexpected Completion" log message (Myron Stowe) [RHEL-107898] +- PCI: rockchip: Set Target Link Speed to 5.0 GT/s before retraining (Myron Stowe) [RHEL-107898] +- PCI: rockchip: Use standard PCIe definitions (Myron Stowe) [RHEL-107898] +- PCI: rockchip: Remove redundant PCIe message routing definitions (Myron Stowe) [RHEL-107898] +- PCI: qcom: Add support for parsing the new Root Port binding (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom: Move PHY & reset GPIO to Root Port node (Myron Stowe) [RHEL-107898] +- PCI: qcom: Add support for Qualcomm SA8255p based PCIe Root Complex (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom,pcie-sa8255p: Document ECAM compliant PCIe root complex (Myron Stowe) [RHEL-107898] +- PCI: host-generic: Rename and export gen_pci_init() for PCIe controller drivers (Myron Stowe) [RHEL-107898] +- PCI: dwc: Export DWC MSI controller related APIs (Myron Stowe) [RHEL-107898] +- PCI: mvebu: Use devm_add_action_or_reset() instead of devm_add_action() (Myron Stowe) [RHEL-107898] +- PCI: imx6: Delay link start until configfs 'start' written (Myron Stowe) [RHEL-107898] +- PCI: imx6: Remove apps_reset toggling from imx_pcie_{assert/deassert}_core_reset (Myron Stowe) [RHEL-107898] +- PCI: imx6: Add LUT configuration for MSI/IOMMU in Endpoint mode (Myron Stowe) [RHEL-107898] +- PCI: imx6: Add helper function imx_pcie_add_lut_by_rid() (Myron Stowe) [RHEL-107898] +- PCI: imx6: Add IMX8MM_EP and IMX8MP_EP fixed 256-byte BAR 4 in epc_features (Myron Stowe) [RHEL-107898] +- PCI: imx6: Add IMX8MQ_EP third 64-bit BAR in epc_features (Myron Stowe) [RHEL-107898] +- PCI: dw-rockchip: Delay link training after hot reset in EP mode (Myron Stowe) [RHEL-107898] +- PCI: cadence: Replace private message routing enums with PCI core definitions (Myron Stowe) [RHEL-107898] +- PCI: brcmstb: Replace open coded value with PCIE_T_RRS_READY_MS (Myron Stowe) [RHEL-107898] +- MAINTAINERS: Drop Nicolas from maintaining pcie-brcmstb (Myron Stowe) [RHEL-107898] +- PCI: brcmstb: Set MLW based on "num-lanes" DT property if present (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: brcm,stb-pcie: Add num-lanes property (Myron Stowe) [RHEL-107898] +- PCI: Move link up wait time and max retries macros to pci.h (Myron Stowe) [RHEL-107898] +- PCI: dwc: Ensure that dw_pcie_wait_for_link() waits 100 ms after link up (Myron Stowe) [RHEL-107898] +- PCI: qcom: Wait PCIE_RESET_CONFIG_WAIT_MS after link-up IRQ (Myron Stowe) [RHEL-107898] +- PCI: dw-rockchip: Wait PCIE_RESET_CONFIG_WAIT_MS after link-up IRQ (Myron Stowe) [RHEL-107898] +- PCI: rockchip-host: Use macro PCIE_RESET_CONFIG_WAIT_MS (Myron Stowe) [RHEL-107898] +- PCI: Rename PCIE_RESET_CONFIG_DEVICE_WAIT_MS to PCIE_RESET_CONFIG_WAIT_MS (Myron Stowe) [RHEL-107898] +- PCI: vmd: Remove MSI-X check on child devices (Myron Stowe) [RHEL-107898] +- PCI: vmd: Fix wrong kfree() in vmd_msi_free() (Myron Stowe) [RHEL-107898] +- PCI: vmd: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: vmd: Convert to lock guards (Myron Stowe) [RHEL-107898] +- PCI: plda: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: xilinx: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: xilinx-nwl: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: xilinx-xdma: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: rcar-host: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: mediatek: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: mediatek-gen3: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: iproc: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: brcmstb: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: altera-msi: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: aardvark: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: mobiveil: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: dwc: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: controller: Use dev_fwnode() instead of of_fwnode_handle() (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-epf-vntb: Fix the incorrect usage of __iomem attribute (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-epf-vntb: Allow BAR assignment via configfs (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-epf-vntb: Align MW naming with config names (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-epf-vntb: Return -ENOENT if pci_epc_get_next_free_bar() fails (Myron Stowe) [RHEL-107898] +- selftests: pci_endpoint: Add doorbell test case (Myron Stowe) [RHEL-107898] +- misc: pci_endpoint_test: Add doorbell test case (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-epf-test: Add doorbell test support (Myron Stowe) [RHEL-107898] +- PCI: endpoint: Add pci_epf_align_inbound_addr() helper for inbound address alignment (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-ep-msi: Add checks for MSI parent and mutability (Myron Stowe) [RHEL-107898] +- PCI: endpoint: Add RC-to-EP doorbell support using platform MSI controller (Myron Stowe) [RHEL-107898] +- PCI: endpoint: Fix configfs group removal on driver teardown (Myron Stowe) [RHEL-107898] +- PCI: endpoint: Fix configfs group list head handling (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom,pcie-sa8775p: Document 'link_down' reset (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: Remove 83xx-512x-pci.txt (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: Convert amazon,al-alpine-v[23]-pcie to DT schema (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: Convert marvell,armada-3700-pcie to DT schema (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: Convert apm,xgene-pcie to DT schema (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: Convert axis,artpec6-pcie to DT schema (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: Convert st,spear1340-pcie to DT schema (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom,pcie-sm8150: Drop unrelated clocks from PCIe hosts (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom,pcie-sc8180x: Drop unrelated clocks from PCIe hosts (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: pci-ep: Extend max-link-speed to PCIe Gen5/Gen6 (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom,pcie-sa8775p: Document QCS8300 (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom,pcie-sm8150: Document QCS615 (Myron Stowe) [RHEL-107898] +- PCI/pwrctrl: Fix the kerneldoc tag for private fields (Myron Stowe) [RHEL-107898] +- PCI: Move is_pciehp check out of pciehp_is_native() (Myron Stowe) [RHEL-107898] +- PCI: pciehp: Use is_pciehp instead of is_hotplug_bridge (Myron Stowe) [RHEL-107898] +- PCI/portdrv: Use is_pciehp instead of is_hotplug_bridge (Myron Stowe) [RHEL-107898] +- PCI/ACPI: Fix runtime PM ref imbalance on Hot-Plug Capable ports (Myron Stowe) [RHEL-107898] +- PCI: Support Immediate Readiness on devices without PM capabilities (Myron Stowe) [RHEL-107898] +- PCI: Allow built-in drivers to use async initial probing (Myron Stowe) [RHEL-107898] +- PCI: Adjust the position of reading the Link Control 2 register (Myron Stowe) [RHEL-107898] +- PCI: Fix link speed calculation on retrain failure (Myron Stowe) [RHEL-107898] +- PCI: Extend isolated function probing to LoongArch (Myron Stowe) [RHEL-107898] +- PCI/ASPM: Consolidate variable declaration and initialization (Myron Stowe) [RHEL-107898] +- PCI/ASPM: Use boolean type for aspm_disabled and aspm_force (Myron Stowe) [RHEL-107898] +- PCI/AER: Add message when AER_MAX_MULTI_ERR_DEVICES limit is hit (Myron Stowe) [RHEL-107898] +- PCI/AER: Use bool for AER disable state tracking (Myron Stowe) [RHEL-107898] +- net: Prevent use after free in netif_napi_set_irq_locked() (Petr Oros) [RHEL-83024] +- net: move aRFS rmap management and CPU affinity to core (Petr Oros) [RHEL-83024] +- arm64: kprobes: check the return value of set_memory_rox() (Marcin Juszkiewicz) [RHEL-122954] +- arm64: kprobes: call set_memory_rox() for kprobe page (Marcin Juszkiewicz) [RHEL-122954] +- audit: fix out-of-bounds read in audit_compare_dname_path() (CKI Backport Bot) [RHEL-119187] {CVE-2025-39840} +Resolves: RHEL-107898, RHEL-119187, RHEL-122954, RHEL-83024 + * Tue Dec 16 2025 CKI KWF Bot [6.12.0-174.el10] - Revert "arm64: acpi: Enable ACPI CCEL support" (Gavin Shan) [RHEL-135143] - platform/x86/amd/hsmp: Replace amd_num_nodes() with topology_max_packages() (Steve Best) [RHEL-117573] @@ -33019,3 +33184,4 @@ Resolves: RHEL-56700 - serial: 8250: Switch to nbcon console (John Ogness) - Linux v6.12-rc4 Resolves: RHEL-56700 + diff --git a/kernel.spec b/kernel.spec index 0dc842dad..afbe3fd63 100644 --- a/kernel.spec +++ b/kernel.spec @@ -176,15 +176,15 @@ Summary: The Linux kernel %define specrpmversion 6.12.0 %define specversion 6.12.0 %define patchversion 6.12 -%define pkgrelease 174 +%define pkgrelease 176 %define kversion 6 -%define tarfile_release 6.12.0-174.el10 +%define tarfile_release 6.12.0-176.el10 # This is needed to do merge window version magic %define patchlevel 12 # This allows pkg_release to have configurable %%{?dist} tag -%define specrelease 174%{?buildid}%{?dist} +%define specrelease 176%{?buildid}%{?dist} # This defines the kabi tarball version -%define kabiversion 6.12.0-174.el10 +%define kabiversion 6.12.0-176.el10 # If this variable is set to 1, a bpf selftests build failure will cause a # fatal kernel package build error @@ -1027,6 +1027,7 @@ Source87: flavors Source151: uki_create_addons.py Source152: uki_addons.json + Source102: nvidiagpuoot001.x509 %if 0%{?fedora}%{?eln} @@ -3946,7 +3947,9 @@ fi\ %define kernel_modules_post() \ %{expand:%%post %{?1:%{1}-}modules}\ /sbin/depmod -a %{KVERREL}%{?1:+%{1}}\ -if [ ! -f %{_localstatedir}/lib/rpm-state/%{name}/installing_core_%{KVERREL}%{?1:+%{1}} ]; then\ +if [ -f /lib/modules/%{KVERREL}%{?1:+%{1}}/vmlinuz ] &&\ +[ -f /boot/initramfs-%{KVERREL}%{?1:+%{1}}.img ] &&\ +[ ! -f %{_localstatedir}/lib/rpm-state/%{name}/installing_core_%{KVERREL}%{?1:+%{1}} ]; then\ mkdir -p %{_localstatedir}/lib/rpm-state/%{name}\ touch %{_localstatedir}/lib/rpm-state/%{name}/need_to_run_dracut_%{KVERREL}%{?1:+%{1}}\ fi\ @@ -3957,8 +3960,8 @@ fi\ %{expand:%%posttrans %{?1:%{1}-}modules}\ if [ -f %{_localstatedir}/lib/rpm-state/%{name}/need_to_run_dracut_%{KVERREL}%{?1:+%{1}} ]; then\ rm -f %{_localstatedir}/lib/rpm-state/%{name}/need_to_run_dracut_%{KVERREL}%{?1:+%{1}}\ - echo "Running: dracut -f --kver %{KVERREL}%{?1:+%{1}}"\ - dracut -f --kver "%{KVERREL}%{?1:+%{1}}" || exit $?\ + echo "Running: dracut -f --kver %{KVERREL}%{?1:+%{1}} /boot/initramfs-%{KVERREL}%{?1:+%{1}}.img"\ + dracut -f --kver "%{KVERREL}%{?1:+%{1}}" /boot/initramfs-%{KVERREL}%{?1:+%{1}}.img || exit $?\ fi\ %{nil} @@ -4510,14 +4513,14 @@ fi\ # # %changelog -* Tue Dec 16 2025 Eduard Abdullin - 6.12.0-174 +* Thu Dec 25 2025 Eduard Abdullin - 6.12.0-176 - Debrand for AlmaLinux OS - Use AlmaLinux OS secure boot cert -* Tue Dec 16 2025 Neal Gompa - 6.12.0-174 +* Thu Dec 25 2025 Neal Gompa - 6.12.0-176 - Enable Btrfs support for all kernel variants -* Tue Dec 16 2025 Andrew Lukoshko - 6.12.0-174 +* Thu Dec 25 2025 Andrew Lukoshko - 6.12.0-176 - 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 @@ -4528,6 +4531,169 @@ fi\ - kernel/rh_messages.h: enable all disabled pci devices by moving to unmaintained +* Thu Dec 18 2025 CKI KWF Bot [6.12.0-176.el10] +- redhat/kernel.spec.template: Let kernel-modules installation rebuild initrd in UKI system (Li Tian) [RHEL-134892] +- selftests: netfilter: Ignore tainted kernels in interface stress test (Phil Sutter) [RHEL-108859] +- selftests: netfilter: Fix skip of wildcard interface test (Phil Sutter) [RHEL-108859] +- selftests: netfilter: Torture nftables netdev hooks (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Introduce NFTA_DEVICE_PREFIX (Phil Sutter) [RHEL-108859] +- netfilter: nfnetlink_hook: Dump flowtable info (Phil Sutter) [RHEL-108859] +- netfilter: nfnetlink: New NFNLA_HOOK_INFO_DESC helper (Phil Sutter) [RHEL-108859] +- Revert "netfilter: nf_tables: Add notifications for hook changes" (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Add notifications for hook changes (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Support wildcard netdev hook specs (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Sort labels in nft_netdev_hook_alloc() (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Handle NETDEV_CHANGENAME events (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Wrap netdev notifiers (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Respect NETDEV_REGISTER events (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Prepare for handling NETDEV_REGISTER events (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Have a list of nf_hook_ops in nft_hook (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Pass nf_hook_ops to nft_unregister_flowtable_hook() (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Introduce nft_register_flowtable_ops() (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Introduce nft_hook_find_ops{,_rcu}() (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Simplify chain netdev notifier (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Tolerate chains with no remaining hooks (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Compare netdev hooks based on stored name (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Use stored ifname in netdev hook dumps (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Store user-defined hook ifname (Phil Sutter) [RHEL-108859] +- netfilter: nf_tables: Flowtable hook's pf value never varies (Phil Sutter) [RHEL-108859] +- x86/microcode/AMD: Select which microcode patch to load (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Add Zen5 model 0x44, stepping 0x1 minrev (Waiman Long) [RHEL-124710] +- x86/microcode: Mark early_parse_cmdline() as __init (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Add more known models to entry sign checking (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Limit Entrysign signature checking to known generations (Waiman Long) [RHEL-124710] +- x86/microcode: Fix Entrysign revision check for Zen1/Naples (Waiman Long) [RHEL-124710] +- redhat/configs: Add CONFIG_MICROCODE_DBG [=n] (Waiman Long) [RHEL-124710] +- x86/microcode: Add microcode loader debugging functionality (Waiman Long) [RHEL-124710] +- x86/microcode: Add microcode= cmdline parsing (Waiman Long) [RHEL-124710] +- x86/microcode/intel: Refresh the revisions that determine old_microcode (Waiman Long) [RHEL-124710] +- x86/microcode: Move away from using a fake platform device (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Do not return error when microcode update is not necessary (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Use sha256() instead of init/update/final (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Clean the cache if update did not load microcode (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Extend the SHA check to Zen5, block loading of any unreleased standalone Zen5 microcode patches (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Make __verify_patch_size() return bool (Waiman Long) [RHEL-124710] +- x86/microcode/AMD: Remove bogus comment from parse_container() (Waiman Long) [RHEL-124710] +- octeon_ep: Validate the VF ID (Kamal Heib) [RHEL-116103] +- octeon_ep: fix VF MAC address lifecycle handling (Kamal Heib) [RHEL-116104] + +* Wed Dec 17 2025 CKI KWF Bot [6.12.0-175.el10] +- redhat/self-test: refresh with new automotive variables (Scott Weaver) +- automotive: add configurable package name and disttag variables (Scott Weaver) +- PCI: endpoint: pci-epf-test: Fix doorbell test support (Myron Stowe) [RHEL-107898] +- PCI: qcom: Restrict port parsing only to PCIe bridge child nodes (Myron Stowe) [RHEL-107898] +- PCI: rcar-host: Pass proper IRQ domain to generic_handle_domain_irq() (Myron Stowe) [RHEL-107898] +- misc: pci_endpoint_test: Fix array underflow in pci_endpoint_test_ioctl() (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Return negative -EINVAL in xgene_msi_handler_setup() (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-ep-msi: Fix NULL vs IS_ERR() check in pci_epf_write_msi_msg() (Myron Stowe) [RHEL-107898] +- PCI: xilinx: Fix NULL pointer dereference in xilinx_pcie_intr_handler() (Myron Stowe) [RHEL-107898] +- PCI: Fix typos (Myron Stowe) [RHEL-107898] +- PCI: hotplug: Remove TODO about unused .get_power(), .hardware_test() (Myron Stowe) [RHEL-107898] +- cpu/hotplug: Remove unused cpuhp_state CPUHP_PCI_XGENE_DEAD (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Restructure handler setup/teardown (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Probe as a standard platform driver (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Resend an MSI racing with itself on a different CPU (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Sanitise MSI allocation and affinity setting (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Get rid of intermediate tracking structure (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Use device-managed memory allocations (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Drop superfluous fields from xgene_msi structure (Myron Stowe) [RHEL-107898] +- PCI: xgene-msi: Make per-CPU interrupt setup robust (Myron Stowe) [RHEL-107898] +- PCI: xgene: Drop XGENE_PCIE_IP_VER_UNKN (Myron Stowe) [RHEL-107898] +- PCI: xgene: Drop useless conditional compilation (Myron Stowe) [RHEL-107898] +- PCI: xgene: Defer probing if the MSI widget driver hasn't probed yet (Myron Stowe) [RHEL-107898] +- PCI: rockchip-host: Remove unused header includes (Myron Stowe) [RHEL-107898] +- PCI: rockchip-host: Correct non-fatal error log message (Myron Stowe) [RHEL-107898] +- PCI: rockchip-host: Fix "Unexpected Completion" log message (Myron Stowe) [RHEL-107898] +- PCI: rockchip: Set Target Link Speed to 5.0 GT/s before retraining (Myron Stowe) [RHEL-107898] +- PCI: rockchip: Use standard PCIe definitions (Myron Stowe) [RHEL-107898] +- PCI: rockchip: Remove redundant PCIe message routing definitions (Myron Stowe) [RHEL-107898] +- PCI: qcom: Add support for parsing the new Root Port binding (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom: Move PHY & reset GPIO to Root Port node (Myron Stowe) [RHEL-107898] +- PCI: qcom: Add support for Qualcomm SA8255p based PCIe Root Complex (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom,pcie-sa8255p: Document ECAM compliant PCIe root complex (Myron Stowe) [RHEL-107898] +- PCI: host-generic: Rename and export gen_pci_init() for PCIe controller drivers (Myron Stowe) [RHEL-107898] +- PCI: dwc: Export DWC MSI controller related APIs (Myron Stowe) [RHEL-107898] +- PCI: mvebu: Use devm_add_action_or_reset() instead of devm_add_action() (Myron Stowe) [RHEL-107898] +- PCI: imx6: Delay link start until configfs 'start' written (Myron Stowe) [RHEL-107898] +- PCI: imx6: Remove apps_reset toggling from imx_pcie_{assert/deassert}_core_reset (Myron Stowe) [RHEL-107898] +- PCI: imx6: Add LUT configuration for MSI/IOMMU in Endpoint mode (Myron Stowe) [RHEL-107898] +- PCI: imx6: Add helper function imx_pcie_add_lut_by_rid() (Myron Stowe) [RHEL-107898] +- PCI: imx6: Add IMX8MM_EP and IMX8MP_EP fixed 256-byte BAR 4 in epc_features (Myron Stowe) [RHEL-107898] +- PCI: imx6: Add IMX8MQ_EP third 64-bit BAR in epc_features (Myron Stowe) [RHEL-107898] +- PCI: dw-rockchip: Delay link training after hot reset in EP mode (Myron Stowe) [RHEL-107898] +- PCI: cadence: Replace private message routing enums with PCI core definitions (Myron Stowe) [RHEL-107898] +- PCI: brcmstb: Replace open coded value with PCIE_T_RRS_READY_MS (Myron Stowe) [RHEL-107898] +- MAINTAINERS: Drop Nicolas from maintaining pcie-brcmstb (Myron Stowe) [RHEL-107898] +- PCI: brcmstb: Set MLW based on "num-lanes" DT property if present (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: brcm,stb-pcie: Add num-lanes property (Myron Stowe) [RHEL-107898] +- PCI: Move link up wait time and max retries macros to pci.h (Myron Stowe) [RHEL-107898] +- PCI: dwc: Ensure that dw_pcie_wait_for_link() waits 100 ms after link up (Myron Stowe) [RHEL-107898] +- PCI: qcom: Wait PCIE_RESET_CONFIG_WAIT_MS after link-up IRQ (Myron Stowe) [RHEL-107898] +- PCI: dw-rockchip: Wait PCIE_RESET_CONFIG_WAIT_MS after link-up IRQ (Myron Stowe) [RHEL-107898] +- PCI: rockchip-host: Use macro PCIE_RESET_CONFIG_WAIT_MS (Myron Stowe) [RHEL-107898] +- PCI: Rename PCIE_RESET_CONFIG_DEVICE_WAIT_MS to PCIE_RESET_CONFIG_WAIT_MS (Myron Stowe) [RHEL-107898] +- PCI: vmd: Remove MSI-X check on child devices (Myron Stowe) [RHEL-107898] +- PCI: vmd: Fix wrong kfree() in vmd_msi_free() (Myron Stowe) [RHEL-107898] +- PCI: vmd: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: vmd: Convert to lock guards (Myron Stowe) [RHEL-107898] +- PCI: plda: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: xilinx: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: xilinx-nwl: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: xilinx-xdma: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: rcar-host: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: mediatek: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: mediatek-gen3: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: iproc: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: brcmstb: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: altera-msi: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: aardvark: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: mobiveil: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: dwc: Switch to msi_create_parent_irq_domain() (Myron Stowe) [RHEL-107898] +- PCI: controller: Use dev_fwnode() instead of of_fwnode_handle() (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-epf-vntb: Fix the incorrect usage of __iomem attribute (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-epf-vntb: Allow BAR assignment via configfs (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-epf-vntb: Align MW naming with config names (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-epf-vntb: Return -ENOENT if pci_epc_get_next_free_bar() fails (Myron Stowe) [RHEL-107898] +- selftests: pci_endpoint: Add doorbell test case (Myron Stowe) [RHEL-107898] +- misc: pci_endpoint_test: Add doorbell test case (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-epf-test: Add doorbell test support (Myron Stowe) [RHEL-107898] +- PCI: endpoint: Add pci_epf_align_inbound_addr() helper for inbound address alignment (Myron Stowe) [RHEL-107898] +- PCI: endpoint: pci-ep-msi: Add checks for MSI parent and mutability (Myron Stowe) [RHEL-107898] +- PCI: endpoint: Add RC-to-EP doorbell support using platform MSI controller (Myron Stowe) [RHEL-107898] +- PCI: endpoint: Fix configfs group removal on driver teardown (Myron Stowe) [RHEL-107898] +- PCI: endpoint: Fix configfs group list head handling (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom,pcie-sa8775p: Document 'link_down' reset (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: Remove 83xx-512x-pci.txt (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: Convert amazon,al-alpine-v[23]-pcie to DT schema (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: Convert marvell,armada-3700-pcie to DT schema (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: Convert apm,xgene-pcie to DT schema (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: Convert axis,artpec6-pcie to DT schema (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: Convert st,spear1340-pcie to DT schema (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom,pcie-sm8150: Drop unrelated clocks from PCIe hosts (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom,pcie-sc8180x: Drop unrelated clocks from PCIe hosts (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: pci-ep: Extend max-link-speed to PCIe Gen5/Gen6 (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom,pcie-sa8775p: Document QCS8300 (Myron Stowe) [RHEL-107898] +- dt-bindings: PCI: qcom,pcie-sm8150: Document QCS615 (Myron Stowe) [RHEL-107898] +- PCI/pwrctrl: Fix the kerneldoc tag for private fields (Myron Stowe) [RHEL-107898] +- PCI: Move is_pciehp check out of pciehp_is_native() (Myron Stowe) [RHEL-107898] +- PCI: pciehp: Use is_pciehp instead of is_hotplug_bridge (Myron Stowe) [RHEL-107898] +- PCI/portdrv: Use is_pciehp instead of is_hotplug_bridge (Myron Stowe) [RHEL-107898] +- PCI/ACPI: Fix runtime PM ref imbalance on Hot-Plug Capable ports (Myron Stowe) [RHEL-107898] +- PCI: Support Immediate Readiness on devices without PM capabilities (Myron Stowe) [RHEL-107898] +- PCI: Allow built-in drivers to use async initial probing (Myron Stowe) [RHEL-107898] +- PCI: Adjust the position of reading the Link Control 2 register (Myron Stowe) [RHEL-107898] +- PCI: Fix link speed calculation on retrain failure (Myron Stowe) [RHEL-107898] +- PCI: Extend isolated function probing to LoongArch (Myron Stowe) [RHEL-107898] +- PCI/ASPM: Consolidate variable declaration and initialization (Myron Stowe) [RHEL-107898] +- PCI/ASPM: Use boolean type for aspm_disabled and aspm_force (Myron Stowe) [RHEL-107898] +- PCI/AER: Add message when AER_MAX_MULTI_ERR_DEVICES limit is hit (Myron Stowe) [RHEL-107898] +- PCI/AER: Use bool for AER disable state tracking (Myron Stowe) [RHEL-107898] +- net: Prevent use after free in netif_napi_set_irq_locked() (Petr Oros) [RHEL-83024] +- net: move aRFS rmap management and CPU affinity to core (Petr Oros) [RHEL-83024] +- arm64: kprobes: check the return value of set_memory_rox() (Marcin Juszkiewicz) [RHEL-122954] +- arm64: kprobes: call set_memory_rox() for kprobe page (Marcin Juszkiewicz) [RHEL-122954] +- audit: fix out-of-bounds read in audit_compare_dname_path() (CKI Backport Bot) [RHEL-119187] {CVE-2025-39840} + * Tue Dec 16 2025 CKI KWF Bot [6.12.0-174.el10] - Revert "arm64: acpi: Enable ACPI CCEL support" (Gavin Shan) [RHEL-135143] - platform/x86/amd/hsmp: Replace amd_num_nodes() with topology_max_packages() (Steve Best) [RHEL-117573] diff --git a/redhatsecureboot504.cer b/redhatsecureboot504.cer deleted file mode 100644 index dfeccf644b3c147c6a91fd4170f759ffb7d86405..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 964 zcmXqLVm@Hd#I#}oGZP~d6DPygP|MB7r^zlf;AP{~YV&CO&dbQi&B|a9ZzyIU!p0oR z!o|ZIl$xU8kyxUm;F*`KXQ*f(4-#kQk${RT1g9pK7NsgU<>!|uI6Eqs8Y&qmz)j<1 z6ca8^O-{^7Eh=#+N=?Z~EYVBO&oz(}=QT1mFf%qVG%+?cFpd)EHMTG?G&F~D4bpHr zK*K-{;sAMU4hYUn&&$k9S1>g&A<7+1j7rFUXJlnyZerwTFlb`rVrpV!WLP~x_4{UV ziHj2t{mNWpaJJ`$YsGSYgB_m?HpM7apRLo6sZM|MF=GA&WAVP%dp2#Wi#l}ibk38_ zHrlTk^orEV5AX?u{?kkBxjmn)zVL}s(;MGg+C?XpABuk+d@1yMAj8)Vd&PGL*}pXJ ztbYAC?W>pmmIJIBSB{#_TNJQ#>w}PI%Y!6-+gg-Oz4Bz+17A+jC>FidjB znyS>!#LURRxVXZg%zy_N>axO&jQ?4f3>XafKs{X#8(CJc?`JNIJDUq zSy|bcnGIw?;(RP(EFzzJAIGIV$eZ`4aFwNa-?{JWnz}N;X-QU@MZ!R=LF7#S(&ri( zyFC3S&)%ECJ<+9X*8G0txB;e1VB9b=tbEN^wtpqN?IY)@4O1R^MCcx!B)TAGJ>zBX zAO7j##@Ba#*R(z+@68tTM{||x+oaQZA974ShFAz*Ox{{^;ixF5sj~R24;J5BTng*1 zH!%h=WlQa!%yWwU*G6W;4g1e|`p7g%n*}N;FdUi8J%7?f-2(QEwYgpI_D?b~-n1zx zb<*k&MrJ;@_PmpyIq%j2wZx@{nYs* zt-3;LGi&Z<(WJHMW?3HuAH2|Lb-vtMIpMNH|B=EeGE*9i+FIHA9o