10.2 Release Notes
Release Notes for Red Hat Enterprise Linux 10.2
Abstract
Providing feedback on Red Hat documentation Copy linkLink copied to clipboard!
We are committed to providing high-quality documentation and value your feedback. To help us improve, you can submit suggestions or report errors through the Red Hat Jira tracking system.
Procedure
Log in to the Jira website.
If you do not have an account, select the option to create one.
- Click Create in the top navigation bar.
- Enter a descriptive title in the Summary field.
- Enter your suggestion for improvement in the Description field. Include links to the relevant parts of the documentation.
- Click Create at the bottom of the dialogue.
Chapter 1. Overview of Red Hat Enterprise Linux 10.2 Copy linkLink copied to clipboard!
Review major changes to core components and supported in-place upgrade paths in Red Hat Enterprise Linux 10.2.
1.1. Major changes in RHEL 10.2 Copy linkLink copied to clipboard!
1.1.1. Security Copy linkLink copied to clipboard!
Review the most notable changes to security in Red Hat Enterprise Linux 10.2.
The keylime-agent package is rebased to upstream version 0.2.9, which includes a new agent-driven push attestation model, expanded hardware cryptography, flexible TPM RSA support, and the use of ECC-signed TLS certificates.
The clevis-pin-trustee package provides a new Clevis pin trustee that enables automated encryption and decryption of LUKS-encrypted volumes by using remote attestation through the Trustee Key Broker Service (KBS).
The fapolicyd packages are rebased to upstream version 1.4.3, and you can now filter rules.
RHEL 10.2 introduces the capnproto package, which provides a high-performance data interchange and remote procedure call (RPC) system that uses zero-copy serialization to eliminate the overhead of traditional data encoding and decoding.
This release of the openssh packages introduces support for the ML-KEM (Module-Lattice-Based Key-Encapsulation Mechanism) post-quantum (PQ) key exchange combined with elliptic curves standardized by the National Institute of Standards and Technology (NIST) in FIPS mode.
Also, the libssh library introduces support for post-quantum traditional (PQ/T) hybrid key exchange methods based on the quantum-resistant ML-KEM standard and traditional Elliptic-curve Diffie-Hellman (ECDH) key exchange schemes.
The p11-kit packages have been upgraded to upstream version 0.26.1, which delivers support for post-quantum cryptography (PQC) definitions in PKCS #11 headers.
The podman-sequoia library supports composite post-quantum signatures.
See New features and enhancements - Security for more information.
1.1.2. Infrastructure services Copy linkLink copied to clipboard!
Review the most notable changes to infrastructure services in Red Hat Enterprise Linux 10.2.
- PostgreSQL 18 packages are available.
- MariaDB 11.8 packages are available.
- PHP is available in version 8.4.
-
The
chronypackages are updated to version 4.8. -
The
frrpackages are updated to version 10.4.1.
For more information, see New features and enhancements - Infrastructure services.
1.1.3. Kernel Copy linkLink copied to clipboard!
Review the most notable kernel updates in Red Hat Enterprise Linux 10.2.
- Support for Kernel Livepatches is now available in RHEL 10.
-
Extends kernel observability with additional
perffeatures and new Intel core, uncore, c-state, and package performance events. -
Aligns
perfand BPF tooling more closely with upstream by updatingperfto recent upstream versions and enabling debuginfod support. -
Expands
uncoreandcoreperformance counters for newer Intel platforms and adds AMD IBS load-latency filtering to improve CPU and memory analysis. - Adds or updates drivers and device IDs for Intel EDAC, Intel QAT, and Intel/AMD accelerator and crypto devices to improve hardware coverage.
-
Improves real-time analysis and tuning by extending
rtlathreshold-overflow actions, addingcpupowerPython bindings, and updatingrteval. -
Updates kernel debugging and crash analysis by rebasing
crashand enhancing LUKS-aware kdump handling in both the kernel and kdump utilities.
1.1.4. Dynamic programming languages, web and database servers Copy linkLink copied to clipboard!
Review the most notable changes to dynamic programming languages, web and database servers in Red Hat Enterprise Linux 10.2.
Later versions of the following Application Streams are now available:
- Node.js 24
Later versions of the following web servers are now available:
- Apache HTTP Server 2.4.63
Later versions of the following database servers are now available:
- MariaDB 11.8
See New features and enhancements - Dynamic programming languages, web and database servers for more information.
1.1.5. Compilers and development tools Copy linkLink copied to clipboard!
Review the most notable changes to compilers and development tools in Red Hat Enterprise Linux 10.2.
- System toolchain
The following system toolchain components are available with RHEL 10.2:
- GCC 14.3
- glibc 2.39
- Annobin 13.02
- Binutils 2.41
- Performance tools and debuggers
The following performance tools and debuggers are available with RHEL 10.2:
- GDB 16.3
- Valgrind 3.26.0
- SystemTap 5.4
- Dyninst 13.0.0
- elfutils 0.194
- libabigail 2.9
- Performance monitoring tools
The following performance monitoring tools are available with RHEL 10.2:
- PCP 6.3.7
- Grafana 10.2.6
- Compiler toolsets
The following compiler toolsets are available with RHEL 10.2:
GCC Toolset 15
- GCC 15.2
Binutils 2.44
Note that
Annobinanddwzare not provided in GCC Toolset starting with version 15.
- LLVM Toolset 21.1.8
- Rust Toolset 1.92.0
- Go Toolset 1.26.2
1.1.6. Desktop Copy linkLink copied to clipboard!
Review the most notable changes to desktop in Red Hat Enterprise Linux 10.2.
Flatpaks are the default delivery method for Mozilla Firefox and Thunderbird. The default delivery method for Mozilla Firefox and Thunderbird is changed from RPM packages to Flatpaks. Anaconda, the RHEL installer, preinstalls these Flatpaks by default.
See New features and enhancements - Desktop for more information.
1.2. In-place upgrade Copy linkLink copied to clipboard!
Review the most notable changes to in-place upgrades in Red Hat Enterprise Linux 10.2.
1.2.1. In-place upgrade from RHEL 9 to RHEL 10 Copy linkLink copied to clipboard!
The supported in-place upgrade paths currently are:
From RHEL 9.6 to RHEL 10.0 and 9.8 to 10.2 on the following architectures:
- AMD and Intel 64-bit architectures (x86-64-v3)
- The 64-bit ARM architecture (ARMv8.0-A)
- IBM Power Systems, Little Endian (POWER10) and later
- 64-bit IBM Z (IBM z15 or IBM LinuxONE III or later)
For instructions on performing an in-place upgrade, see Upgrading from RHEL 9 to RHEL 10.
For information regarding how Red Hat supports the in-place upgrade process, see the In-place upgrade Support Policy.
Notable enhancements and bug fixes include:
-
New Ansible system roles to automate the upgrade process. For more information, see In-place upgrade phases automation with the
analysis,remediate, andupgradeAnsible roles. - Modernization of the system storage initialization when booting to the upgrade environment.
- Correctly upgrade systems with configured LVM and deliver initial improvements for multipath.
- Fix the upgrade on systems with Non-Volatile Memory Express over Fibre Channel (NVMe-FC).
- Preserve Network Interface Card (NIC) names during the upgrade by using the net.naming-scheme argument in the kernel command line.
- Migrate kerberos configuration during the upgrade.
1.2.2. In-place upgrade from RHEL 8 to RHEL 10 Copy linkLink copied to clipboard!
It is not possible to perform an in-place upgrade directly from RHEL 8 to RHEL 10. However, you can perform an in-place upgrade from RHEL 8 to RHEL 9 and then perform a second in-place upgrade to RHEL 10. For more information, see In-place upgrades over multiple RHEL major versions by using Leapp.
1.3. Red Hat Customer Portal Labs Copy linkLink copied to clipboard!
Review the most popular Red Hat Customer Portal Labs in Red Hat Enterprise Linux 10.2.
Red Hat Customer Portal Labs is a set of tools in a section of the Customer Portal available at https://access.redhat.com/labs/. The applications in Red Hat Customer Portal Labs can help you improve performance, quickly troubleshoot issues, identify security problems, and quickly deploy and configure complex applications. Some of the most popular applications are:
- Registration Assistant
- Kickstart Generator
- Red Hat Product Certificates
- Red Hat CVE Checker
- Kernel Oops Analyzer
- Red Hat Satellite Upgrade Helper
- Load Balancer Configuration Tool
- Ceph Placement Groups (PGs) per Pool Calculator
- Red Hat Out of Memory Analyzer
- Postfix Configuration Helper
- Red Hat IdM Upgrade Helper
- NetworkManager Command Generator
1.4. Additional resources Copy linkLink copied to clipboard!
Review additional resources to effectively plan and manage your Red Hat Enterprise Linux 10 deployments. The following list includes content about system capabilities, life cycles, application compatibility, upgrade paths, troubleshooting, and other important information.
Capabilities and limits of Red Hat Enterprise Linux 10 as compared to other versions of the system are available in the Knowledgebase article Red Hat Enterprise Linux technology capabilities and limits.
Information regarding the Red Hat Enterprise Linux life cycle is provided in the Red Hat Enterprise Linux Life Cycle document.
The Package manifest document provides a package listing for RHEL 10, including licenses and application compatibility levels.
Application compatibility levels are explained in the Red Hat Enterprise Linux 10: Application Compatibility Guide document.
Major differences between RHEL 9 and RHEL 10, including removed functionality, are documented in Considerations in adopting RHEL 10.
Instructions on how to perform an in-place upgrade from RHEL 9 to RHEL 10 are provided in Upgrading from RHEL 9 to RHEL 10.
Using Red Hat Lightspeed you can proactively identify, examine, and resolve known technical issues. Red Hat Lightspeed is included with all RHEL subscriptions. For instructions on how to install the client and register your system to the service, see the Red Hat Lightspeed documentation page.
Public release notes include links to access the original tracking tickets, but private release notes are not viewable so do not include links.[1]
Chapter 2. Architectures for Red Hat Enterprise Linux 10.2 Copy linkLink copied to clipboard!
Review the supported hardware architectures for Red Hat Enterprise Linux 10.2 to verify hardware compatibility.
Red Hat Enterprise Linux 10.2 is distributed with the kernel version 6.12.0-211.7.1, which provides support for the following architectures at the minimum required version (stated in parentheses):
- AMD and Intel 64-bit architectures (x86-64-v3)
- The 64-bit ARM architecture (ARMv8.0-A)
- IBM Power Systems, Little Endian (POWER10 and later)
- 64-bit IBM Z (IBM z15 or IBM LinuxONE III)
Make sure you purchase the appropriate subscription for each architecture.
Chapter 3. Distribution of content in RHEL 10 Copy linkLink copied to clipboard!
Review how Red Hat Enterprise Linux 10 distributes content so you can effectively plan your system deployments.
3.1. Installation Copy linkLink copied to clipboard!
Red Hat Enterprise Linux 10 is installed using ISO images. Three types of images are available for the AMD64, Intel 64-bit, 64-bit ARM, IBM Power Systems, and IBM Z architectures:
Installation ISO: A full installation image that contains the BaseOS and AppStream repositories and allows you to complete the installation without additional repositories. On the Product Downloads page, the
Installation ISOis referred to asBinary DVD.NoteThe Installation ISO image is in multiple GB size, and as a result, it might not fit on optical media formats. A USB key or USB hard drive is recommended when using the Installation ISO image to create bootable installation media. You can also use the Image Builder tool to create customized RHEL images. For more information about Image Builder, see the Composing a customized RHEL system image document.
- Boot ISO: A minimal boot ISO image that is used to boot into the installation program. This option requires access to the BaseOS and AppStream repositories to install software packages. The repositories are part of the Installation ISO image. You can also register to Red Hat CDN or Satellite during the installation to use the latest BaseOS and AppStream content from Red Hat CDN or Satellite.
- Bootc images: You can also use the image builder tool to create customized RHEL images. By using RHEL bootc images, you can build, deploy, and manage the operating system as a container. With image mode for RHEL, you can manage your application and the underlying OS in a single container-native workflow. For more information, see Using image mode for RHEL to build, deploy, and manage operating systems.
3.2. Repositories Copy linkLink copied to clipboard!
Red Hat Enterprise Linux 10 is distributed through two main repositories:
- BaseOS
- AppStream
Both repositories are required for a basic RHEL installation, and are available with all RHEL subscriptions.
Content in the BaseOS repository is intended to provide the core set of the underlying operating system functionality that provides the foundation for all installations. This content is available in the RPM format and is subject to support terms similar to those in previous releases of RHEL.
Content in the AppStream repository includes additional user-space applications, runtime languages, and databases in support of the varied workloads and use cases.
In addition, the CodeReady Linux Builder repository is available with all RHEL subscriptions. It provides additional packages for use by developers. Packages included in the CodeReady Linux Builder repository are unsupported.
For more information about RHEL 10 repositories and the packages they provide, see the Package manifest.
3.3. Application Streams Copy linkLink copied to clipboard!
Multiple versions of user-space components are delivered as Application Streams and updated more frequently than the core operating system packages. This provides greater flexibility to customize RHEL without impacting the underlying stability of the platform or specific deployments.
Application Streams are available in the following formats:
- RPM format
- Software Collections
- Flatpaks
In previous RHEL major versions, some Application Streams were available as modules as an extension to the RPM format. In RHEL 10, Red Hat does not intend to provide any Application Streams that use modularity as the packaging technology and, therefore, no modular content is being distributed with RHEL 10.
Each Application Stream component has a given life cycle, either the same as RHEL 10 or shorter.
RHEL 10 improves the Application Streams experience by providing initial Application Stream versions that can be installed as RPM packages using the dnf install command.
Certain initial Application Streams in the RPM format have a shorter life cycle than Red Hat Enterprise Linux 10.
Always determine what version of an Application Stream you want to install.
Content that needs rapid updating, such as alternate compilers and container tools, is available in rolling streams that will not provide alternative versions in parallel.
Chapter 4. Important changes to external kernel parameters Copy linkLink copied to clipboard!
Review major changes in the Red Hat Enterprise Linux 10.2 kernel to understand impacts on your system configuration. These changes could include, for example, updates to proc entries, sysctl and sysfs default values, boot parameters, and other kernel options.
4.1. New kernel parameters Copy linkLink copied to clipboard!
- microcode=
[X86] Control the behavior of the microcode loader.
Options:
-
base_rev=X: Set the base microcode revision of each thread when in debug mode, whereXis an unsigned 32-bit integer. -
dis_ucode_ldr: Disable the microcode loader. -
force_minrev: Enable or disable the microcode minimal revision enforcement for the runtime microcode loader.
-
- nvme.quirks=
[NVME] Provide a list of quirk entries to augment the built-in NVMe quirk list.
Format:
nvme.quirks=<VendorID>:<ProductID>:<quirk_names>-…The vendor ID and product ID are 4-digit hexadecimal numbers. The
quirk_namesfield is a comma-separated list of quirk names. You can prefix a quirk name with^to disable that quirk explicitly.Example:
nvme.quirks=7710:2267:bogus_nid,^identify_cns-9900:7711:broken_msi- rcutorture.gp_cond_exp=
- [KNL] Use conditional or asynchronous update-side expedited-grace-period primitives, if available.
- rcutorture.gp_cond_full=
- [KNL] Use conditional or asynchronous update-side normal-grace-period primitives that also take concurrent expedited grace periods into account, if available.
- rcutorture.gp_cond_exp_full=
- [KNL] Use conditional or asynchronous update-side expedited-grace-period primitives that also take concurrent normal grace periods into account, if available.
- rcutorture.gp_cond_wi=
[KNL] Set the nominal wait interval for normal conditional grace periods, in microseconds. The kernel randomly selects the actual wait interval up to this value with nanosecond granularity.
This parameter controls the wait interval for conditional grace periods that you specify through the
rcutorture.gp_condandrcutorture.gp_cond_fullmodule parameters.Defaults to 16 jiffies; for example, 16,000 microseconds on a system with
HZ=1000.- rcutorture.gp_cond_wi_exp=
[KNL] Set the nominal wait interval for expedited conditional grace periods, in microseconds. The kernel randomly selects the actual wait interval up to this value with nanosecond granularity.
This parameter controls the wait interval for expedited conditional grace periods that you specify through the
rcutorture.gp_cond_expandrcutorture.gp_cond_exp_fullmodule parameters.Defaults to 128 microseconds.
- rcutorture.gp_poll=
- [KNL] Use polled update-side normal-grace-period primitives, if available.
- rcutorture.gp_poll_exp=
- [KNL] Use polled update-side expedited-grace-period primitives, if available.
- rcutorture.gp_poll_full=
- [KNL] Use polled update-side normal-grace-period primitives that also take concurrent expedited grace periods into account, if available.
- rcutorture.gp_poll_exp_full=
- [KNL] Use polled update-side expedited-grace-period primitives that also take concurrent normal grace periods into account, if available.
- rcutorture.gp_poll_wi=
[KNL] Set the nominal wait interval for normal conditional grace periods when using polled update-side primitives, in microseconds. The kernel randomly selects the actual wait interval up to this value with nanosecond granularity.
This parameter controls the wait interval for conditional grace periods that you specify through the
rcutorture.gp_pollandrcutorture.gp_poll_fullmodule parameters.Defaults to 16 jiffies; for example, 16,000 microseconds on a system with
HZ=1000.- rcutorture.gp_poll_wi_exp=
[KNL] Set the nominal wait interval for expedited conditional grace periods when using polled update-side primitives, in microseconds. The kernel randomly selects the actual wait interval up to this value with nanosecond granularity.
This parameter controls the wait interval for expedited conditional grace periods that you specify through the
rcutorture.gp_poll_expandrcutorture.gp_poll_exp_fullmodule parameters.Defaults to 128 microseconds.
- rcutorture.gpwrap_lag=
[KNL] Enable grace-period wrap lag testing in
rcutorture. Set this parameter to false to prevent thegpwraplag test from running.The default value is
true.- rcutorture.gpwrap_lag_gps=
[KNL] Set the number of grace periods to tolerate between the per-CPU RCU data structure (
rdp) and the RCU node (rnp)gp_seqvalues before setting the overflow flag during active wrap-lag testing.The default value is
8.- rcutorture.gpwrap_lag_cycle_mins=
[KNL] Set the total cycle duration for
gpwraplag testing, in minutes. The cycle includes both active and inactive testing periods.The default value is
30minutes.- rcutorture.gpwrap_lag_active_mins=
[KNL] Set the duration, in minutes, during which
gpwraplag is active in each testing cycle. During the active period, the grace-period wrap lag is controlled by the value ofrcutorture.gpwrap_lag_gps.The default value is
5minutes.- rcutorture.preempt_duration=
[KNL] Set the duration, in milliseconds, of preemptions by a high-priority FIFO real-time task.
Set this parameter to
0(the default) to disable the preemption test. The kernel selects CPUs to preempt randomly from the set of CPUs that are online at that moment. Races with CPUs going offline are ignored; in such cases, that preemption attempt is skipped.- rcutorture.preempt_interval=
[KNL] Set the interval, in milliseconds, between preemptions by a high-priority FIFO real-time task. The interval defaults to 1 second.
This delay is driven by an
hrtimerand is fuzzed to avoid unintended synchronizations between preemptions.- rcutorture.reader_flavor=
[KNL] Set a bit mask that indicates which RCU readers to use in
rcutorture.If more than one bit is set,
rcutortureenters readers in order from the lowest-order bit to the highest-order bit and exits readers in the reverse order. For SRCU, the bits have the following meanings:-
0x1- normal readers -
0x2- NMI-safe readers -
0x4- lightweight readers
-
- rcutorture.test_boost_holdoff=
[KNL] Set the holdoff time, in seconds, from the start of a
rcutorturetest to the start of RCU priority-boost testing.The default value is
0, which disables any holdoff period.- tsa=
[X86] Control mitigation for transient scheduler attacks on AMD CPUs.
For additional technical background, search for the document titled
"Technical guidance for mitigating transient scheduler attacks".Values:
-
off: Disable the mitigation. -
on(default): Enable the mitigation. -
user: Mitigate only user-to-kernel transitions. -
vm: Mitigate only guest-to-host transitions.
-
- vmscape=
[X86] Control mitigation for VMscape attacks.
VMscape attacks can leak information from a userspace hypervisor to a guest through speculative side-channel techniques.
Values:
-
off: Disable the mitigation. -
ibpb(default): Use the Indirect Branch Prediction Barrier (IBPB) mitigation. -
force: Force vulnerability detection even on processors that would otherwise be treated as unaffected.
-
4.2. Updated kernel parameters Copy linkLink copied to clipboard!
- mitigations=
[X86, PPC, S390, ARM64, EARLY] Control optional mitigations for CPU vulnerabilities through curated, architecture-independent options.
The
offoption now also disables thevmscapemitigation on x86:-
off: Disable all optional CPU mitigations. This option improves system performance but can expose users to several CPU vulnerabilities.
The
offsetting is equivalent to the following per-architecture options, if supported:-
vmscape=off: Disable VMscape mitigations on x86 systems in addition to previously documented settings.
On x86, after you specify one of the main mitigation modes (such as
off,auto, orauto,nosmt), you can additionally use attack-vector based controls as described inDocumentation/admin-guide/hw-vuln/attack_vector_controls.rst.-
- rcutree.rcu_normal_wake_from_gp=
[KNL] Reduce the latency of
synchronize_rcu()calls by maintaining an independent list of callers. This mechanism does not interact with regular RCU callbacks because it does not rely on thecall_rcu()orcall_rcu_hurry()paths and applies to normal grace periods only.You can enable the behavior by writing
1to/sys/module/rcutree/parameters/rcu_normal_wake_from_gpor by passingrcutree.rcu_normal_wake_from_gp=1on the kernel command line.By default, this behavior is now enabled when
num_possible_cpus() ⇐ 16, unless you explicitly disable it by passingrcutree.rcu_normal_wake_from_gp=0on the kernel command line.- rcutorture.gp_cond=
[KNL] Use conditional or asynchronous update-side normal-grace-period primitives, if available.
Previously, this option was documented as using conditional or asynchronous update-side primitives without explicitly clarifying that they apply to normal grace periods.
- rh_waived=
Enable waived items in RHEL.
Some specific features or security mitigations can be waived, that is, toggled on or off on demand, in RHEL. However, you should use waivers cautiously, because waiving a mitigation or feature can render a system insecure or even out of scope for support.
Format:
<item-1>,<item-2>,…,<item-n>Use the
rh_waivedparameter to enable all waived items that are listed inDocumentation/admin-guide/rh-waived-features.rst.
4.3. Removed kernel parameters Copy linkLink copied to clipboard!
- microcode.force_minrev=
[X86] This dedicated parameter for controlling microcode minimal revision enforcement has been removed.
You can now use the
microcode=parameter with theforce_minrevoption to enable or disable minimal revision enforcement for the runtime microcode loader.
4.4. New sysctl parameters Copy linkLink copied to clipboard!
- core_sort_vma
The core dump facility now supports sorting virtual memory areas (VMAs) by size in the generated core file.
By default, the kernel writes VMAs in address order. When you set
core_sort_vmato1, the kernel writes VMAs from the smallest size to the largest size. This behavior is known to break at leastelfutils, but it can be useful when you work with very large or truncated core dumps where the most useful debugging information resides in smaller VMAs.- net.vsock.ns_mode
Control how AF_VSOCK sockets in a network namespace participate in CID allocation and cross-namespace communication.
This setting is read-only. It reports the current namespace’s mode, which is determined when the namespace is created and cannot be changed afterwards.
Values:
-
global: The namespace shares system-wide CID allocation. Sockets in this namespace can communicate with any VM or socket in any namespace that also uses theglobalmode. Sockets in this namespace cannot reach sockets in namespaces that use thelocalmode. -
local: The namespace uses private CID allocation. Sockets in this namespace can communicate only with VMs or sockets within the same namespace.
The
init_netnamespace always operates in theglobalmode.-
- net.vsock.child_ns_mode
Control the default
ns_modevalue for newly created child network namespaces that use AF_VSOCK.At namespace creation, the kernel initializes
ns_modein the child namespace from the parent namespace’schild_ns_mode. Initially, a namespace’schild_ns_modematches its ownns_mode.Values:
-
global: Child namespaces share system-wide CID allocation. Their VSOCK sockets can communicate with any VM or socket that is reachable from aglobalnamespace. -
local: Child namespaces use private CID allocation. Their VSOCK sockets can communicate only within their own namespace.
The first write to
child_ns_modelocks its value. Later writes that set the same value succeed, but writes that attempt to change the value return-EBUSY.Changing
child_ns_modeaffects only namespaces that the kernel creates after the change. Existing namespaces and their children are not modified.If a namespace runs with
ns_mode=local, it cannot changechild_ns_modetoglobal. Attempts to do so fail with-EPERM.-
4.5. Updated sysctl parameters Copy linkLink copied to clipboard!
- core_pattern
The
core_patternparameter now supports the%Fspecifier to record the pidfd number in core file names.The following additional format specifier is available:
-
%F: Insert the pidfd number of the crashing task into the core file name.
-
Chapter 5. Device drivers Copy linkLink copied to clipboard!
Review the new and updated device drivers in Red Hat Enterprise Linux 10.2 to check your hardware compatibility.
5.1. New drivers Copy linkLink copied to clipboard!
| Description | Name | Limited to architectures |
|---|---|---|
| Driver for Intel NPU (Neural Processing Unit) - 1.0.0 | intel_vpu | AMD and Intel 64-bit architectures |
| Qualcomm Cloud AI Accelerators Accel driver | qaic | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| Bluetooth support for MediaTek devices ver 0.1 | btmtk | AMD and Intel 64-bit architectures, 64-bit ARM architecture |
| Description | Name | Limited to architectures |
|---|---|---|
| SNP SVSM vTPM (virtual Trusted Platform Module) driver | tpm_svsm | AMD and Intel 64-bit architectures |
| TPM CRB FFA driver | tpm_crb_ffa | 64-bit ARM architecture |
| Description | Name | Limited to architectures |
|---|---|---|
| Intel QuickAssist Technology for GEN6 devices | qat_6xxx | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| DEVFREQ userspace governor | governor_userspace | 64-bit ARM architecture |
| Generic i.MX bus frequency scaling driver | imx-bus | 64-bit ARM architecture |
| i.MX8M DDR controller frequency driver | imx8m-ddrc | 64-bit ARM architecture |
| Description | Name | Limited to architectures |
|---|---|---|
| Microchip ZL3073x core driver | zl3073x | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le) |
| Microchip ZL3073x I2C driver | zl3073x_i2c | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le) |
| Microchip ZL3073x SPI driver | zl3073x_spi | AMD and Intel 64-bit architectures, 64-bit ARM architecture |
| Description | Name | Limited to architectures |
|---|---|---|
| AMD AE4DMA driver | ae4dma | AMD and Intel 64-bit architectures |
| AMD PassThru DMA driver | ptdma | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| Firmware control access framework | fwctl | AMD and Intel 64-bit architectures, 64-bit ARM architecture |
| mlx5 ConnectX firmware control driver | mlx5_fwctl | AMD and Intel 64-bit architectures, 64-bit ARM architecture |
| Description | Name | Limited to architectures |
|---|---|---|
| Intel USBIO GPIO driver | gpio-usbio | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| Chrontel ch7006 TV encoder driver | ch7006 | AMD and Intel 64-bit architectures |
| Cirrus driver for QEMU emulated device | cirrus-qemu | AMD and Intel 64-bit architectures |
| DRM GPUSVM | drm_gpusvm | AMD and Intel 64-bit architectures, 64-bit ARM architecture |
| DRM GPU scheduler | gpu-sched | IBM Z (s390x) |
| DRM GPUSVM helper module | drm_gpusvm_helper | AMD and Intel 64-bit architectures |
| Helpers for DRM sysfb drivers | drm_sysfb_helper | IBM Z (s390x) |
| Quirks for panel backlight overrides | drm_panel_backlight_quirks | AMD and Intel 64-bit architectures |
| Silicon Image sil164 TMDS transmitter driver | sil164 | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| HID driver for Corsair Void headsets | hid-corsair-void | AMD and Intel 64-bit architectures |
| Intel Touch Host Controller driver | intel-thc | AMD and Intel 64-bit architectures |
| Intel QuickI2C driver | intel-quicki2c | AMD and Intel 64-bit architectures |
| Intel QuickSPI driver | intel-quickspi | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| Microsoft Hyper-V root partition VMM interface | mshv_root | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| Intel USBIO I2C driver | i2c-usbio | AMD and Intel 64-bit architectures |
| PCA954x I2C multiplexer and switch driver | i2c-mux-pca954x | AMD and Intel 64-bit architectures |
| Synopsys DesignWare I2C bus adapter in AMD ISP | i2c-designware-amdisp | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| Keyboard driver for GPIOs | gpio_keys | AMD and Intel 64-bit architectures, IBM Power Systems (ppc64le) |
| Polled GPIO buttons driver | gpio_keys_polled | AMD and Intel 64-bit architectures, IBM Power Systems (ppc64le) |
| Windows-compatible SoC button array driver | soc_button_array | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| Conexant cx231xx USB video device driver - 0.0.3 | cx231xx | AMD and Intel 64-bit architectures |
| Conexant CX25840 audio and video decoder driver | cx25840 | AMD and Intel 64-bit architectures |
| cx23415/6/8 driver | cx2341x | AMD and Intel 64-bit architectures |
| Driver for various TV and TV+FM radio tuners | tuner | AMD and Intel 64-bit architectures |
| Videobuf2 DMA scatter and gather memory handling | videobuf2-dma-sg | AMD and Intel 64-bit architectures |
| I2C Hauppauge EEPROM decoder driver | tveeprom | AMD and Intel 64-bit architectures |
| Device node registration for CEC drivers | cec | IBM Z (s390x) |
| OmniVision OV08X40 sensor driver | ov08x40 | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le) |
| Description | Name | Limited to architectures |
|---|---|---|
| Intel DGFX MTD driver | mtd_intel_dg | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le) |
| Description | Name | Limited to architectures |
|---|---|---|
| Aeonsemi AS21xxx PHY driver | as21xxx | AMD and Intel 64-bit architectures |
| Intel MLD wireless driver for Linux | iwlmld | AMD and Intel 64-bit architectures, 64-bit ARM architecture |
| MaxLinear MXL86110 PHY driver | mxl-86110 | AMD and Intel 64-bit architectures |
| Microchip PHY RDS PTP driver | microchip_rds_ptp | AMD and Intel 64-bit architectures |
| Realtek PHY driver | realtek | AMD and Intel 64-bit architectures |
| Socket CAN driver for Geschwister Schneider and candleLight USB CAN interfaces | gs_usb | AMD and Intel 64-bit architectures, IBM Power Systems (ppc64le) |
| Common Ethernet library for XDP | libeth_xdp | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le) |
| Intel Ethernet common library | libie_fwlog | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le) |
| Intel Ethernet common library admin queue helpers | libie_adminq | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le) |
| Marvell RVU representor driver | rvu_rep | 64-bit ARM architecture |
| PHY package support | phy_package | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le), IBM Z (s390x) |
| Realtek 802.11be wireless 8922A driver | rtw89_8922a | AMD and Intel 64-bit architectures, 64-bit ARM architecture |
| Realtek 802.11be wireless 8922AE and 8922AE-VS driver | rtw89_8922ae | AMD and Intel 64-bit architectures, 64-bit ARM architecture |
| Description | Name | Limited to architectures |
|---|---|---|
| Fujitsu uncore PMU driver | fujitsu_uncore_pmu | 64-bit ARM architecture |
| Description | Name | Limited to architectures |
|---|---|---|
| AMDISP pin control driver | pinctrl-amdisp | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| AMD 3D V-Cache Performance Optimizer driver | amd_3d_vcache | AMD and Intel 64-bit architectures |
| AMD HSMP common driver | hsmp_common | AMD and Intel 64-bit architectures |
| AMD HSMP platform interface driver | amd_hsmp | AMD and Intel 64-bit architectures |
| AMD HSMP ACPI interface driver | hsmp_acpi | AMD and Intel 64-bit architectures |
| AMD ISP4 platform driver | amd_isp4 | AMD and Intel 64-bit architectures |
| Intel extended capabilities auxiliary bus driver | intel-vsec | AMD and Intel 64-bit architectures |
| Intel Oaktrail platform ACPI extras | intel-oaktrail | AMD and Intel 64-bit architectures |
| Intel On Demand (SDSi) driver | intel-sdsi | AMD and Intel 64-bit architectures |
| Intel PMC SSRAM telemetry driver | intel_pmc_ssram_telemetry | AMD and Intel 64-bit architectures |
| Intel PMT discovery driver | pmt_discovery | AMD and Intel 64-bit architectures |
| Intel TPMI enumeration module | intel-vsec_tpmi | AMD and Intel 64-bit architectures |
| ISH ISHTP eclite client opregion driver | intel-ishtp_eclite | AMD and Intel 64-bit architectures |
| lis3lv02d I2C client instantiation for ACPI SMO88xx devices | dell-lis3lv02d | AMD and Intel 64-bit architectures |
| TPMI power domains mapping driver | intel-tpmi_power_domains | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| Processor thermal PTC interface driver | platform_temperature_control | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| Thunderbolt 3 USB Type-C Alternate Mode | typec_thunderbolt | AMD and Intel 64-bit architectures |
| Intel USBIO bridge driver | usbio | AMD and Intel 64-bit architectures |
| Description | Name | Limited to architectures |
|---|---|---|
| vDPA device in userspace | vduse | AMD and Intel 64-bit architectures, 64-bit ARM architecture |
| Description | Name | Limited to architectures |
|---|---|---|
| Confidential computing EFI secret area access driver | efi_secret | 64-bit ARM architecture |
5.2. Updated drivers Copy linkLink copied to clipboard!
| Description | Name | Current version | Limited to architectures |
|---|---|---|---|
| Broadcom MegaRAID SAS driver | megaraid_sas | 07.734.00.00-rc1 | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le) |
| Cisco FCoE HBA driver | fnic | 1.8.0.2 | AMD and Intel 64-bit architectures |
| Driver for Microchip Smart Family Controller | smartpqi | 2.1.36-026 | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le) |
| Emulex LightPulse Fibre Channel SCSI driver | lpfc | 0:14.4.0.12 | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le) |
| LSI MPT Fusion SAS 3.0 device driver | mpt3sas | 54.100.00.00 | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le) |
| MPI3 Storage Controller device driver | mpi3mr | 8.15 | AMD and Intel 64-bit architectures, 64-bit ARM architecture, IBM Power Systems (ppc64le) |
Chapter 6. New features and enhancements Copy linkLink copied to clipboard!
Review new features and enhancements in Red Hat Enterprise Linux 10.2.
6.1. Installer and image creation Copy linkLink copied to clipboard!
Review new features and enhancements for installer and image creation in Red Hat Enterprise Linux 10.2.
- Anaconda supports automatic Flatpak installation from Red Hat Satellite
With this update, Anaconda can automatically install the Flatpak applications during RHEL system installation from Red Hat Satellite. When systems are deployed through Satellite, Anaconda uses the
preinstall.dmechanism to install Flatpak packages based on the selected environment. For example, the "Server with GUI" environment includes Flatpak-based Mozilla Firefox, ensuring GUI-based systems have necessary applications available immediately after installation. This enables Satellite-managed environments to deliver containerized applications through Flatpak while maintaining existing deployment workflows.This enhancement ensures Satellite deployments can support RHEL 10 systems with Flatpak-based applications by using familiar installation processes. It also eliminates manual post-installation configuration steps.
Jira:RHEL-95061[1]
- Anaconda supports automatic Flatpak installation during system setup
With this update, Anaconda can automatically install Flatpak applications during the RHEL system installation based on the selected environment. This capability works with all installation sources, such as Content Delivery Network (CDN), offline DVD.iso media, and custom LAN servers.
Anaconda installs Flatpak packages by using the
preinstall.dmechanism during the installation process when users select environments that require Flatpak applications. For example, the "Server with GUI" environment includes Flatpak-based Mozilla Firefox, ensuring GUI-based systems have necessary applications available immediately after installation.This enhancement enables delivering containerized applications through Flatpak while maintaining a consistent installation experience across all RHEL installation methods. It also eliminates the need for manual Flatpak installation steps after system deployment. You can change the delivery method in Anaconda from Flatpaks back to RPM packages by following the process outlined in the Package selection in Kickstart section of RHEL documentation. For example, use the following configuration to preinstall the Firefox RPM package instead of the Flatpak:
%packages @^graphical-server-environment -redhat-flatpak-preinstall-firefox firefox %endJira:RHEL-95062[1]
- New
rdpKickstart command for remote graphical installation A new
rdpKickstart command was added to enable Remote Desktop Protocol (RDP)-based graphical installations directly from a Kickstart configuration file. The command has the following syntax:# rdp [--username <USERNAME>] [--password <PASSWORD>]With this enhancement, you can configure and start a fully automated, headless RDP installation by using Kickstart commands. For complete information about the
rdpcommand and its options, see the Kickstart commands reference in the Automatically installing RHEL guide.
- Default size for the
/bootpartition increased to 2 GiB Before this release, 1 GiB for the
/bootwas often insufficient for systems that require large firmware blobs ininitramfs. With this update, the default size for the/bootpartition has been increased from 1 GiB to 2 GiB. This change ensures that there is enough disk space for future kernel updates and associatedinitramfsimages. You can manually reduce the partition size or reuse existing smaller partitions when necessary.
- RHEL image builder GUI support for creating bootable images
You can create bootable containers and disk images by using the RHEL image builder app in the web console and by using
image-builder-cli. On first boot, the images automatically subscribe to Red Hat services.Jira:RHELDOCS-19587[1]
image-builder-clisupports creating PXE boot systems with stateless architectureWith this update, you can use the
image-builder-cliutility to create stateless PXE images. As a result, you can quickly boot ephemeral nodes that run entirely in RAM over a network by using either an HTTP server or a combined image.
- RHEL image builder support for Anaconda network installer images
With this update, you can use RHEL image builder to create Anaconda network installer
.isoimages. By including activation keys directly into the installer, you can automate system registration during the installation process. As a result, instead of standard download pages, you can generate customized, pre-configured images for nightly builds or specific deployment environments.Jira:RHELDOCS-21852[1]
- Finalization locking is available for RHEL on image mode
With this update, you can download bootc system updates without automatically applying them on reboot. You can use the
bootc upgrade --download-onlycommand to stage updates. To apply the downloaded updates at a later time, use thebootc upgradecommand. Alternatively, use thebootc upgrade --from-downloadedcommand to apply the staged update without checking the registry for newer versions. The notable enhancements with this update are:- By staging updates in download-only mode, you can pre download security updates during business hours, validate staged deployments, and choose exactly when to apply them during planned maintenance windows.
- With this feature, you can also ensure better control and security by preventing unintended system updates during routine reboots, and it enables administrators to coordinate controlled rollouts across multiple systems.
-
You can apply downloaded updates at any time using bootc upgrade, or you can use
bootc upgrade --from-downloadedto apply the staged update without checking for newer versions from the registry, which is ideal for scheduled maintenance workflows where the exact downloaded version must be deployed. You can apply downloaded updates at any time by using
bootc upgrade. Alternatively, administrators can usebootc upgrade --from-downloadedto apply the staged update without checking the registry for newer versions. This approach is ideal for scheduled maintenance workflows where the exact downloaded version is required for deployment.As a result, operations teams can maintain better governance over production environments, ensuring compliance with strict change control processes, maximizing uptime, and separating network-intensive downloads from actual system changes.
Jira:RHELDOCS-21394[1]
- Bootc Virtualization Kit support for bootc
With this update, you can run and convert boot container images into virtual machines. Use the
bcvkutility to launch ephemeral virtual machines for rapid development and testing, or to generate persistent disk images for production deployments. As a result, your virtual machines run the exact same containerized bootable images used across your environment, maintaining consistency from development to production.Jira:RHELDOCS-21383[1]
- Support for creating stateless PXE images from container builds
You can create stateless PXE images from your container builds in image mode for high-performance computing (HPC) and diskless systems. The build process generates the necessary artifacts, such as
kernel,initrd, andsquashfs.Jira:RHELDOCS-20631[1]
6.2. Security Copy linkLink copied to clipboard!
Review new features and enhancements for security in Red Hat Enterprise Linux 10.2.
- The system no longer hangs when
fapolicydreceives SIGSTOP orptrace() This update of the
fapolicyd-selinuxpackage introduces an SELinux module to protect thefapolicydservice. The new SELinux module prevents users from sending the SIGSTOP signal tofapolicydor tracingfapolicydby using theptrace()function, which might cause the system to crash. As a result, the system no longer hangs or requires manual reboots in the described scenarios.
GSSAPIDelegatedCredentialscan be set tonoinsshd_configWith this update, you can set the
GSSAPIDelegatedCredentialsoption in thesshd_configconfiguration file tono. Although the default valueyesensures backward compatibility, you can usenofor enhanced security control. As a result, an OpenSSH server withGSSAPIDelegatedCredentialsset tonorefuses to forward credentials.
- New
libreswan-minimalsub-package reduces container image size Before this update, the
libreswanpackage was a monolithic package with a dependency onsystemd. This dependency increased the image size of containerized applications.With this update, the package is modularized by introducing a new
libreswan-minimalsub-package without dependencies onsystemdand other optional external tools. As a result, you can create smaller container images for applications that do not usesystemd. These provide faster startup times and reduced resource usage.
- The SELinux policy confines the
redfish-finderservice New rules in the SELinux policy provide specific confinement for the
redfish-findersystemd service. This update helps comply with the CIS Server Level 2 benchmark for the restriction of unconfined daemons.As a result,
redfish-finderno longer uses theunconfined_service_tlabel and runs correctly in SELinux enforcing mode.Jira:RHEL-50299[1]
- OpenSSH adds support for hybrid ML-KEM NIST
With this update, the OpenSSH suite adds support for the
mlkem768nistp256-sha256andmlkem1024nistp384-sha384key exchange algorithms. As a result, you can protect SSH connections by using the ML-KEM (Module-Lattice-Based Key-Encapsulation Mechanism) post-quantum (PQ) key exchange combined with elliptic curves standardized by the National Institute of Standards and Technology (NIST).
libsshsupports hybrid key exchange with ML-KEMWith this update, the
libsshlibrary introduces support for post-quantum traditional (PQ/T) hybrid key exchange methods based on the quantum-resistant Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM) standard and traditional Elliptic-curve Diffie-Hellman (ECDH) key exchange schemes. You can use the following methods defined by the Internet Engineering Task Force (IETF)draft-ietf-sshm-mlkem-hybrid-kexdocument in the SSH protocol:-
mlkem768nistp256-sha256 -
mlkem768x25519-sha256 -
mlkem1024nistp384-sha384
Note that
mlkem768x25519-sha256is the preferred key exchange method for SSH connections unless you change the configuration.-
p11-kit-client.soseparates to thep11-kit-clientsubpackageThe
p11-kit-client.somodule moves from thep11-kit-serversubpackage to the newp11-kit-clientsubpackage. With the separated subpackages, you can install only the required parts and avoid redundant content on host systems or in containers.
- OpenSSH relaxed GSSAPI key exchange restrictions in FIPS mode
With this update, the OpenSSH suite permits GSSAPI key exchange methods with the following Diffie-Hellman (DH) and Elliptic Curve Diffie-Hellman (ECDH) groups in FIPS mode:
-
gss-group14-sha256 -
gss-group16-sha512 -
gss-nistp256-sha256
Also, OpenSSH in FIPS mode allows a non-cryptographic use of the MD5 algorithm. As a result, you can use OpenSSH in FIPS mode to establish SSH connections by using GSSAPI key exchange.
-
- New
-coption forrestoreconcounts relabeled files With this update, you can use the
restoreconcommand with the-coption. Therestorecon -ccommand performs relabeling, prints the number of relabeled files in its output, and sets the exit code to 0 only if at least one file is relabeled. This makesrestorecon -cuseful for verifying that remediations of labeling problems are successful.
CanonicalMatchUserinsshd_configprevents privilege escalation for capitalized AD usernamesThis update of the
opensshpackages introduces theCanonicalMatchUserdirective for thesshd_configconfiguration file. With the new directive, you can configureMatch Userblocks so thatsshdfirst attempts to obtain the username from a password database instead of using an alias. As a result, Active Directory (AD) users can no longer bypass chroot restrictions when using capital letters in their usernames, which might lead to privilege escalation.Jira:RHEL-101440[1]
- The SELinux policy confines the
systemd-oomdservice New rules in the SELinux policy provide specific confinement for the
systemd-oomdservice. This update helps comply with the CIS Server Level 2 benchmark for the restriction of unconfined daemons.As a result,
systemd-oomdno longer uses theunconfined_service_tlabel and runs correctly in SELinux enforcing mode.Jira:RHEL-106998[1]
- Several RHEL services transition from SELinux permissive to enforcing mode
With this update, the following SELinux domains move from permissive to enforcing mode:
-
anaconda_generator_t -
ktlshd_t -
switcheroo_control_t -
systemd_pcrextend_t -
systemd_user_runtimedir_t -
tuned_ppd_t
These domains temporarily operated in permissive mode. This allowed the system to log additional access denials and gather data to complete the security policy without a service failure. The temporary observation phase is complete.
As a result, the system proactively prevents unauthorized access for these services.
Jira:RHEL-107038[1]
-
- SELinux policy better fits the new OpenSSH structure
With this update, the SELinux policy defines specific security contexts and transitions for the new OpenSSH binary structure, including the
/usr/libexec/openssh/sshd-sessionand/usr/libexec/openssh/sshd-authbinaries.The change aligns with splitting the monolithic
sshddaemon into specialized binaries to reduce the attack surface. By splitting the listenersshd, the per-session logicsshd-session, and the authentication phasesshd-authinto separate processes, the pre-authentication code is isolated in a disjoint address space. This architectural change requires explicit SELinux types to ensure each component maintains the necessary privileges while adhering to the principle of least privilege.As a result, the OpenSSH server benefits from improved security through process isolation and reduced memory usage after the authentication phase completes. SELinux correctly confines these new binaries, ensuring that host keys and authentication sockets remain protected while allowing standard operations such as PAM authentication to function seamlessly in the new multi-binary environment.
- New
setfilesoption reduces memory usage on large file systems With this update, the
setfilesutility includes a new-Aoption. Tracking conflicts between inodes with multiple hard links can consume significant memory, especially on large file systems. Use the-Aoption to disable tracking of these conflicts. This reduces memory consumption, allowing to runsetfileson memory-constrained systems without encountering high memory overhead.
capnprotois available in the CRB repositoryRHEL 10.2 introduces the
capnprotopackage, a high-performance data interchange and remote procedure call (RPC) system. This package serves as a shared dependency forrust-sequoia-sqandrust-sequoia-podman, both of which bundled this library internally before this update.The
rust-sequoiapackages use thecapnprotozero-copy serialization and RPC system to communicate with the Sequoia Keystore. This architecture isolates private keys in a separate process to enhance security and ensures the high-speed performance required for large-scale cryptographic tasks, such as container image signing.The
capnprotopackage is available for installation from the CodeReady Builder (CRB) repository. As a result, security updates and bug fixes for the library can be applied independently of the applications that depend on it.Jira:RHEL-114452[1]
setoolsrebased to 4.6.0The
setoolspackages, which provide SELinux user-space analysis tools, are rebased to upstream version 4.6.0. This version provides important fixes and enhancements, most notably the following:-
Added the
--role_typesoption for theseinfocommand to display roles allowed for a specified type -
Added a new module to the
secheckertool for asserting kernel modules are read-only -
Added support for the
nlmsgextended permission - Improved code quality and unit testing
- Dropped methods marked for deprecation
-
Added the
fapolicydrebased to 1.4.3The
fapolicydpackages are rebased to upstream version 1.4.3 and provide many enhancements and bug fixes over the previous version. Most notably:-
Added the
--filteroption for thefapolicyd-cli --filecommand -
Added the
--test-filteroption for thefapolicy-clicommand to help test filter rules -
Added the
fapolicyd-filter.conf(5)man page -
Added the
--check-ignore_mountsoption forfapolicyd-cli -
Added the
--verboseflag for thefapolicyd-cli --check-ignore_mountscommand -
Increased the default value of the
db_max_sizeparameter -
Added support for the
db_max_size = autooption, which enables automatic database size management by thefapolicyddaemon - Increased the default subject cache size
-
Moved the
fapolicyd-rpm-loaderprogram to the/bindirectory -
Optimized performance of the
fapolicydframework
-
Added the
crypto-policiesenables ML-KEM forlibsshThis update of the system-wide cryptographic policies
crypto-policiesadds support for the ML-KEM (Module-Lattice-Based Key-Encapsulation Mechanism) post-quantum (PQ) key exchange in thelibsshlibrary. Themlkem768nistp256-sha256andmlkem1024nistp384-sha384algorithms are enabled by default in all predefined policies. This aligns with support for ML-KEM in OpenSSH, providing a quantum-resistant key exchange method for your SSH sessions.
- Support for ML-KEM with NIST curves in FIPS mode added to OpenSSH
This release of the
opensshpackages introduces support for the ML-KEM (Module-Lattice-Based Key-Encapsulation Mechanism) post-quantum (PQ) key exchange combined with elliptic curves standardized by the National Institute of Standards and Technology (NIST) in FIPS mode. You can establish SSH connections with a hybrid security provided by the combination of classical cryptography and a quantum-resistant key exchange mechanism.
podman-sequoiasupports composite post-quantum signaturesThe
podman-sequoialibrary provides the ML-DSA-65+Ed25519 and ML-DSA-87+Ed448 algorithms to meet the Commercial National Security Algorithm Suite (CNSA) 2.0 guidelines for software signatures.As a result, after you install
podmanandpodman-sequoia, you can create and verify container image signatures with these post-quantum schemes.Jira:RHEL-126677[1]
capnprotorebased to version 1.3The
capnprotopackage is rebased to version 1.3. This update provides security enhancements and bug fixes, and ensures compatibility with newer Sequoia versions.
/dev/papr-*devices have more specific SELinux labelsWith this update of the
selinux-policypackages, the following devices have more specific SELinux labels:-
/dev/papr-indices -
/dev/papr-physical-attestation -
/dev/papr-platform-dump
This aligns with the addition of new character device interfaces to the kernel, providing user-space application binary interface (ABI) access to the Power Architecture Platform Reference (PAPR) system parameters, in addition to the existing kernel-internal API.
As a result, the SELinux policy assigns distinct labels to these devices so that different permissions can apply to various services accessing them.
-
libsshrebased to 0.12.0The
libsshpackages have been upgraded to version 0.12.0. The new version provides many enhancements and bug fixes, notably:Added support for hybrid post-quantum key exchange mechanisms, in particular the following:
-
sntrup761x25519-sha512 -
sntrup761x25519-sha512@openssh.com -
mlkem768nistp256-sha256 -
mlkem768x25519-sha256 -
mlkem1024nistp384-sha384
-
- Added support for GSSAPI key exchange as defined in the RFC 4462 and RFC 8732 documents
- Added support for Ed25519 keys through PKCS #11
- Added support for FIDO Universal 2nd Factor (U2F) keys, compatible with OpenSSH
Added new configuration options:
-
RequiredRsaSize -
AddressFamilyfor clients -
GSSAPIKeyExchange -
GSSAPIKexAlgorithms
-
- Added more OpenSSH-compatible percent expansion characters
- Added API functions for signing arbitrary data with SSH keys
- Increased the minimum RSA key size to 1024
-
Improved the stability and compatibility of the
ProxyJumpdirective - Added functionality to obtain a list of configured identities
- Added new PKI context structure for key operations
crypto-policiesenablemlkem768x25519-sha256forlibsshWith this update, the system-wide cryptographic policies enable the
mlkem768x25519-sha256key exchange algorithm for thelibsshlibrary in all predefined policies. This aligns with recently added support for this ML-KEM curve hybrid inlibssh. As a result,mlkem768x25519-sha256is enabled by default and negotiated with the highest priority, protecting SSH connections with a combination of traditional and post-quantum cryptography (PQC).
p11-kitrebased to 0.26.1The
p11-kitpackages have been upgraded to upstream version 0.26.1. The new version provides many enhancements and bug fixes, most notably:- PKCS #11 headers are updated to version 3.2, which supports post-quantum cryptography (PQC) definitions.
-
The trust module now correctly looks up the last DN (Distinguished Name) in the
RDNSequenceattribute as defined in the RFC 4514 document. - You can specify the server address with the new module configuration option for the Remote Procedure Call (RPC) protocol.
- Handling of an empty array attribute in RPC is fixed.
-
Dependency on the
libsystemdlibrary for server socket activation is removed.
Jira:RHEL-139074[1]
- New package:
clevis-pin-trustee The
clevis-pin-trusteepackage provides a new Clevis pintrusteethat enables automated encryption and decryption of LUKS-encrypted volumes by using remote attestation through the Trustee Key Broker Service (KBS). Thetrusteepin integrates with the standard Clevis framework through theclevis-encrypt-trusteeandclevis-decrypt-trusteecommands, and it includes a Dracut module60clevis-pin-trusteefor automated root volume unlocking during early boot.In scenarios such as confidential clusters for OpenShift and confidential virtual machines with OpenShift Virtualization, the Trustee server acts as the policy enforcement point, releasing the disk encryption key only when the requesting platform’s attestation evidence validates against a set of reference values.
As a result, you can bind LUKS-encrypted volumes to one or more Trustee servers by using a
clevis luks bind -d <device> trustee '<config>'command. You can also combine thetrusteepin with other Clevis pins, such astangandtpm2, for multi-factor or multi-policy unlock configurations.Jira:RHEL-139808[1]
- Keylime rebased to 7.14.1
The Keylime packages are rebased to upstream version 7.14.1. The most notable bug fixes and enhancements include the following:
- Resource management
-
Resolves a file descriptor leak in the
keylime-policytool when processing remote RPM repositories. - Policy tooling
-
Fixes an issue where the
keylime-policy --ima-measurement-listoption incorrectly handled its default values. - New agent-driven push model
- Introduces a new communication mode where agents proactively push attestation data to the verifier. This enhances compatibility with edge computing and environments behind restrictive firewalls or network address translation (NAT).
- Expanded hardware cryptography support
- Adds support for Elliptic Curve Cryptography (ECC) keys using the P-192, P-224, P-256, P-384, and P-521 NIST curves directly from the Trusted Platform Module (TPM).
keylime-agentrebased to 0.2.9The
keylime-agentpackage is rebased to upstream version 0.2.9, which includes the following enhancements:- New agent-driven push attestation model
- The agent supports a push model for attestation. In this model, the agent proactively initiates communication with the verifier rather than waiting for an inbound request. This is particularly beneficial for systems operating behind restrictive firewalls or network address translation (NAT), because it eliminates the need for open inbound ports on the monitored node.
- Expanded hardware cryptography support
- The agent supports Elliptic Curve Cryptography (ECC) keys generated within the Trusted Platform Module (TPM). Supported NIST curves include P-192, P-224, P-256, P-384, and P-521 to provide more efficient, modern cryptographic operations.
- Flexible TPM RSA support
- In addition to standard 2048-bit keys, the agent supports alternative RSA key sizes of 1024, 3072, and 4096 bits directly from the TPM. This provides administrators with greater flexibility when aligning with specific organizational security policies or hardware limitations.
- ECC-signed TLS certificates
- The agent supports using certificates signed with ECC keys for securing TLS communications. This ensures that the entire communication chain between the agent and other Keylime components can utilize high-performance, modern encryption.
crypto-policiesenable ML-KEM NIST curves for OpenSSH in FIPS modeWith this update, the system-wide cryptographic policies enable the
mlkem768nistp256-sha256andmlkem1024nistp384-sha384key exchange algorithms for OpenSSH in FIPS mode. This aligns with recently added support for these ML-KEM NIST curve hybrids in OpenSSH. As a result, RHEL 10.2 hosts running in FIPS mode and with theFIPSsystem-wide cryptographic policy active perform SSH key exchanges by usingmlkem768nistp256-sha256ormlkem1024nistp384-sha384as long as the other peer also supports and prefers them.
- OpenSCAP rebased to 1.4.3
The OpenSCAP packages have been rebased to upstream version 1.4.3. This version provides bug fixes and various enhancements. For additional information, see the OpenSCAP release notes.
- SCAP Security Guide rebased to 0.1.80
For additional information, see the SCAP Security Guide release notes.
6.3. RHEL for Edge Copy linkLink copied to clipboard!
Review new features and enhancements for RHEL for Edge in Red Hat Enterprise Linux 10.2.
- The FDO client and servers are fully supported
RHEL 10.2 introduces a new implementation of the FIDO Device Onboarding (FDO) client and servers. These components, which were not available in previous releases, are fully supported and available as the following RPMs:
- go-fdo-client-1.0.0-1.el10.x86_64.rpm
- go-fdo-server-1.0.0-1.el10.x86_64.rpm
- go-fdo-server-manufacturer-1.0.0-1.el10.noarch.rpm
- go-fdo-server-owner-1.0.0-1.el10.noarch.rpm
go-fdo-server-rendezvous-1.0.0-1.el10.noarch.rpm
WarningThese new Go-based implementations are not compatible with the original FDO RPMs and container images that remain in Technology Preview. Using the go-fdo-* packages in conjunction with the fdo-* packages or containers is not supported.
Jira:RHELDOCS-18977[1]
- The
greenboot-rspackage is available The
greenboothealth check framework was enhanced asgreenboot-rs, a reimplementation designed for improved maintainability and supportability. The new version is fully compatible with existinggreenbootfunctionality and custom health checks. As a result, this version ensures more robust system roll backs during system upgrades.Jira:RHELDOCS-21813[1]
6.4. Software management Copy linkLink copied to clipboard!
Review new features and enhancements for software management in Red Hat Enterprise Linux 10.2.
libsolvrebased to 0.7.33The
libsolvpackages are rebased to upstream version 0.7.33. This version provides the following important fixes and enhancements:-
Removed dependency on the external
findutility in therepo2solvtool. -
Added a new
SOLVER_FLAG_FOCUS_NEWflag. -
Fixed the return value of the
repodata.add_solv()function.
-
Removed dependency on the external
libreporebased to 1.19.0The
librepopackages are rebased to upstream version 1.19.0. This version provides the following important fixes and enhancements:-
Fixed a SELinux warning if SELinux runs in a container where
/sys/fs/selinuxis not mounted. - Fixed caching package checksums on file systems that do not support extended attribute names with uppercase characters.
- When selecting the fastest mirror, mirrors with latency up to twice that of the fastest mirror are randomly shuffled to spread the load.
Jira:RHEL-126292[1]
-
Fixed a SELinux warning if SELinux runs in a container where
6.5. Shells and command-line tools Copy linkLink copied to clipboard!
Review new features and enhancements for shells and command-line tools in Red Hat Enterprise Linux 10.2.
- Security and TLS improvements in
openwsman2.8.1 The
openwsmanpackage has been updated to version 2.8.1 with the following improvements:- Improved TLS 1.3 support.
- Improved compatibility with OpenSSL 3.0.
- Improved SSL/TLS error reporting.
- Improved security by clearing passwords from memory after use and enhancing buffer safety.
Jira:RHEL-99191[1]
opencryptokirebased to version 3.26.0The
opencryptokipackages are rebased to upstream version 3.26.0. This version provides important fixes and enhancements, most notably the following:-
RSA keys up to 16K bits are supported in the
Softtoken and thep11saktool. -
RSA keys up to 8K bits are supported in the
CCAtoken. This requiresCCAversion 8.4 or version 7.6 or later. -
The
CKM_SHA512_224_KEY_DERIVATIONandCKM_SHA512_256_KEY_DERIVATIONkey derivation mechanisms are supported in theSoftandICAtokens. -
The
CKK_SHAxxx_HMACkey types andCKM_SHAxxx_KEY_GENkey generation mechanisms are supported in theSoft,ICA,CCA, andEP11tokens, as well as thep11saktool. -
Key wrap and unwrap commands to export and import private and secret keys by using various key wrapping mechanisms are supported in the
p11saktool. -
Using a hardware security module (HSM)-protected TLS client key through a PKCS #11 provider is supported in
p11kmip. -
Exporting non-sensitive private keys to password-protected PEM files is supported in the
p11saktool. -
Canceling an operation by using a
NULLmechanism pointer at theC_XxxInit()call is supported as an alternative toC_SessionCancel()for PKCS#11 version 3.0. -
Pairing the friendly BLS12-381 elliptic curve (EC) for sign and verify operations by using
CKM_IBM_ECDSA_OTHERand signature and public key aggregation by usingCKM_IBM_EC_AGGREGATEis supported in theEP11token. -
Generating BLS12-381 EC keys is supported in
p11sak. IBM-specific ML-DSA and ML-KEM key types and mechanisms are supported in the
EP11,CCA, andSofttokens, andp11sak. Before you use these key types and mechanisms, note the following requirements:-
The
EP11token requires anEP11host library version 4.2 or later, and a CEX8P cryptographic card with firmware version 9.6 or later on IBM z17 or version 8.39 or later on IBM z16. -
The
CCAtoken requiresCCAversion 8.4 or later. -
The
Softtoken requires OpenSSL 3.5 or later, or a configured OQS-provider.
-
The
Jira:RHEL-100058[1]
-
RSA keys up to 16K bits are supported in the
- Overriding the
systemd-logindsession class for cron-initiated sessions With this update, you can override the
systemd-logindsession class for sessions thatcronscripts start. To start a session without triggering thesystemd --usermanager, set theXDG_SESSION_CLASS=background-lightenvironment variable in the crontab. This configuration reduces the number of log messages thatcronexecutions generate.Jira:RHEL-109832[1]
- Environment modules rebased to v5.6.1
Environment modules is rebased to upstream version 5.6.1. This release introduces key new features, enhancements, documentation and community updates, and few bug fixes. Here is the list for reference:
New features and enhancements:
-
Recursive module searching with spider command: With this update, you can use the
spidersub-command to find available modules in enabled modulepaths and recursively within modulepaths enabled by those modules. You can control the output depth and content by using the--indepthswitch or thespider_outputconfiguration option. -
Module aliases with provide command: This enhancement introduces the
providemodulefile command, which defines an alias for the currently evaluated module and communicates when a module offers additional components or functionality. -
Automated conflict handling: With this update, the
conflict_unloadconfiguration option automatically unloads conflicting modules and their dependents when you load a new module. You must enable bothauto_handlingandconflict_unloadto activate this automated behavior. -
Integrated information logging: This update adds logging capabilities through the
loggerandlogged_eventsconfiguration options. You can now track module commands and evaluations in the system log. -
Module help and warning commands: This release introduces the
module-helpcommand to define help text for modules and themodule-warncommand to issue warnings when a module is evaluated.
-
Recursive module searching with spider command: With this update, you can use the
Bug fixes
-
Path resolution in modulefile commands: Before this update, the behavior of path resolution was unclear. This release clarifies that no automatic path resolution is performed on
prepend-path,append-path, orremove-pathcommands. For detailed information about changes, refer to the Environment Modules upstream documentation.
-
Path resolution in modulefile commands: Before this update, the behavior of path resolution was unclear. This release clarifies that no automatic path resolution is performed on
6.6. Infrastructure services Copy linkLink copied to clipboard!
Review new features and enhancements for infrastructure services in Red Hat Enterprise Linux 10.2.
- The
linuxptppackage supports dropping root privileges in theptp4lprocess This update adds support for dropping root privileges in the
ptp4lprocess. To facilitate this, thelinuxptppackage creates thelinuxptpsystem user and the/run/ptpdirectory for Unix domain sockets used by theptp4l,phc2sys,ts2phc,tz2alt, andpmcprograms. Thelinuxptpuser is included in theclocksystem group to reopen/dev/ptp*devices after start.After updating the
udevrules included in the systemd-udev package, perform these steps to drop root privileges:-
Reboot your system or run the
udevadm triggercommand for the/dev/ptp*devices to get theclockgroup. -
To configure
ptp4lto drop root privileges, adduser linuxptpto the global section of the/etc/ptp4l.conffile. -
If
uds_addressoruds_ro_addressare specified in the configuration, you must update the addresses to move the sockets to the/run/ptpdirectory so thatptp4lcan bind its sockets and communicate with management clients.
As a result, the
ptp4lprocess can run with reduced privileges.Jira:RHEL-12183[1]
-
Reboot your system or run the
- The default
chronyconfiguration ons390xuses the STP reference clock With this update, the default
chronyconfiguration on thes390xarchitecture uses the s390-specific Server Time Protocol (STP) reference clock instead of public servers frompool.ntp.org. As a result,chronysynchronizes time with the STP reference clock by default ons390xsystems.Jira:RHEL-62844[1]
foomatic-ripfilter rejects unrecognized PPD valuesThe
foomatic-ripfilter rejects PostScript Printer Description (PPD) values not in an approved list of hashes. Before this update, certain PPD options were vulnerable to security exploits. This update implements an allowlist mechanism to ensure secure printing.For new installations, use the
foomatic-hashtool to scan the PPD file and move approved hashes to the/etc/foomatic/hashes.d/directory. For existing installations, review auto-allowed values in the/var/tmp/foomatic.*file.Jira:RHEL-93944[1]
chronyrebased to version 4.8The
chronypackages are rebased to upstream version 4.8, which includes the following notable enhancements and bug fixes:-
The
maxunreachoption is added to limit the selection of unreachable sources. -
The
-uoption is added to thechronyccommand to drop root privileges. -
The
opencommandsdirective is added to select remote monitoring commands. -
The
waitsyncedandwaitunsyncedoptions are added to thelocaldirective. -
The RTC
refclockdriver is added. -
You can specify the PHC
refclockdriver with a network interface name. - Detection of clock interference from other processes is added.
-
The
chronycsocket is hidden to mitigate unsafe permissions changes. -
The
refclocksamples are validated for reachability updates.
-
The
- valgrind rebased to upstream version 3.26.0
The upgrade to the upstream version 3.26.0 provides the following notable enhancements:
-
valgrind recognizes the following Linux kernel system calls:
cachestat,futex_waitv,listmount,mount_setattr,mseal,quotactl_fd,remap_file_pages,setdomainname,statmount,swapoff,swapon,sysfs, andustat. -
A new option,
--modify-fds=yes, has been added. This option behaves like--modify-fds=high, returning the highest available file descriptor first. However, if file descriptors0,1, or2(stdin,stdout,stderr) are available, they are returned before higher-numbered file descriptors. -
When
--xml=yesis used, log output protocol version 6 is always enabled. Protocol version 6 includes error summaries in the XML output. -
A new value,
bad, has been added for the--track-fdsoption. When--track-fds=badis specified, valgrind reports only invalid file descriptor usage, such as double close or use of an invalid file descriptor. It does not report unclosed file descriptors at program exit. -
DWARF inlined subroutine handling has been rewritten to work across compilation units. This update removes backtraces that previously displayed
UnknownInlinedFunin warnings or error messages. A new utility script,
vgstack, has been added. Usevgstack <PID>to attach to a running valgrind process and display backtraces of the target executable. The script provides the following options:-
-h- Displays minimal help. -
-v- Displays version information.
-
-
valgrind recognizes the following Linux kernel system calls:
- SystemTap is rebased to version 5.4
SystemTap is rebased to version 5.4. The notable changes in this update include:
-
Implicit Header Discovery: The
@cast()operator now automatically searches the Linux Userspace API (UAPI)<vmlinux.h>header for type declarations. This reduces the requirement for manual header file inclusion in many common tracing scenarios. - Enhanced Type Validation: Improvements to type checking and autocast processing provide more rigorous analysis during the translation phase, identifying potential type mismatches earlier in the development cycle.
-
Implicit Header Discovery: The
elfutilsrebased to 0.194The upgrade to the upstream version 0.194 provides the following notable enhancements:
-
debuginfod-find: Fixed a caching issue that prevented re-downloading files after a user-cancelled download. elfclassify: Added the following new options:-
--has-debug-sections -
--any-ar-member
-
-
elflint: Vendor and application-specific ELF note types no longer trigger compliance errors. -
libdwfl_stacktrace: Added a new function,dwflst_sample_getframes. -
libelf: Added manual pages for many library functions. -
readelf: Improved performance by up to 13% when using the-Noption.
-
sscgrebased to version 4.0.3The
sscgpackages are rebased to upstream version 4.0.3. This version provides important fixes and enhancements, most notably the following:- Module-Lattice-Based Digital Signature Algorithm (ML-DSA) key generation is supported to provide post-quantum cryptography capabilities.
- Elliptic Curve Digital Signature Algorithm (ECDSA) key generation is supported.
- The command-line interface help output is reorganized into logical groups.
- Apache’s
ErrorLogFormatsupports millisecond timestamps With this update, Apache’s
ErrorLogFormatsupports millisecond timestamps. Millisecond-level timestamps in error logs improve log filtering, troubleshooting efficiency, and cross-system traceability. You can configure this, for example, by using the%{m}tformat specifier. As a result, you can correlate and filter logs across systems with millisecond precision.Jira:RHEL-145713[1]
6.7. Networking Copy linkLink copied to clipboard!
Review new features and enhancements for networking in Red Hat Enterprise Linux 10.2.
- Nmstate can configure Libreswan and use its default values
By default, the NMstate API uses NetworkManager to send configurations to Libreswan service. In this case, NetworkManager defines default values, which are different from Libreswan’s defaults. With this enhancement, you can set
nm-auto-defaults: falsein the YAML file and Nmstate does not inject any extra settings. In this case, Libreswan uses this configuration and also its own default values.For backward compatibility, the default value of
nm-auto-defaultsistrue.
- The NetworkManager Libreswan plugin and Nmstate support using a single tunnel for multiple subnets
This update enhances the NetworkManager Libreswan client plugin and Nmstate to configure multiple subnets in IPsec policies. This corresponds to the use of multiple subnets in the
leftsubnetsandrightsubnetsparameters in the Libreswan configuration. As a result, users can connect to multiple subnets by using a single IPsec tunnel.
NetworkManager-libreswansupports on-demand IPsec connectionsWith this enhancement, you can use the
NetworkManager-libreswanplugin to start Libreswan IPsec connections in listening mode. Previously, NetworkManager failed to activate a connection if the remote endpoint was unreachable. By setting the newnm-connect-modeproperty toondemandin the connection profile, the tunnel remains active in a listening state after an initial failure. This ensures the system can still accept incoming connection requests even if it could not initiate the primary tunnel.
- The
epollkernel API supports IRQ suspension for improved network efficiency This enhancement adds IRQ suspension support to the
epollkernel API. This improves network processing efficiency within the kernel stack. This mechanism bridges the gap between throughput and latency by providing a way to dynamically optimize the networking stack for high-load efficiency and low-load responsiveness simultaneously. Applications that useepollwith this new mechanism can reduce CPU cycle consumption during high traffic loads and decrease tail latency during low traffic periods.Note that you must modify your application to support this IRQ suspending.
Jira:RHEL-77189[1]
- Nmstate can set alternative names on network interfaces
With this enhancement, you can use the Nmstate API to set alternative names on network interfaces to simplify configuration management and support processes. For example, to assign
LANas an alternative name toenp1s0and remove the nameinternal-LAN, use:interfaces: - name: enp1s0 alt-names: - name: LAN - name: internal-LAN state: absent
iprouterebased to version 6.17.0The
iproutepackage has been updated to upstream version 6.17.0.Notable enhancements:
-
The
tcutility supports 64-bit hardware packet counters. -
The
iputility displays thenetns-immutableproperty. -
The
iputility supports theIFLA_VXLAN_MC_ROUTEconfiguration attribute. -
The
ip neighcommand supports theextern_validflag. -
The
ip rulecommand supports port and Differentiated Services Code Point (DSCP) mask. -
The
ip statscommand supports bridge VLAN statistics. -
The
bridge fdbcommand supports the forward database (FDB) activity notification control. -
The
bridge mdbcommand supports the offload failed flag. - The color output handling was improved.
-
The
- NetworkManager supports specifying an HSR interlink interface
With this update, RHEL users can configure an interlink interface for High-availability Seamless Redundancy (HSR) connections. Users can now use the
hsr.interlinkproperty to specify the interlink interface name. As a result, you can configure RHEL as a Redundancy Box (RedBox).
- The PRP and HSR protocols are fully supported
The
hsrkernel module provides the following protocols:- Parallel Redundancy Protocol (PRP)
High-availability Seamless Redundancy (HSR)
The IEC 62439-3 standard defines these protocols, and you can use this feature to configure redundancy with zero-time recovery in Ethernet networks.
The protocols were previously available as a Technology Preview. Starting with RHEL 10.2, Red Hat fully supports this module.
Jira:RHEL-100942[1]
- Setting the DHCP client ID is now possible through a kernel argument
With this update, users can now set the DHCP client ID as a kernel argument. Certain DHCP servers require this ID to identify a client correctly. By setting the
rd.net.dhcp.client-idkernel argument, the client ID is already available during early boot operations.
- The
nftablesframework supports name-basednetdevhooks with wildcards This enhancement introduces name-based
netdevhooks with wildcard support to thenftableskernel component. This ensures defined rule sets remain stable regardless of interface presence. Previously,nftableswould bind to each specified interface immediately upon adding aflowtableornetdev-family chain. Consequently, the transaction failed due to a non-existing interface, and removing an interface deleted the matching interface specifications or entire bound chains.With this update, hooks for non-existing interfaces are accepted in an inactive state and bind to matching interfaces at the time they appear in the system. This dynamic registration also provides the possibility to accept simple interface (suffix) wildcards to bind a
flowtableornetdev-family chain to any matching interface. You can inspect currently active hooks by using thenft list hookscommand.
- RHEL supports WiFi7 hardware
RHEL 9.8 added support for WiFi7 hardware. You can use use it to connect your host to wireless networks that use this standard.
Jira:RHEL-111098[1]
- The kernel supports setting a lower TCP maximum retransmission timeout value
With this enhancement, you can set a lower maximum TCP retransmission timeout value than the default
120000ms to reduce network latency. Note that changing this setting can require tuning other kernel settings as well.You can configure this limit either through the
tcp_rto_max_mskernelsysctlsetting or theTCP_RTO_MAX_MSsocket option. If you set both, the socket option has a higher priority.Jira:RHEL-115393[1]
- FRR rebased to version 10.4.1
The FRR is now rebased to version 10.4.1. This version fixes several issues affecting stability, correctness, and reliability. Notable changes include:
BGP (
bgpd):-
Resolved
addpathhandling issues that could incorrectly withdraw selected routes. - Fixed link-local next-hop capability handling.
-
Corrected a compilation issue in the
bgpdmodule. -
Improved graceful restart behavior by fixing the
selectionDeferralTimerdisplay. - Addressed initialization issues with local variables.
- Reversed changes related to EVPN testing that caused instability in non-default EVPN backbone configurations.
-
Resolved
OSPF (
ospfd):-
Fixed a use-after-free issue related to LSA handling, improving daemon stability. EIGRP (
eigrpd): - Improved validation of hello packets and TLVs to enhance protocol robustness.
-
Fixed a use-after-free issue related to LSA handling, improving daemon stability. EIGRP (
Zebra and core libraries:
- Fixed buffer overflow issues identified through fuzz testing.
- Improved handling of singleton nexthops during link state changes for weighted ECMP (WCMP).
- Corrected computation of link-state ZAPI message sizes.
VTYSH:
- Fixed an issue where copying configuration from a file did not correctly apply settings.
Testing improvements:
Enhanced reliability of embedded route processor (RP) topotests.
These updates improve overall routing stability, correctness, and resilience, particularly in dynamic or large-scale network environments.
nftablesrebased to version 1.1.5The
nftablespackage has been updated to upstream version 1.1.5.Notable enhancements:
- The memory consumption with sets and maps was reduced.
- You can use protocol dependency values in sets.
- The auto-merge feature skips elements with timeout and expiration.
-
You can use the
queuekeyword in set type definitions by using thetypeofkeyword. -
The
nft monitorcommand can monitorflowtableevents. -
For consistency with other commands, the
nft list sets inet <table_name>command works without thetablekeyword. -
The
nftablesframework internally uses a range expression to represent a range instead of two comparisons. - A symbol table for Multipath TCP subtypes was added. With this feature, you no longer need to look up actual subtype values in the respective RFC.
-
Support for mangling
bitfieldheaders was added. - Set elements with multi-word descriptions are now displayed in a single line.
- The layer 4 protocol dependency when listing raw expressions is no longer removed.
-
The JSON format supports the
typeofkeyword. -
The bytecode generation for Virtual Local Area Network (VLAN) Priority Code Point (PCP) mangling in
netdev-family chains was fixed. - An issue causing bogus elements in large concatenated set ranges was fixed.
- A new check result was added to the Forwarding Information Base (FIB) expression to verify routes.
- The total number of elements is now displayed when listing sets.
- You can delete maps by using their unique handle.
- The JSON parser was hardened.
Notable bug fixes:
- Error messages for set or map re-declarations with conflicting types were improved.
-
The
optimizeparameter was fixed and improved. - Extended error reporting with large set elements was fixed.
-
nftablesavoids the incorrect removal ofmeta nfprotomatches in listings. -
The
getandresetcommands with interval sets and maps were fixed. -
Device names in
basechainandflowtabledeclarations are quoted. -
A misleading
No buffer space availableerror message was corrected.
- VLAN segmentation support for HSR and PRP interfaces
With this enhancement, you can create VLAN interfaces on top of High-availability Seamless Redundancy (HSR) and Parallel Redundancy Protocol (PRP) interfaces to enable network traffic segmentation. When configured, the kernel adds a VLAN tag to all packets transmitted through the VLAN interface. This provides greater control over traffic isolation. Note that supervision frames remain unaffected by this configuration and are always transmitted without a VLAN tag.
Jira:RHEL-130475[1]
- Threaded NAPI busy polling support added
With this enhancement, you can enable threaded NAPI busy polling on RHEL to significantly reduce the network latency. This feature uses dedicated kernel threads to continuously check for incoming packets, rather than waiting for hardware interrupts.
By design, threaded NAPI busy polling consumes more CPU cycles to achieve higher performance and lower latency, as the CPU remains active to process data immediately. Threaded NAPI busy polling is beneficial for high-performance, low latency applications, for example applications that use the
AF_XDPsocket. Use this enhancement for workloads where predictable, sub-microsecond response times are critical.Jira:RHEL-130765[1]
- The
dpllutility can manage and monitor DPLL devices With this update, the
iproutepackage includes thedpllutility which you can use to manage and monitor digital phase-locked loop (DPLL) devices. The utility useslibmnlto communicate with the kernel through thenetlinkinterface, providing a configuration tool for DPLL devices and pins.
- The K1 power state flag can be disabled on
e1000eNICs The K1 state reduces power consumption on ICH-family network interface controllers (NIC) during idle periods. However, on Intel Meteor Lake and later platforms, enabling K1 state on NICs that use the
e1000edriver can cause packet loss due to firmware misconfiguration, interoperability with certain link partners, and other conditions.Default:
- The K1 state is disabled on Intel Meteor Lake and later platforms.
The K1 state is enabled on platforms earlier than Intel Meteor Lake.
If you experience problems related to the K1 power state, disable K1 for the affected device:
Display the current status:
# ethtool --show-priv-flags <device> ... disable-k1: offDisable the K1 state:
# ethtool --set-priv-flags <device> disable-k1 on
Jira:RHEL-134991[1]
- Qualcomm wireless cards work correctly if passed through to a VM
Due to missing upstream support for passing Qualcomm wireless cards to VMs by using the PCI pass through feature, these cards do not work correctly in VMs. With this update, the
ath11kandath12kdrivers use certain kernel parameters to work around the problem. As a result, Qualcomm wireless cards that use these drivers work if you pass the devices to VMs. Note that the solution is only an unsupported workaround.Jira:RHEL-141347[1]
- The FOU and GUE protocols added to the kernel
This update adds the
fouandfou6modules to thekernel-modules-extrapackage. With these modules, you can configure connections that use the following protocols:- Foo-over-UDP (FOU), which encapsulates IP protocols directly within UDP packages, without adding extra headers. For example, you can use this protocol for tunneling protocols, such as Generic Routing Encapsulation (GRE) or IP-in-IP (IPIP).
Generic UDP Encapsulation (GUE), which adds a small header inside the UDP payload to carry metadata, such as the inner protocol. With GUE, you can use multiple protocols on the same UDP port, which makes GUE more flexible than FOU.
Red Hat does not support the
fouandfou6kernel modules.
Jira:RHEL-142435[1]
- The
firewalldservice supports policy sets This enhancements adds support for policy sets to the
firewalldservice. Policy sets are collections of pre-defined policies that you can use as a starting point for certain configurations. For example, thegatewaypolicy set is a set of configurations that enable masquerading, connection tracking helpers, and forwarding between zones.For further details, see Using
firewalldpolicy sets to configure a router.Jira:RHEL-70357[1]
6.8. Kernel Copy linkLink copied to clipboard!
Red Hat Enterprise Linux 10.2 is distributed with the kernel version 6.12.0-211.7.1. Review new features and enhancements for kernel in Red Hat Enterprise Linux 10.2.
- The
perfcommand supports Monaka CPU for performance monitoring With this update, the
perfcommand supports Monaka CPU to enable performance monitoring in the system. As a result, you can use this feature to analyze performance and power for high-performance computing (HPC) and datacenter applications. This feature is integrated into the Linux kernel version 6.12.0 and later.Jira:RHEL-23107[1]
- LUKS volume key for secure
vmcoredata saving on RHEL systems With this update, you can pass the LUKS volume key to the
kdumpkernel, to savevmcoredata to a LUKS-encrypted disk volume. This enhancement securesvmcoredata on RHEL systems, as sensitive data remains protected in the event of system crashes. To activate this optional feature, you must use the 'kdumpctl setup-crypttab' command. This update is available for the x86_64 architecture in RHEL 10.2.
- PerfMon support added for Clearwater Forest on CentOS Stream kernel
With this update, PerfMon support is added for Clearwater Forest, a hardware or software platform, on the CentOS Stream kernel. This enhancement enables performance monitoring for the Clearwater Forest platform, improving overall system efficiency and stability.
Jira:RHEL-45066[1]
- EDAC Driver Adds Intel Clearwater Forest Server Support
The EDAC driver is updated to add platform support for Intel Clearwater Forest (CWF) servers, enhancing RAS capabilities for this hardware. This change improves error detection and correction functionality specific to the Intel platform.
Jira:RHEL-45084[1]
- Perf tool rebased to upstream version 6.17
The perf tool and its kernel backend are rebased to align with upstream version 6.17. This update introduces several enhancements and bug fixes. Most notably, the following:
- Addressed memory leaks in perf trace.
- Supports the RDPMC metrics in clear mode.
- Added RAPL energy events support in the perf tool for the ARL-U platform. These changes improve performance analysis and resolve known issues in the perf tool.
Jira:RHEL-78200[1]
bpfis rebased to version 6.17- The eBPF subsystem is rebased to the Linux kernel upstream version v6.17. This update includes the following changes and enhancements:
New eBPF kernel functions (
kfuncs):-
bpf_cpumask_populate()for populating CPU mask bits -
bpf_copy_from_user_task_str()for reading strings from another process address space -
bpf_dynptr_copy()for copying dynamic eBPF pointers -
bpf_set_dentry_xattr()andbpf_remove_dentry_xattr()to set and remove xattrs with thesecurity.bpf.prefix -
bpf_rbtree_left(),bpf_rbtree_right(), andbpf_rbtree_root()for traversing the eBPF rbtree data structure - functions for reading memory into eBPF dynamic pointers
- functions for read-only string operations
-
bpf_cgroup_read_xattr()to readxattrof a cgroup node
-
- Improved verification of eBPF programs with loops
-
Referenced pointers (
kptrs) can now be passed intostruct_opscallbacks -
Reduced
bpf_cgrp_storage_busy()false positives when accessing cgroup local storage - New mechanisms for ordering of cgroup eBPF programs
- The eBPF Token can now delegate the privilege to read BTF data to user-space applications
-
It is no longer possible to attach eBPF programs to
noreturnfunctions - New locking mechanism, Resilient Queued Spinlock, which makes BPF programs and map operations less likely to deadlock the running kernel
-
Support for up to 12 arguments in BPF trampoline on
arm64, enabling eBPF trampolines for kernel functions with more than 7 parameters -
Support for
mmapofvmlinuxBTF data - New eBPF iterator for traversing the list of all DMA buffers
- eBPF streams for error reporting of various conditions detected by the eBPF runtime
-
Improved precision for
BPF_ADDandBPF_SUBoperations in the verifier -
Support for calls to
bpf_rdonly_cast(v, 0)that logically correspond to casts tovoid * -
Support for new eBPF instructions:
load_acquire,store_release, and timedmay_goto - Support for atomic update of eBPF maps that contain a hash table of eBPF maps
- Method for retrieving file descriptor information for eBPF links
Jira:RHEL-78204[1]
- Perf tool rebased to upstream v6.18
The perf tool and its kernel backend are rebased to align with upstream version v6.18. This update introduces several enhancements and bug fixes. Most notably, the following:
- Addressed memory leaks in perf trace.
- Supports the RDPMC metrics in clear mode.
- Added RAPL energy events support in the perf tool for the ARL-U platform. These changes improve performance analysis and resolve known issues in the perf tool
Jira:RHEL-78292[1]
cpupowerPython bindings are now in RHEL 10kernel-tools-libs-develWith this update, the
cpupowerPython bindings are integrated in RHEL 10. This enhancement places the bindings in thekernel-tools-libs-develpackage for easier access.Jira:RHEL-83442[1]
- Userspace action triggers for rtla
With this update, the
rtlatool now supports triggering userspace actions either when a latency threshold is reached or tracing concludes. Withrtla, you can execute diagnostic commands or extract trace data before the instance is removed, regardless of whether a threshold violation occurred.Jira:RHEL-89807[1]
- Intel QAT GEN6 device driver support
The Intel QAT crypto device driver is updated to support QAT GEN6 devices through the new
qat_6xxxdriver. GEN6 devices enable concurrent use of symmetric encryption, asymmetric encryption, and data compression. This was not available in earlier generations.Jira:RHEL-94928[1]
tpm2-toolsrebased for TPM 2.0 improvementsThe
tpm2-toolspackage is updated to ensure compatibility with modern TPM 2.0 hardware and improve security tooling support. This update enables enhanced TPM-based operations and aligns with upstream security and feature developments.Jira:RHEL-94930[1]
- Device IDs are added for the In-memory Analytics Accelerator (IAA) on the Wildcat Lake platform
With this update, the IAA is now moved from a Technology Preview to the supported state and the device IDs are added for In-memory Analytics Accelerator (IAA). As a result, devices on the Wildcat Lake platform are now supported.
Jira:RHEL-95628[1]
- Enhanced kernel issue debugging with the
function_graphtracer on RHEL With this update, you can trace and debug kernel issues more effectively on Red Hat Enterprise Linux (RHEL). This feature displays return values of functions within the function graph by using the
function_graphtracer inftrace. As a result, debugging experience improves for developers and system administrators.Jira:RHEL-105766[1]
- View CVEs patched by live kernel updates
kpatchreports which kernel CVEs are patched by live patches for the currently running base kernel. This enhancement helps administrators verify that specific CVEs are already remediated through live patching even when the on-disk kernel version appears vulnerable.By listing CVEs that are patched only by
kpatch, this enhancement improves security reporting and enables integration with compliance workflows and external scanners that must account for live-patched vulnerabilities.Jira:RHEL-106283[1]
- Updating
kernelCCP crypto driver support for Venice PCI device This update adds support for the AMD Venice CCP crypto device with PCI device ID 0x17D8 (PCIID 1002:17D8) in the kernel CCP driver. This enables systems with the Venice CCP hardware to use the updated cryptographic offload capabilities provided by the device.
Jira:RHEL-106909[1]
crashrebased to 9.0.1The
crashpackage, which provides a kernel analysis utility for live systems and various types of dump files, is rebased to upstream version 9.0.1. This version provides a number of fixes and enhancements, most notably the following:-
Internal
gdbis updated to version 16.2. -
Added
gdb multi-stackunwind support on 64-bit architectures (x86-64-v3), aarch64, and ppc64. - Added Rust support.
-
Internal
- You can select
cyclictestortimerlatas the measurement modules inrteval With this update, you can select the measurement module for the
rtevalutility. This overrides the default setting in therteval.conffile. This new feature, 'measurement-module', provides greater flexibility and control over performance testing, which enhances the precision and customization.Jira:RHEL-114927[1]
- Optimize CPU usage with Tuna 10.2’s
libcpupowerfunctionality With this update, you can manage CPU idle states more effectively in Tuna 10.2. The
libcpupowerfunctionality has been re-enabled, which allows disabling, enabling, or checking the status of idle states on selected CPUs. By using thetuna cpu_powercommand, you can optimize your CPU usage.
6.9. Boot loader Copy linkLink copied to clipboard!
Review new features and enhancements for boot loader in Red Hat Enterprise Linux 10.2.
- Support for Dynamic Key Management in PowerVM LPAR Secure Boot (GRUB2) on IBM Power Systems
With this release, PowerVM LPAR guest operating systems on IBM Power Systems support dynamic key management for secure boot verification. This enhancement allows you to enroll and manage your own keys in the Platform Key Store, transitioning from a static key model.
During boot, the partition firmware authenticates
grub2using the enrolled verification key. Thengrub2verifies the kernel image integrity before loading. This improves flexibility and control over boot integrity and strengthens the security posture for IBM Power Systems environments.Jira:RHEL-24510[1]
- BLS snippets support the
efikeyword for UKI You can create Boot Loader Specification (BLS) snippets for kernel unified kernel images (UKIs) and use the
efikeyword to specify the path to the UKI, similar to how thelinuxkeyword specifies the path to the kernel. For example:title Red Hat Enterprise Linux 10.2 (6.12.0-197.el10) version 6.12.0-197.el10.x86_64 efi /EFI/Linux/kernel-6.12.0-197.el10-UKI.efiIn this configuration, BLS snippets reside in
/boot/efi/loader/entries, and the UKIs reside in/boot/efi/EFI/Linux.
shimsigned with Microsoft 2011 and 2023 UEFI certificatesThe
shimbootloader package is signed with both the Microsoft Windows UEFI Driver Publisher (MS 2011) certificate and the Microsoft UEFI CA 2023 certificate for Red Hat Enterprise Linux 10.2. This update helps maintain compatibility with systems that rely on either of these Microsoft UEFI trust anchors while preserving the existing Red Hat UEFI Publisher 2024 signature.With this change, both
shimx64.efiandshimaa64.efibinaries are correctly signed, enabling secure boot environments to validate the updated bootloader components on supported hardware platforms.
6.10. File systems and storage Copy linkLink copied to clipboard!
Review new features and enhancements for file systems and storage in Red Hat Enterprise Linux 10.2.
- A new watchdog for
fanotifypermission events is now available With this update, an optional watchdog for
fanotifypermission events has been introduced. If a system hang occurs due tofanotifypermission events, the watchdog logs the process ID and name of the task responsible for the hang to the system log. This enhancement simplifies and accelerates the diagnosis offanotifyrelated hangs without requiring kernel crash dump analysis.Note that the watchdog is disabled by default. To enable it, write a timeout value to
/proc/sys/fs/fanotify/watchdog_timeout. When enabled, the watchdog incurs negligible performance overhead.Jira:RHEL-44601[1]
- LVM now supports Persistent Reservations on volume groups
With this update, the Logical Volume Manager (LVM) has been enhanced to manage persistent reservations on a volume group (VG). With this feature, LVM controls access and ownership of shared storage resources used by Volume Groups. This can be useful in clustered environments that use shared block storage. For more information, see the
lvmpersist(8)man page on your system.
io_uringinterface added for asynchronous I/OThe
io_uringinterface supports asynchronous I/O operations. With this update, applications use this interface to submit multiple I/O requests without blocking the calling process.io_uringuses shared ring buffers between user space and kernel space to reduce system call overhead and avoid buffer copying. This interface is more efficient and supports more asynchronous system calls than Linux AIO.Jira:RHEL-120700[1]
- Stratis now maintains volume keys in the process keyring for encrypted pools
With the release of
stratisd 3.8.6andstratis-cli 3.8.3, the Stratis storage management system can now automatically maintain the volume keys of encrypted pools.Previously, if
stratisdneeded to extend an encrypted pool automatically, the operation could fail if the encryption information was not available. With this update,stratisdmaintains the volume key in its own process keyring. The key is automatically loaded when the pool is unlocked or when the service starts with an existing encrypted pool. To ensure security, the key is removed from the keyring when thestratisdprocess exits or when the pool is stopped or destroyed. If the pool is a V2 encrypted pool and the volume key is not present in thestratisdprocess keyring,stratis-clidisplays an alert in its pool listing.Jira:RHEL-125937[1]
snapmrebased to 0.7.0The
snapmpackage has been rebased to upstream version 0.7.0. This version provides important fixes and enhancements, most notably the following:-
The new Mount Manager mounts and unmounts entire snapshots. You can run commands or interactive shells inside mounted snapshot sets by using the
snapset {mount, umount, exec, shell}subcommands. -
The Difference Engine was added to compare snapshot sets or to compare against the running system. You can specify output formats, such as
paths,full,short,json,diff,summary, andtree. - The performance of the Stratis plugin was improved. With this update, the plugin queries the D-Bus every 5 seconds and caches the results internally. This improvement significantly reduces the time to discover Stratis snapshots.
Jira:RHEL-137376[1]
-
The new Mount Manager mounts and unmounts entire snapshots. You can run commands or interactive shells inside mounted snapshot sets by using the
- Multipath automatically removes unmapped LUNs
Before this update, multipath devices remained in the system if you did not remove SCSI devices before disconnecting a LUN. This sometimes resulted in queued I/O or incorrect writes if the LUN was repurposed.
With this update, the
purge_disconnectedoption is available in thedefaults,devices, andmultipathssections of themultipath.conffile. When you set this option toyes, themultipathddaemon automatically removes disconnected SCSI devices from the system.
6.11. High availability and clusters Copy linkLink copied to clipboard!
Review new features and enhancements for high availability and clusters in Red Hat Enterprise Linux 10.2.
- Ability to add descriptions to cluster resources and elements
Previously, there was no built-in method in
pcsto add supplemental text descriptions directly to resources and other cluster elements. This limited the ability of administrators to document, provide context, or aid in troubleshooting elements within the Pacemaker cluster.With this enhancement, a new command,
pcs cib element description, is available.As a result, you can add brief text descriptions to a wide range of CIB elements that support the description attribute, including primitive resources, groups, clones, bundles, ACL permissions, ACL roles, alerts, alert recipients, and nodes. For a more intuitive experience, two new aliases are also available:
pcs resource descriptionandpcs stonith description.Jira:RHEL-7670[1]
- Validation added for resource and stonith meta attribute names
Previously, when configuring resource or stonith devices, a user could set meta attributes that were not recognized by the cluster. This led to silent configuration errors where the invalid attributes were accepted without warning but had no effect on cluster resource handling.
With this enhancement, meta attribute names for primitive and stonith resources are validated against the provided cluster meta attributes definition.
As a result, a warning is printed when invalid meta attributes are used with the following commands:
-
pcs resource|stonith create -
pcs resource|stonith meta -
pcs resource|stonith defaults set create -
pcs resource|stonith defaults set update
-
- Warning added when disabling cluster fencing
Before this update, users could disable the cluster’s fencing mechanism by setting the cluster property
stonith-enabledto false without receiving any warning. This could inadvertently leave the cluster in an unsupported and unsafe state.With this enhancement, the cluster management utility includes a safety check.
As a result, when you attempt to disable fencing using
stonith-enabled=falsethe utility displays a warning message informing you that the cluster fencing mechanism will be lost.
- The
portblockresource agent now supportsnftables Previously, the
portblockresource agent relied oniptablesfor managing port access. Sinceiptablesis now primarily a wrapper fornftablesand is slated for removal in future releases, a transition to nativenftablessupport was necessary.With this enhancement, the
portblockresource agent now supportsnftablesnatively.As a result,
nftablesis used by default for port blocking operations. For environments that still require the legacy behavior, you can manually switch back toiptablesby setting the firewall resource parameter toiptables.
6.12. Dynamic programming languages, web and database servers Copy linkLink copied to clipboard!
Review new features and enhancements for dynamic programming languages, web and database servers in Red Hat Enterprise Linux 10.2.
- MariaDB 11.8 was added
MariaDB 11.8 packages are available in RHEL 10.2.
Notable changes over the previously available version 10.11 include:
-
By default, MariaDB 11.8 uses the
utf8mb4character set instead oflatin1and legacyutf8to ensure full Unicode support. Vector support was added to support machine learning. This includes the
VECTOR(N)data type and the following functions:-
VEC_DISTANCE() -
VEC_DISTANCE_EUCLIDEAN() -
VEC_DISTANCE_COSINE() -
Vec_FromText(json_array) -
Vec_ToText(vector_column)
-
-
The
mariadb-dumpandmariadb-importutilities natively support parallel operations. Specify the--dirand--paralleloptions to dump or load multiple databases simultaneously. -
The upper limit of the
TIMESTAMPdata type was increased from2038-01-19to2106-02-07while still using 4 bytes of storage. -
The
UUID_v4()andUUID_v7()functions were added. -
The JSON handling was improved. This includes new functions, such as
JSON_SCHEMA_VALID(). The following system variables were added to define the maximum storage for temporary tables and other internally created temporary files:
-
max_tmp_session_space_usagelimits the disk space used per session -
max_tmp_total_space_usagelimits the total disk space used by the MariaDB server instance
-
-
The
des_encryptanddes_decryptconfiguration file parameters are deprecated and will be removed in a future MariaDB release.
Notable breaking differences:
The following utilities were renamed but symbolic links were created for backward compatibility:
-
mysql>mariadb -
mysqldump>mariadb-dump -
mysqladmin>mariadb-admin
If you still use the previous names of these utilities, they display deprecation warnings.
-
-
The
innodb_defragmentconfiguration parameter is no longer supported. Remove it from your configuration files.
For more information about MariaDB, see Using MariaDB.
To install the new packages, enter:
# dnf install mariadb11.8-serverIf you want to upgrade from MariaDB 10.11, see Upgrading from a RHEL 10 version of MariaDB 10.11 to MariaDB 11.8.
For information about the length of support for the
mariadbmodule streams, see Red Hat Enterprise Linux Application Streams Life Cycle.Jira:RHEL-115468[1]
-
By default, MariaDB 11.8 uses the
- PostgreSQL 18 was added
PostgreSQL 18 packages are available.
Notable changes:
-
The new Asynchronous I/O (AIO) subsystem provides up to three times faster data reads. You can enable this subsystem by setting the
io_methodvariable. - The MD5 authentication method is deprecated and will be removed in a future major PostgreSQL release.
- By default, data page checksums are enabled in PostgreSQL 18. If you upgrade from a previous version with data page checksums disabled, you must either enable the feature before the update or disable it during the upgrade. For further details, see Upgrading from a RHEL 9 version of PostgreSQL 16 to PostgreSQL 18.
- PostgreSQL 18 supports native OAUth 2.0 single sign-on authentication.
- The database service supports Federal Information Processing Standards (FIPS) mode validation for regulated environments.
-
The
pg_upgradeutility preserves statistics during major release upgrades and significantly faster reaches full performance after an upgrade.
Jira:RHEL-116546[1]
-
The new Asynchronous I/O (AIO) subsystem provides up to three times faster data reads. You can enable this subsystem by setting the
- PostgreSQL initialization no longer fails in a
podman-bootcenvironment Before this update, a missing or incomplete
user postgresentry caused PostgreSQL initialization to fail in apodman-bootcenvironment using aContainerfile. With this update, the initialization issue is resolved. As a result, PostgreSQL initializes and operates correctly in Image Mode.
- New
ruby4.0runtime with database connectors The
ruby4.0runtime provides a Ruby 4.0 stack with database connector support. As a result, you can select theruby4.0runtime alongside the existing Ruby stack to develop and run Ruby applications with supported database connectivity.Jira:RHEL-133550[1]
- New Python 3.14 stack is available
The
python3.14stack with essential packages is available in RHEL 10.2. This new alternative stack provides Python 3.14 to develop and run applications while staying on the RHEL 10 minor release.Jira:RHEL-120788[1]
- PHP 8.4 available
RHEL 10.2 provides PHP in version 8.4. This version provides many enhancements and bug fixes over version 8.3, most notably:
- Property hooks provide support for computed properties natively understood by IDEs and static analysis tools.
- Asymmetric visibility controls the scope to write to a property independently from the scope to read the property.
-
The
#[\Deprecated]attribute makes the existing deprecation mechanism available to user-defined functions, methods, and class constants. -
A new DOM API is available within the
Domnamespace, which includes standards-compliant support for parsing HTML5 documents. -
The
BcMath\Numberobject enables object-oriented usage and standard mathematical operators when working with arbitrary precision numbers. -
The
array_find(),array_find_key(),array_any(), andarray_all()functions are available. -
You can access properties and methods of a newly instantiated object without wrapping the
newexpression in parentheses.
Jira:RHEL-105827[1]
6.13. Compilers and development tools Copy linkLink copied to clipboard!
Review new features and enhancements for compilers and development tools in Red Hat Enterprise Linux 10.2.
glibcmemstream documentation updated for SEEK_END behaviorThe
glibcmemstream documentation explains howopen_memstreamhandles seeking and the current position when usingSEEK_END. The updated text clarifies how writing at the end of the buffer behaves, in line with the implementation-defined behavior introduced in POSIX Issue 8.
- New OpenTelemetry PMDA enables OTLP metric ingestion into PCP
A new Performance Metrics Domain Agent,
pmdaopentelemetry, is available to ingest OpenTelemetry metrics into Performance Co-Pilot (PCP). This enhancement bridges the OpenTelemetry ecosystem with PCP by dynamically creating PCP metrics from configured endpoints that export data in OTLP JSON format. The PMDA replaces the legacypmdajsonfor OpenTelemetry use cases.Features include:
- Support for HTTP/HTTPS endpoints, local files, and executable script data sources.
- Dynamic metric namespace with automatic addition and removal of metrics without requiring a restart.
- Regex-based INCLUDE, EXCLUDE, and OPTIONAL rules for filtering metrics and labels.
- Configurable metadata overrides for PCP types, semantics, and units.
- Support for OpenTelemetry metric types such as sum, gauge, histogram, and summary.
- Concurrent multi-source data collection using a thread pool.
- Persistent metric and instance identifiers across restarts.
- Built-in control metrics for per-source monitoring and diagnostics.
- PCP REST API supports exporting metrics in OpenTelemetry JSON format
The
pmproxyservice supports exporting Performance Co-Pilot (PCP) metrics in OpenTelemetry JSON format through the existing/metricsREST API endpoint. When a client includes theAccept: application/jsonheader in the HTTP request,pmproxyreturns metrics in the OpenTelemetryresourceMetricsJSON structure instead of the default OpenMetrics text format.This enhancement enables direct integration of PCP metrics with OpenTelemetry-based monitoring solutions without requiring additional format conversion. The existing OpenMetrics text format remains the default when the
Accept: application/jsonheader is not specified. Features include:-
Support for exporting PCP metrics in OpenTelemetry
resourceMetricsJSON format through the/metricsendpoint. -
Content negotiation using the
Accept: application/jsonHTTP header. - Automatic conversion of PCP metric semantics, types, and labels to OpenTelemetry equivalents.
- Conversion of PCP units to the Unified Code for Units of Measure (UCUM) format.
- Compatibility with existing OpenMetrics text format as the default response format.
-
Support for exporting PCP metrics in OpenTelemetry
- New tool
pcp2opentelemetryintroduces OpenTelemetry data export With this update, a new tool,
pcp2opentelemetry, is introduced for exporting both real-time and archived Performance Co-Pilot (PCP) data in the OpenTelemetry format. This tool extends OpenTelemetry support within PCP, similar topcp2openmetrics, and is part of the ongoing support for OpenTelemetry in PCP v7. By using this tool, you can export PCP data in the OpenTelemetry format. It boosts compatibility with other tools within the OpenTelemetry ecosystem and offers a more adaptable and integrated method for managing performance data.
- New PMDA for SAP HANA database metrics
With the Performance Co-Pilot (PCP), a new Performance Metrics Domain Agent (PMDA) is available for monitoring SAP HANA databases. You can now use PCP to collect and analyze metrics from SAP HANA, enabling improved visibility into database performance and behavior. This enhancement helps administrators monitor the SAP HANA workloads by using standard PCP tools and workflows.
- Rebase
llvmtoolset to version 21 The
llvmtoolset has been rebased to version 21 in RHEL 10.2. This rebase provides updated compiler and tooling features for building and optimizing applications that depend onllvm.As part of this change, dependent packages in RHEL 10 have been rebuilt against
llvm21 to ensure compatibility with the updated toolset.The notable changes are:
-
The
nocapturefunction attribute is replaced by the more expressivecaptures(none)attribute in LLVM IR, clarifying pointer capture semantics. -
Constant expression forms of several arithmetic instructions, including
mul, are removed in favor of using regular instructions, simplifying IR and optimizations. -
Inline assembly calls no longer accept
labeloperands. Thecallbrinstruction must be used instead, which clarifies semantics for indirect labels. -
New
fmaximumandfminimumoperations are supported in theatomicrmwinstruction, aligning atomic floating-point operations withllvm.maximumandllvm.minimumbehavior. - Multiple back ends, including AArch64, AMDGPU, RISC-V, PowerPC, and others, receive code generation improvements, new ISA extensions, and bug fixes that can result in better performance and broader hardware support.
-
The
- PCP supports PUSH model for
pmlogger PCP supports a push model for
pmloggerthat enables remote archival of performance metrics data by using an HTTP REST API. Previously, centralized logging required administrators to reconfigure the central system to pull data from each newly added host. With the push model, each host streams archived data directly to a centralizedpmproxyserver in real time. This approach simplifies scaling and removes the need to store archives locally on remote systems. Additional key features include the following:-
Centralized Storage: Configure multiple remote systems identically to store all archives on a single
pmproxyserver, simplifying configuration, management, and backup. - No Local Storage Required: Remote hosts log metrics without requiring local disk space for archives.
- Real-Time Streaming: Archive data is transmitted immediately as it is collected, enabling near real-time analysis.
- Network Resilience: Built-in error handling and retry mechanisms during network interruptions.
Jira:RHEL-104669[1]
-
Centralized Storage: Configure multiple remote systems identically to store all archives on a single
- Enhanced
gcovfunction coverage summaries ingcc Before this update,
gcovfunction summaries only reported the number of lines executed and did not include details about branch or call coverage within the function.With this enhancement, requesting function summaries using the
-foption now includes data on branches taken and function calls made within the profiled function. This provides a more comprehensive view of function-level test coverage.Jira:RHEL-105464[1]
- glibc fortification support for
inet_ntopandinet_pton Previously, the glibc APIs
inet_ntopandinet_ptondid not include Source Fortification support, so the compiler was unable to detect some buffer errors before running the program.With this update, attribute access annotations is added to
inet_ntopandinet_pton, enabling the compiler to warn about potential buffer misuse at compile time. As a result, these APIs are now covered by Source Fortification, which improves their security and reliability.Jira:RHEL-111115[1]
- Rust Toolset is rebased to versions 1.92.0
RHEL 10.2 rebases the
rust-toolsetApplication Stream to version 1.92.0, providing an updated Rust compiler and associated tooling for developing and running Rust applications. This rebase continues the rolling Application Stream model, where only the latestrust-toolsetversion is supported.Notable enhancements include:
-
Reliable debugging through default emission of unwind tables on Linux, even when compiling with
-Cpanic=abort, which enables more accurate backtraces. -
Expanded systems programming support, including full
i128andu128support in extern "C" functions and the ability to create raw pointers to union fields using&rawin safe code. -
Enhanced code safety with the new
dangling_pointers_from_localslint, which warns about returning dangling raw pointers derived from local variables. -
Improved code clarity with the
mismatched_lifetime_syntaxeslint, which highlights potentially confusing lifetime relationships that are hidden by lifetime elision rules. Workflow improvements in Cargo, which supports workspace-level publishing with
cargo publish --workspaceand automatically handles dependency ordering for multi-crate projects.Rust Toolset is delivered as a rolling Application Stream, and only the latest rust-toolset version is supported. For more information about Rust Toolset life cycle and support, see the Red Hat Enterprise Linux Application Streams Life Cycle.
-
Reliable debugging through default emission of unwind tables on Linux, even when compiling with
- glibc
freopenbehavior fixes and test improvements The
freopenfunction behaves more reliably and correctly under various usage scenarios. The function no longer leaks memory on failure, preserves and applies file descriptor flags such asO_CLOEXECcorrectly, and sets the stream orientation properly when a character set is specified.Jira:RHEL-115823[1]
- Improved vectorized math performance in
glibc The
glibcvectorized math library (libmvec) was upgraded to the upstream 2.40 version. The upstreamglibc2.40 release adds 55 additional vectorized math routines that were previously not available in the RHELglibcbased on version 2.39.As a result, vectorized code compiled with the
-ffast-mathbuild option on AArch64 now benefits from these functions and might use symbols with theglibcversion 2.40.Jira:RHEL-118273[1]
- Boost URL library available through boost in CRB
The
boost-urlshared library is available as part of the mainboostpackage in the CodeReady Builder (CRB) repository. This change resolves the missingboost-urlsubpackage that blocked some dependent builds in earlier releases.Because
boost-urlis a dependency of theboostmetapackage, it is shipped withboostinstead of as a separate repository entry. In RHEL 10.2, theboost-1.83.0-7.el10build ensures thatboost-urlis included in the product listing, and installingboost-develalso provides the headers and libraries needed to build applications that rely on Boost.URL.
- Performance Co-Pilot 7.0.3 enhancements
pcp-7.0.3-1.el10in RHEL 10.2 introduces enhancements to monitoring capabilities, including new metric sources and improved sample resolution.The update adds new Performance Metrics Domain Agents (PMDAs), expands
dstatplugin coverage, and improves timestamp granularity for collected samples. The following enhancements are included in this update:- Added a new PMDA to collect SAP HANA database metrics.
- Added a new PMDA for RoCE devices.
- Added a new PMDA to collect OpenTelemetry metrics and a native PCP to OpenTelemetry exporter utility.
-
Enhanced the
pmproxyREST API with apmloggerpush mode to send data to a centralized location. This simplifies configuration by allowing you to use the same setup on multiple machines that collect performance data. -
Added new
dstatplugins to monitor AMD and NVIDIA GPUs. -
Added a new
dstatplugin to monitor vLLM cache utilization. - Enabled nanosecond timestamp resolution on collected samples.
- The Red Hat Build of OpenJDK 25 integrates with the
crypto-policiespackage for secure system property handling With this update, the Red Hat Build of OpenJDK 25 for RHEL integrates with the RHEL
crypto-policiespackage. This enhancement ensures secure system property handling and improves the security of Java applications running on RHEL by loading additional configuration files based on Red Hat system properties. This change also adds FIPS support using NSS.Jira:RHEL-128409[1]
glibcupdates thebg_BGlocale for Bulgaria’s adoption of the euroThe
glibcpackage uses the euro currency symbol for thebg_BGlocale to reflect Bulgaria’s adoption of the euro as of 1 January 2026.As a result, applications that use the
bg_BGlocale display currency values with the updated euro symbol.
- Croatia locale uses the euro currency symbol in
glibc The
glibcpackage now uses the euro currency symbol for thehr_HRlocale in RHEL. This change aligns Croatian locale data with the country’s current official currency.As a result, applications that rely on
glibclocale information for thehr_HRlocale now display the up-to-date euro currency symbol instead of the former Croatian kuna.
- Improved
trylockperformance inglibcfor heavily contended multi-core workloads With this enhancement, the
glibcpackage optimizes thetrylockimplementation for workloads with high thread counts on multi-core systems, improvingtrylockthroughput under heavy contention.
glibcaddsRTLD_DI_ORIGIN_PATHto prevent buffer overflowsThe
RTLD_DI_ORIGIN_PATHdlinforequest type inglibcaccepts the size of the destination buffer when retrieving the shared object origin path. This request type helps avoid buffer overflows when obtaining the shared object origin path.The behavior of the existing
RTLD_DI_ORIGINrequest type remains unchanged.Jira:RHEL-146428[1]
6.14. Identity Management Copy linkLink copied to clipboard!
Review new features and enhancements for Identity Management (IdM) in Red Hat Enterprise Linux 10.2.
- The entry and DN cache auto-sizing considers the number and size of DS databases
With this update, the auto-sizing feature for entry and DN caches adapts its tuning when a Directory Server instance uses multiple databases of different sizes. The cache size matches the database size, allocating more physical resources to larger databases.
- You can pin large groups in the Directory Server entry cache to prevent groups eviction
With this update, Directory Server introduces a new configuration attribute,
nsslapd-cache-pinned-entries, in backend configuration entries to pin the largest groups in the entry cache. You can set the number of entries that you want to pin by using thensslapd-cache-pinned-entriesattribute. These group entries are only evicted when modifying the group or when bringing the backend down. The default value is0meaning no group entries are pinned.
- The
ipa-client-automountutility now supports the--domainoption Before this update, the
ipa-client-automountutility relied on the host’s current DNS domain for service discovery. This caused issues in cross-domain environments where the client host resided in a different DNS domain than the Identity Management (IdM) server, often requiring administrators to manually configure numerous server settings in multiple locations.With this update,
ipa-client-automountintroduces the--domainoption. This allows users to explicitly define the IdM domain to be used for DNS discovery during the automount configuration.As a result, installation efficiency and reliability are improved for complex network topologies.
Jira:RHEL-86030[1]
- Directory Server supports online TLS certificate refresh without the server restart
With this update, you can update server certificates on a running instance and trigger a certificate refresh without stopping the
dirsrvservice. After deploying new certificates, you can use thedsconf <instance_name> config refresh-certscommand to activate them for new incoming TLS connections, enabling smoother, more automated certificate renewal processes with less downtime. Existing LDAP connections are not explicitly closed. However, if the CA certificate has changed, some existing LDAPS connections might be terminated by clients withSERVER_DOWNerrors. This occurs when the clients expect the previous certificate while the server renegotiates encryption with the new one.
- Directory Server supports dynamic groups
With this update, you can define group membership based on LDAP search filters, similar to OpenLDAP, instead of managing static member lists. Using search filters to define group membership provides more flexible and scalable access control. Membership is automatically calculated from LDAP search URLs when you configure a dedicated object class, URL attribute, and list attribute. As a result, Directory Server introduces the following configuration attributes under
cn=config,cn=ldbm database,cn=plugins,cn=config:-
nsslapd-dynamic-lists-enabledenables dynamic groups. Defaults tooff. -
nsslapd-dynamic-lists-ocdefines which object classes an entry must have to be considered a dynamic entry. Defaults togroupOfURLs. -
nsslapd-dynamic-lists-url-attrspecifies which attribute inside a group entry contains the LDAP URL used to define the dynamic membership. Defaults tomemberUrl. The attribute can be multi-valued if your schema allows it. -
nsslapd-dynamic-lists-attrspecifies the attribute that contains the distinguished name (DN) of the entries that match the LDAP URI set innsslapd-dynamic-lists-url-attr. Defaults tomember.
-
- Delete all replication conflict entries at once with
dsconf With this update, you can use the
dsconf <instance_name> repl-conflict delete-all "<suffix_name>"command to delete all replication conflicts in bulk. Before this update, each conflict had to be deleted individually by usingdsconf <instance_name> repl-conflict delete. Now, you can delete all replication conflicts in a single operation by usingdsconf.Alternatively, you can try to resolve conflicts instead of deleting them. For details, see Solving common replication problems.
Jira:RHEL-99331[1]
- Directory Server validates LDIF files before erasing backend data during import
Before this update, importing the wrong LDIF file would erase the backend first and only report errors after processing the entire file, potentially causing data loss.
With this update, the server performs early validation when importing LDIF files to detect mismatched or incorrect files before erasing the existing backend database. If the LDIF does not contain the expected suffix entry, the import terminates immediately with a clear error message, leaving the existing backend data intact.
dsctl dbverifyprovides clearer output when a specified backend does not existThe
dsctl dbverifycommand, used to verify the integrity of a Directory Server database, provides explicit feedback depending on the database backend type. For Lightning Memory-Mapped Database (LMDB) backends, the command displays a warning that the verification is always reported as successful because LMDB has built-in integrity protection. As a result, administrators can distinguish between a missing backend and a genuinely successful verification when runningdsctl dbverify.
- MemberOf plugin supports scoping for specific groups
With this update, you can configure the MemberOf plugin to monitor only selected groups for membership evaluation. Previously, MemberOf plugin processing was controlled at the suffix level, which included all groups under a configured suffix. By defining a group scope, you can target list of groups or create exceptions for specific groups. This improves performance by avoiding unnecessary plugin operations on irrelevant entries.
MemberOf plugin introduces the following multi-valued configuration attributes under
cn=MemberOf Plugin,cn=plugins,cn=config:-
memberOfSpecificGroupFiltersets an LDAP search filter to select the group entries the plugin should process. -
memberOfExcludeSpecificGroupFiltersets an LDAP search filter to select the group entries to be excluded from plugin processing. -
memberOfSpecificGroupOCsets the object class of the group entries the plugin should process.
Jira:RHEL-109113[1]
-
- Directory Server supports post-quantum cryptography (PQC) keys
With this update, Directory Server supports TLS certificates that use
ML-DSA-44,ML-DSA-65, andML-DSA-87keys. This enables adoption of post-quantum cryptography standards to help protect your directory against potential quantum computing attacks.
- You can configure external password reset agents in IdM
When integrating Identity Management (IdM) with a third-party application that does not support Kerberos authentication, you can define a dedicated system account for the application to securely reset user passwords. Notably, these resets do not trigger the "password change required" flag, ensuring a seamless login experience for the end user. The system account authenticates by using LDAP.
As a result, organizations can integrate their own secure password management solutions directly with IdM.
- You can specify an IdM server from which to update the local CA trust store
With this update, the
ipa-certupdatetool includes a new--force-server<server_fqdn>option. Before this update, an Identity Management (IdM) client only connected to its default IdM server, specified in the/etc/ipa/default.conffile, when updating the local CA trust store. If this default server was down or unreachable, theipa-certupdatecommand failed. As a result, administrators can ensure successful trust store updates and maintain service continuity, even if the primary server is unavailable.
- samba rebased to 4.23.0
The
sambapackages, which provide file and print services using the SMB protocol, have been rebased to upstream version 4.23.0. This version provides important fixes and enhancements, most notably the following:- SMB3 UNIX Extensions are enabled by default to provide support for POSIX semantics, such as proper POSIX permissions and symlink handling, for UNIX and Linux clients.
-
Experimental support for SMB3 connections over Quick UDP Internet Connections (QUIC) is introduced. Configurable through
client smb transportsandserver smb transports, this allows for secure SMB traffic over UDP port 443, which is ideal for remote access. -
The new
smb_prometheus_endpointutility exports Samba server metrics in a Prometheus-compatible format to facilitate performance and status monitoring. The
samba-tool domain backup --no-secretscommand explicitly removes confidential attributes, such as BitLocker recovery data and KDS root keys, from backups.For a complete list of changes, see Samba 4.23.0 Available for Download.
- IdM password policies support
libpwqualitycharacter credit options Identity Management (IdM) password policies support four new options (
--dcredit,--ucredit,--lcredit, and--ocredit) based on thelibpwqualitycredit system. A negative value sets the minimum number of characters of that type required in a password; a positive value provides a credit toward the minimum password length. These options are mutually exclusive with--minclassesand offer a more granular way to enforce per-class character requirements. As a result, administrators can configure specific character type minimums in IdM password policies, for example, to satisfy DISA STIG compliance requirements.For more information, see Additional password policy options in IdM.
Jira:RHEL-119481[1]
- ipa rebased to 4.13.0
The
ipapackages have been rebased to upstream version 4.13.0. This version provides important fixes and enhancements, most notably the following:- A new responsive and intuitive beta interface is available as a Technology Preview. You can experiment with it and provide feedback.
-
You can use the
ipa-idrange-fixtool to identify users and groups outside current ID ranges and propose new ranges to include them. - The requirement for unique Certificate Authority (CA) subject names is relaxed, which enables duplicates under specific trust and nickname conditions.
- Random serial numbers (RSNv3) are enabled by default, and the system automatically removes certificates 30 days after they expire.
- To modernize new deployments, Network Information Service (NIS) server emulation in Identity Management (IdM) is removed. Note that NIS client support was removed in Red Hat Enterprise Linux (RHEL) 9. Additionally, the Schema Compatibility Tree plugin is deprecated and might be removed in a future major release.
- The platform supports the full 32-bit ID range space.
- This release resolves over 170 bugs and improves overall system performance and stability.
Jira:RHEL-120956[1]
nsslapd-haproxy-trusted-ipnow supports CIDR notationWith this update, you can use Classless Inter-Domain Routing (CIDR) notation to define ranges of trusted IP addresses instead of manually listing each address. You can now specify multiple CIDR ranges, as well as a mix of individual IPs and ranges. Example multi-valued configuration:
nsslapd-haproxy-trusted-ip: 2001:db8::/32 nsslapd-haproxy-trusted-ip: 192.168.1.0/24 nsslapd-haproxy-trusted-ip: 192.168.2.50
- cepces rebased to 0.3.12
The
cepcespackage, which provides a certificate enrollment client for Microsoft Active Directory Certificate Services (AD CS), has been rebased to upstream version 0.3.12. This version provides important fixes and enhancements, most notably the following:- Support for GSSAPI channel bindings to bind Kerberos authentication to the TLS (HTTPS) tunnel is available. This is required for compatibility with Windows Server 2025, which enforces stricter security requirements for SOAP-based certificate enrollment web services (CEP/CES) by default.
- Authentication handshake failures when connecting to modern Windows environments that have TLS channel binding and Kerberos security policies enabled are fixed.
-
Updates to the
cepces-submithelper ensure smoother communication with thecertmongerservice during automated certificate renewal cycles.
- Support for generating LWCA certificates and private keys on an HSM
For installations using a hardware security module (HSM), Lightweight CA (LWCA) certificates and private keys are now generated on the HSM. This provides the same hardware-level security for the private keys as the root CA private key. The LWCA private key is generated on the HSM with the HSM token name as the prefix, for example
mytoken:lwca.
- Automated services no longer reset account lockout counters
This update ensures that automated services like
crondandsystemd-userare prevented from unlocking accounts locked byfaillock. Previously, these services would automatically clear the "failed login" counter when they ran, which could allow a malicious actor to keep guessing passwords without being permanently locked out. With this release, once an account is locked by a security policy, it remains locked until the timeout expires or an administrator intervenes, regardless of any background system activity.Jira:RHEL-130871[1]
- ansible-freeipa rebased to 1.16.0
The
ansible-freeipapackages, which provide Ansible modules and roles for Identity Management (IdM), have been rebased to upstream version 1.16.0. This version provides important fixes and enhancements, most notably the following:The
sysaccountmodule (ipasysaccount) creates and manages system accounts in IdM. Therolemodule (iparole) supports system accounts as role members, so you can assign privileges such as user password management to those accounts in playbooks. You can, for example, use system accounts to integrate IdM with an external password reset management solution. For more information, refer to thesysaccountandrolemodule READMEs.The
ipapasskeyconfigmodule is available in theansible-freeipacollection. You can use this module to configure whether passkey authentication in IdM requires user verification, such as a PIN, when users authenticate with a passkey device. Additionally, theipausermodule supportspasskeyas a user authentication type, and theipaserviceandipahostmodules supportpasskeyas an authentication indicator.
ansible-freeipaadds support for thepasskeyauthentication type in management modulesWith this update, the
ipaconfig,ipahost,ipaservice, andipausermodules support thepasskeyauthentication type for IdM resources. This enables you to manage Passkey device authentication directly through your Ansible playbooks by setting the authentication type topasskey.
389-ds-baserebased to 3.2.0The
389-ds-basepackage, which provides an enterprise-class LDAP server, has been rebased to upstream version 3.2.0.
- The Certificate System now supports ML-DSA keys and signatures
You can now install a Certificate System (CS) that uses Module-Lattice-based Digital Signature Algorithm (ML-DSA) for both key types and signatures. Because ML-DSA is standardized by NIST to withstand future quantum computing threats, the CS can now generate and manage quantum-resistant certificates. This release supports ML-DSA at three NIST-defined security levels: ML-DSA-44, 65, and 87.
- pki rebased to 11.9
The
pkipackages have been rebased to upstream version 11.9. This version provides important fixes and enhancements, most notably the following:- Support for ML-DSA (Module-Lattice-based Digital Signature Algorithm) profiles is available. This enables the PKI to issue and manage certificates using post-quantum cryptographic algorithms, preparing the environment for future security requirements.
- The Jackson JSON processing libraries are updated to improve performance and security during metadata serialization.
-
The
pki-serverand associated CLI tools include stability updates to better handle service state transitions and improve the reliability of trust store synchronization in complex topologies. -
A race condition that caused
ipa ca-addto fail with a "500 Internal Server Error" when adding multiple Sub-CAs in rapid succession is resolved. With this update, the CA engine correctly synchronizes authority initialization with signing certificate availability, which prevents API timeouts during high-volume operations. -
A regression where enabling the
nuxwdogwatchdog prevented the PKI service from starting is fixed. Thepki-server-nuxwdogutility correctly interfaces withsystemd-ask-password, enabling users to provide required credentials at startup when a password file is missing. - An issue where the PKI server failed to issue certificates when a Sub-CA was specified is resolved. This fix ensures the certificate request pipeline correctly identifies and utilizes Sub-CA signing keys, which restores full functionality to multi-tier CA environments.
Jira:RHELDOCS-21885[1]
6.15. SSSD Copy linkLink copied to clipboard!
Review new features and enhancements for SSSD in Red Hat Enterprise Linux 10.2.
- Recursive deletion for computer objects added to
adcli The
adcli delete-computercommand supports the--recursiveoption to delete computer objects from Active Directory, including their child objects. Previously, attempting to delete a computer object that contained child objects, such as metadata for BitLocker drive recovery, failed with aCANT_ON_NON_LEAFerror in AD. With this update, users can cleanly delete computer objects that contain child objects usingadcli.
sudorebased to sudo-1.9.17p2The
sudopackages have been rebased to upstream version 1.9.17p2, which includes the following notable bug fixes and enhancements:-
The
sudoersfile supports regular expressions. -
The
log_subcmdsandinterceptoptions are supported. -
The
json_compactlogging is supported. - Privilege listing is enhanced.
-
Added the
cmddenial_message sudoersoption. -
The
sudoersLDAP schema now allowssudoUser,sudoRunasUser, andsudoRunasGroupto include UTF-8 characters. -
Added a new
-N(no-update) command-line option tosudo. The following
sudoerssettings can be used to support more fine-grained I/O logging:-
log_stdin -
log_stdout -
log_stderr -
log_ttyin -
log_ttyout
-
-
The
- IdM supports configuring an Active Directory trust with Windows Server 2025
With this enhancement, you can establish a cross-forest trust between Identity Management (IdM) domains and Active Directory forests that use Domain Controllers running Windows Server 2025.
Jira:RHELDOCS-21527[1]
6.16. Desktop Copy linkLink copied to clipboard!
Review new features and enhancements for desktop in Red Hat Enterprise Linux 10.2.
- The display time for login error messages is extended
Before this update, some short error messages on the login screen disappeared too quickly to be read. As a consequence, users missed important login feedback. With this update, the display time for short error messages is extended. As a result, these messages remain visible for a longer period of time.
papersrebased to 48.4The
papersdocument viewer is rebased to version 48.4. This version provides important fixes and enhancements, most notably the following:-
Support for the
libspellinglibrary is added. -
Stability of
papersis improved. - Various UI improvements are in place.
- Support for the PostScript and XPS document formats is removed.
- The bookmarks sidebar is removed.
- Translations are updated.
-
Support for the
fwupdpackage is rebased to 2.0.19The
fwupdpackage, which updates firmware on your system, has been rebased to upstream version 2.0.19. This version provides important fixes and enhancements, most notably the following:- Applied important fixes to the various firmware loaders, such as PE/COFF and MTD.
- Fixed issues affecting Intel GPUs and docks from USI, Lenovo, Dell, and HP.
- Improved deployments for UEFI KEK, db, and dbx updates.
- Added support for client-side phased update deployment, post-quantum cryptography (PQC) signatures, and additional devices including NVIDIA ConnectX, Jabra Evolve2, Framework QMK, Copilot devices, Huddly C1, and SteelSeries Arctis Nova.
Jira:RHEL-110760[1]
libinputrebased to version 1.30The
libinputpackage is rebased to upstream version 1.30. This version provides important fixes and enhancements, most notably the following:- 3-finger dragging for touchpads and a new sticky drag-lock feature for the tap-and-drag setting are supported.
- Configuration for mapping an eraser button for tablet tools with a hardcoded eraser button is supported. This behavior applies to most Microsoft-compatible tablets other than Wacom tablets.
- Tablets without physical LEDs to indicate the tablet pad mode are handled correctly.
- Configuration of the accessible tablet area on external tablets is supported. As a result, you can reduce the available physical area to better match it to the intended use case.
Many device-specific updates are added to accommodate custom behavior required by specific devices.
For any new configuration option,
libinputprovides the option, but it must be set by the respective compositor. Depending on the compositor, some configuration options might not be available directly to the user.
- Flatpaks are the default delivery method for Mozilla Firefox and Thunderbird
With this update, the default delivery method for Mozilla Firefox and Thunderbird is changed from RPM packages to Flatpaks. Anaconda, the RHEL installer, preinstalls these Flatpaks by default.
If your system is subscribed to Red Hat, you do not need to provide your Red Hat credentials when accessing the Red Hat Flatpak Registry. If you use the Red Hat Flatpak Registry on an unsubscribed system, follow the official guidelines.
Because there might be use cases where Flatpaks do not fit well, Red Hat will continue to provide and support
firefoxandthunderbirdRPM packages in theAppStreamrepository for the lifetime of RHEL 10. If you identify any of these use cases, contact Red Hat Support. Alternatively, you can provide your feedback in the RHEL-160615 Jira ticket.You can change the delivery method in Anaconda from Flatpaks back to RPM packages by following the process outlined in the documentation. For example, use the following configuration to preinstall the
firefoxRPM package instead of the Flatpak:%packages @^graphical-server-environment -redhat-flatpak-preinstall-firefox firefox %end
6.17. The web console Copy linkLink copied to clipboard!
Review new features and enhancements for the web console in Red Hat Enterprise Linux 10.2.
cockpitrebased to version 356The
cockpitpackages have been rebased to version 356, which provides many improvements and fixes compared to version 344 in RHEL 10.1, most notably:-
Timers created by the RHEL web console are executed directly by the
/bin/shsystem shell, and you can edit them. - The health dashboard shows a warning if the last shutdown or reboot was unclean.
-
You can override the RHEL web console branding with a custom configuration in the
/etc/cockpit/branding.cssfile. -
Support for the
pam_cockpit_certPAM module in the/etc/pam.d/cockpitfile, which is redundant since version 248, is removed. If you still use the module in your configuration, you must remove it manually. - The web console lists additional ports in a firewall zone, each in its own row, and you can delete them individually.
-
Support for TLS is removed from the
cockpit-wssubpackage. Instead, containers run thecockpit-tlsprogram and directly connect to thecockpit-wsserver. - You can detach the VNC console viewer of a virtual machine into its own window.
- The web console no longer adds both SPICE and VNC graphics when creating new virtual machines, but only VNC.
- You can shut down and restart virtual machines with a single action from the web console.
-
The
cockpit-podmanplug-in supports the quadlet lifecycle and shows inactive quadlets. - You can create empty files in the web console file manager.
-
Timers created by the RHEL web console are executed directly by the
6.18. Red Hat Enterprise Linux System Roles Copy linkLink copied to clipboard!
Review new features and enhancements for Red Hat Enterprise Linux system roles in Red Hat Enterprise Linux 10.2.
- The
ha_clusterRHEL System Role now exports cluster constraint variables Previously, the
ha_clusterRHEL System Role did not include detailed constraint information in its exported data.With this enhancement, the
ha_clusterrole now includes variables for location, colocation, order, and ticket constraints.As a result, the following variables are now available in the module output, facilitating better configuration management and role-based automation:
-
ha_cluster_constraints_location -
ha_cluster_constraints_colocation -
ha_cluster_constraints_order -
ha_cluster_constraints_ticket
-
- The
ha_clusterRHEL System Role now exports additional cluster configuration variables Previously, the
ha_clusterRHEL System Role provided limited visibility into the current cluster configuration.With this update, the
ha_clusterrole has been expanded to include cluster properties and resource defaults.As a result, the following variables are now exported, allowing for easier auditing and configuration mirroring:
-
ha_cluster_cluster_properties -
ha_cluster_resource_defaults -
ha_cluster_resource_operation_defaults
-
- Disk partition management available to the storage role
With this update, you can manage disk partitions by using the storage role, streamlining storage management. With this unified approach you can add, remove, resize, and format partitions, ensuring consistent and repeatable results.
Jira:RHEL-66738[1]
- Support for bootable snapshots with
snapm With this update, you can create bootable snapshot sets on platforms that support
snapm, such as RHEL 9.6 and Fedora 41 or later. You can now set abootableflag when requesting snapshots and boot the system directly from a snapshot.
- The
firewallRHEL system role supports IPv6 addresses within theipset_entries With this enhancement, you can now use IPv6 addresses within the
ipset_entriesvariable when utilizinghash:iporhash:nettypes in playbooks that use thefirewallRHEL system role. You can also specify additional<key>:<value>pairs of options foripsetby using theipset_optionsvariable. pairsDue to a limitation of the underlying
firewalldimplementation, you cannot mix IPv4, IPv6, and MAC addresses in the sameipset_entrieslist.Jira:RHEL-114467[1]
- The
sshdsystem role supports theCanonicalMatchUseroption To provide more granular control over conditional configurations, the
sshdsystem role supports thesshd_CanonicalMatchUservariable. You can specify whether to evaluate OpenSSHMatchblocks against a user’s initial login name or their final canonical username after the server rewrites it.As a result, you can consistently apply security policies in environments where external identity providers or local configuration rules modify usernames. This ensures that
Matchblocks accurately reflect the user’s identity once the server determines the final canonical username.
- Support added for the
fencing-watchdog-timeoutcluster property Before this update, the high-availability stack primarily supported the
stonith-watchdog-timeoutproperty for managing watchdog-based fencing. However, future Pacemaker versions replace this property withfencing-watchdog-timeout.With this update, the role handles both the legacy and new property names consistently.
As a result, the role supports future Pacemaker versions and ensures that watchdog-related cluster properties remain functional regardless of which property name you use. The role preserves both
stonith-watchdog-timeoutandfencing-watchdog-timeoutwhen creating or pushing CIB configurations.
- The
metricsRHEL system role supports configuring TLS-encrypted connections With this enhancement, you can use the
metricsRHEL system role to configure TLS-encrypted connections to Grafana. To use this feature, specify the following variables in your playbook:-
metrics_grafana_certificatesto use thecertificateRHEL system role to generate new certificates on the managed nodes -
metrics_grafana_certandmetrics_grafana_private_keyto specify the path to an existing certificate and private key on the managed nodes -
metrics_grafana_cert_srcandmetrics_grafana_private_key_srcto copy an existing certificate and private key from the control node to the managed nodes
Jira:RHEL-136607[1]
-
- The
VersionAddendumoption is available in SSH configuration With this update, you can configure the
VersionAddendumoption in SSH settings for match blocks, host blocks, and global client configurations. This enhancement ensures compatibility with the latest OpenSSH versions and provides granular control over your SSH connections.
- The
sshdsystem role supportsGSSAPIDelegateCredentials The new
GSSAPIDelegateCredentialsparameter provides Generic Security Services Application Programming Interface (GSSAPI) credential delegation in Kerberos environments and enables a seamless single sign-on experience.As a result, you can automate the configuration of GSSAPI credential delegation to simplify network authentication.
- The postgresql RHEL system role now supports PostgreSQL 18
The postgresql RHEL system role, which installs, configures, manages, and starts the PostgreSQL server, now supports PostgreSQL 18.
For more information about this system role, see Installing and configuring PostgreSQL by using the postgresql RHEL system role.
Jira:RHEL-144914[1]
- SELinux supports the DCCP and SCTP protocols
With this update, you can manage SELinux port types for Datagram Congestion Control Protocol (DCCP) and Stream Control Transmission Protocol (SCTP). By configuring SELinux port labels for these protocols, you can apply granular access controls and improve system security.
- RHEL System Roles support for immutable systems (
ostree) You can use RHEL system roles to build and manage immutable operating systems. This provides a consistent management interface across different backend technologies, including
ostree.As a result, you can deploy and configure immutable systems using the same roles used for traditional systems, ensuring environment consistency. Note: This feature is currently not compatible with the
nbde_clientrole.
- In-place upgrade phases automation with the
analysis,remediate, andupgradeAnsible roles With this release, you can use the
analysis,remediate, andupgradeAnsible roles to automate the pre-upgrade and upgrade phases of the in-place upgrade. By using these Ansible roles, you can quickly and efficiently upgrade large numbers of systems, saving you time.For more information, see Upgrading large deployments by using Ansible roles.
6.19. Virtualization Copy linkLink copied to clipboard!
Review new features and enhancements for virtualization in Red Hat Enterprise Linux 10.2.
- VMs on IBM Z can now use multiple network boot entries
With this update, virtual machines (VMs) on RHEL 10 hosts that use IBM Z hardware can have multiple kernel entries for the
virtio-netdevice. As a result, you can use multiple VM kernel boot entries available over PXE if the primary boot device is not bootable.
- Faster updates for cryptographic coprocessors on IBM Z
After using the
virsh nodedev-updatecommand to update a cryptograpic coprocessor (vfio-ap) device on an IBM Z host, the new configuration now takes effect significantly faster.Jira:RHEL-73000[1]
- CPI for virtual machines on IBM Z
Virtual machines (VMs) on RHEL 10 hosts that use IBM Z hardware can now use the Control Program Identification (CPI) feature. By using CPI, you can obtain system information about VMs without accessing them. For more information about CPI, see IBM documentation.
Note that on VMs that use IBM Secure Execution, CPI is disabled by default to ensure confidentiality, and must be enabled manually. For instructions, see Setting up IBM Secure Execution on IBM Z.
Jira:RHEL-73008[1]
- Configure hostname and FQDN options in
libvirtXML configuration The
libvirtvirtualization API supports setting hostname and Fully Qualified Domain Name (FQDN) options for virtual machines on network interfaces that use thepasstbackend. This feature integratespasstDHCP and DHCPv6 capabilities to simplify network identity assignment. As a result, you can configure hostname and FQDN directly in the domain XML. For example:<backend type='passt' hostname='vm1' fqdn='vm1.kubevirt.org.'/>Both attributes are optional.
- Backup jobs now keep VMs active during guest OS shutdown
Backup jobs initiated through tools such as
virsh backup-beginnow keep the virtual machine (VM) process active even if the guest operating system (OS) shuts down during the operation. Previously, a guest OS shutdown causedlibvirtto terminate the VM process, which failed the backup and required a manual restart. This enhancement ensures that backup jobs complete successfully regardless of the guest OS state, providing greater reliability and eliminating manual intervention.
- The
virtio-winpackage introduces theviosockdriver for Windows virtual machines Virtual Socket (
vsock) is a communication interface for direct socket-based communication between a host and virtual machines (VMs) running on the host. With this update, thevirtio-winpackage includes theviosockdriver, which implementsvsocksupport in Windows VMs running on a KVM host. The driver enables use cases such as running commands in a Windows VM directly from the host.The
virtio-winpackage also includes theVsockTcpBridgeservice, which provides avsock-to-TCP bridge. This bridge allows existing TCP-based applications in the Windows VM to communicate over thevsockinterface without modification.The
viosockdriver is available in thevirtio-winISO and installer. When you install the driver, theVsockTcpBridgeservice and thevsockprovider are configured automatically.
- New
s390-ccw-virtio-rhel10.2.0machine type available for IBM Z VMs The updated
qemu-kvmpackage provides a news390-ccw-virtio-rhel10.2.0machine type for IBM Z virtual machines (VMs). This machine type enables Control Program Identification (CPI) and performance-enhanced PCI translation for passthrough PCI devices by default. As a result, IBM Z VMs that use thes390-ccw-virtio-rhel10.2.0machine type benefit from improved performance with passthrough PCI devices and CPI without additional configuration.Jira:RHEL-104009[1]
- Block device I/O limits included in
libvirtdomstats The
virsh domstats --blockcommand displays block device I/O limits for virtual machine (VM) block nodes. The limits include:- Maximum I/O request size
- Maximum I/O vector count
Memory alignment values
By using this feature you can inspect the I/O limits that QEMU uses for storage back ends and determine whether your VM configuration is optimal. As a result, you can better debug performance issues and detect incorrect storage configurations.
- PCCS for Intel TDX
This update introduces the Provisioning Caching Certification Service (PCCS) for Intel Trust Domain Extensions (TDX). This provides the local caching required to use Intel hosted Provisioning Certification Services (PCS) at scale, and also makes it possible to perform TDX attestation on host systems that are isolated from the public internet.
libvirtintroduces ahost-modelmode for Hyper-V EnlightenmentsThe
libvirtpackage provides a newhost-modelmode for Hyper-V Enlightenments, which automatically enables all Hyper-V enlightenments supported on the host. This mode eliminates the need for separate configuration templates for Intel and AMD hosts. As a result, you can configure<hyperv mode='host-model'/>in the XML definition of a virtual machine to automatically apply all host-supported Hyper-V Enlightenments without maintaining separate configurations for each vendor.Jira:RHEL-122932[1]
- Encryption for libvirt secrets
This update introduces the
virt-secrets-init-encryptionservice, which encryptslibvirtsecrets, such as keys for the virtual Trusted Platform Module (vTPM). By default, this encryption usessystemdcredentials sealing. However, you can use the new/etc/libvirt/secret.conffile to specify a custom key for encrypting secrets, as well as to disable automatic encryption of secrets. As a result, critical vTPM metadata is protected from unauthorized access on the host file system. This also hardens the overall security of the virtualization environment.Jira:RHEL-7125[1]
- Native FUA support for QEMU
With this update, the QEMU emulator no longer needs to emulate the Forced Unit Access (FUA) I/O method, and instead can use FUA natively. This can improve the overall performance of virtual storage, particularly in database workloads.
Jira:RHEL-66064[1]
6.20. Supportability Copy linkLink copied to clipboard!
Review new features and enhancements for supportability in Red Hat Enterprise Linux 10.2.
- Ceph mon sessions added to sos report
In the latest version of the
sostool, system administrators can effortlessly retrieve a list of active mon sessions from a Ceph cluster. This was accomplished by connecting to the admin socket and executing theceph tell mon sessionscommand. This feature was implemented to enhance the efficiency of troubleshooting Ceph related problems.As a result, users can now investigate issues related to Ceph sessions with the data included in a SOS archive.
- The new
awsplugin insoscollects metadata information With this update,
sosincludes a plugin that collects metadata information from AWS instances. This update introduces the following notable enhancements:-
Enhances metadata collection from AWS instances by using an
sosplugin. -
Improves the data gathering process in the
sosRPM package across RHEL versions. -
Provides an accurate and detailed analysis of AWS instances within the
sosreport.
-
Enhances metadata collection from AWS instances by using an
- Improved AAP plugins for more useful diagnostics
Before this update, the
sosreport was collected onAAP. With this update, the notable enhancements to the following AAP plugins are:-
aap_containerized: Resolved an issue that incorrectly enabledaap_containerizedon the RPM-based Private Automation Hub servers. -
aap_controller: Expanded the set of gathered command outputs and conditionally collectrun_wsbroadcastorrun_wsrelaydepending on the AWX release version. -
aap_eda: Collected service output details based on the installed EDA version. Starting from AAP 2.5, specific commands are used to obtain service status information. -
aap_gateway: Added additional command outputs for improved troubleshooting on Gateway servers. -
aap_hub: Centralized the collection of service information for PAH servers under a single location within the plugin directory.
-
- SSL certificate control in SOS clean process is available
With this update, you can manage SSL/TLS certificates that contain sensitive data during the SOS clean process. The new
--treat-certificatesoption provides the option to remove, obfuscate, or maintain the original binary format of these certificates ensuring that no sensitive data persists.As a result, you can enhance data security and privacy by selecting the treatment for SSL/TLS certificates during the SOS clean process.
- Automatic user detection for AAP container runners in SOS reports
With this update, the
sosutility automatically detects the user running containers for Ansible Application Platform (AAP) deployments. This eliminates the need for manual specification, ensuring the collection of all necessary AAP data.
6.21. Containers Copy linkLink copied to clipboard!
Review new features and enhancements for containers in Red Hat Enterprise Linux 10.2.
- Podman switches to Sequoia-PGP for OpenPGP signatures in RHEL 10
With this update, Podman supports a Sequoia-PGP-based back end for OpenPGP image signatures. Previously, Podman used
GnuPG(throughgpgme/pgpmebindings) forOpenPGPoperations. This update includes the following enhancements:- Verification: The back end is switched from GnuPG to Sequoia-PGP.
-
Signing: The current GnuPG workflows continue to exist. With the new
--sign-by-sq-fingerprintoption you can use Sequoia and Sequoia-available keys. The current GnuPG workflows remain supported. - Algorithm support: Supports modern and post-quantum capable algorithms such as ML-DSA-87+Ed448.
- Improved Skopeo compatibility with FIPS certification.
Jira:RHEL-56365[1]
container-selinuxrebased to version 2.244.0-1The
container-selinuxpackage, which provides necessary SELinux policies, types, and rules to confine and secure container runtimes, has been rebased to version 2.244.0-1. This version provides important bug fixes and enhancements, most notably:- Enhanced data protection ensures confidentiality in deployments, while reducing potential security risks associated with public storage endpoints.
- Errors in package NVR no longer cause reproducible crashes, improving system stability.
gvisor-tap-vsockrebased to 0.8.7-1The
gvisor-tap-vsockpackage, which provides a user space networking stack for virtual machines, particularly those used with Podman, is rebased to upstream version 0.8.7-1. This version provides important fixes and enhancements, most notably, users can integrate a private image registry within a private Microsoft Azure cluster, enhancing security and efficiency of image management.As a result, the ability to create customizable, secure storage endpoints within the deployment, streamlining storage resource management and reducing potential security risks.
buildahrebased to 1.41.8-1The
buildahpackage, which provides a daemonless command-line tool for building Open Container Initiative (OCI-compliant), is rebased to upstream version 1.41.8-1. This version provides important fixes and enhancements, most notably, you can integrate a private image registry within a private Microsoft Azure cluster, enhancing the management and deployment of container images in a secure and scalable environment.As a result, a more secure storage solution is available because you can now secure the storage endpoints privately on Azure, protecting their data from unauthorized access. Simplified management of storage endpoints also makes it easier for you to maintain their storage infrastructure.
crunis rebased to 1.25.1-1The
crunpackage provides a fast, lightweight, and low memory Open Container Initiative (OCI) runtime acting as the default, high-performance alternative toruncfor executing containers. Thecrunis rebased to upstream version 1.25.1-1. This version provides important fixes and enhancements, most notably the following:- Users can create and manage their own private container registries within a secure Microsoft Azure Kubernetes Service (AKS) cluster. This enhancement streamlines navigation, increases efficiency, and ensures data security.
- Users can deploy and manage their containerized applications with improved security and scalability, enabling seamless integration of third party applications and expanding the functionality of the platform.
- By automating routine tasks, it saves valuable time and effort, allowing them to focus on more complex tasks, improving overall efficiency and productivity.
python-podmanrebased to 5.7.0-1The
python-podmanpackage is rebased to upstream version 5.7.0-1. Withpython-podman, you can manage Podman containers, images, volumes, and pods. The new version provides important fixes and enhancements, most notably, you can integrate a private image registry within a secure Azure cluster. The private registry installation ensures a more secure deployment of applications, as it offers enhanced protection for sensitive images.
- Unified configuration available for rootless Podman
With this update, rootless Podman introduces a unified system-wide configuration file that enables centralized policy management, a consistent security baseline, and operational standardization across all users.
As a result, you can inherit sensible defaults without manual configuration while maintaining the flexibility to override system defaults through personal configuration files. Additionally, this update ensures backward compatibility, so existing workflows and configurations remain unchanged.
- The Container Tools packages have been updated
The updated Container Tools RPM meta-package, which includes the Podman, Buildah, Skopeo, crun, and runc tools, is available. The Buildah package has been updated to version 1.43.1, and Skopeo has been updated to version 1.22.2. Podman release 5.8.2 contains the following notable bug fixes and enhancements over the previous version:
-
The
podman machine init --imagecommand can runPowerShell-escapedcommands from the user-specified image path in a PowerShell session on the host when you use it on Windows with the Hyper-V backend ( CVE-2026-33414). - Automatic migration from BoltDB to SQLite after a reboot no longer performs a partial migration, leaving some containers in SQLite and others in BoltDB, when Quadlets are in use.
-
The
podman quadlet installcommand installs files that contain multiple separate Quadlet files. You must separate the files with a--- delimiteron a new line and begin each section with a# FileName=<name>line to name the new Quadlet. -
The
Quadlet .containerfiles include theAppArmorkey to configure a container’s AppArmor profile. -
Podman automatically attempts to migrate earlier BoltDB databases to SQLite when the system reboots. This is necessary because the Podman 6.0 release removes support for BoltDB. If automatic migration is not possible, you can manually force a migration with the new
podman system migrate --migrate-dboption. -
Podman loads the path from the VM’s filesystem when you run the
podman artifact addcommand against a Podman machine VM. This improves performance if you share the path you load or build into the VM instead of streaming the data through the REST API. -
The
podman updatecommand has a new option,--ulimit, to update container ulimits. -
You can use the new
--no-sessionoption with thepodman execcommand to disable tracking of the exec session, which improves performance and startup time. -
Containers with the
unless-stoppedrestart policy restart after a reboot when you enable thepodman-restart.serviceservice. In the
Quadlet.containerfile:-
You can set
Entrypoint=""to clear the container’s entrypoint. -
A
HealthCmdsupports commands with double-quotes and ensures a functional health check. -
The
RequiresMountsForfield correctly handles bind-mount paths that contain spaces.
-
You can set
- Inspecting containers in host network mode no longer causes FreeBSD systems to panic.
- The Libpod System Check endpoint no longer performs operations with bad data after it returns a 400 error.
- The remote attach API for containers (Libpod & Compat) no longer panics due to a rare race condition.
-
The system no longer improperly adds options from the default driver, which previously prevented the Secret Create API from creating functional secrets using the shell driver. You can enter the secret directly at the terminal with the
podman secret createcommand instead of providing it through a pipe. Added new APIs for interacting with Quadlets:
-
GET/libpod/quadlets/{name}/file`: Print the contents of a Quadlet file. -
GET/libpod/quadlets/{name}/exists`: Check if the given Quadlet exists. -
POST /libpod/quadlets: Install one or more Quadlets. -
DELETE /libpod/quadlets: Remove one or more Quadlets. -
DELETE /libpod/quadlets/{name}: Remove a single Quadlet.
-
-
Containers created by the
podman play kubecommand no longer run health checks before theinitialDelaySecondsoption expires, and thepodman kube playcommand correctly handles precedence between environment variables set by both theenvFromandenvfields. -
The
podman buildcommand’s--pull=neweroption functions correctly. -
The
podman artifact pushandpodman artifact pullcommands no longer ignore authentication credentials given by the--authfileoption. The
podman run --pod-id-fileoption is properly validated, preventing the creation of containers in pods with improper user namespace configuration.For more information about notable changes, see Upstream release notes.
-
The
- The
fuse-overlayfsrebased to 1.16-1 The
fuse-overlayfspackage, a user space implementation of the OverlayFS file system provides rootless containers, which Podman or Buildah run, is rebased to upstream version 1.16-1. This version provides important fixes and enhancements, most notably the following:- Updated database connection settings resolve intermittent connection errors, making error logging functional, and ensuring smooth operation and reduced downtime for users.
- Support for updates in air-gapped and disconnected environments
This update introduces air-gapped and disconnected updates for RHEL deployments, enabling edge deployments to perform updates without internet connectivity. As a result, you can benefit from greater flexibility and reliability for offline updates, improving deployment management in remote or secure environments.
Jira:RHELDOCS-20708[1]
- Signing container images by using Sequoia-PGP is available
With this update, Podman supports a Sequoia-PGP-based backend for OpenPGP image signatures. Previously, Podman used
GnuPG(gpgme/pgpmebindings) forOpenPGPoperations. This update includes the following enhancements:- Verification: the backend is switched from GnuPG to Sequoia-PGP.
-
Signing: the current GnuPG workflows continue to exist. New
--sign-by-sq-fingerprintoption allow you to use Sequoia and Sequoia-available keys. Current GnuPG workflows remain supported. - Algorithm support: Supports modern and post-quantum capable algorithms such as ML-DSA-87+Ed448.
Jira:RHELDOCS-21869[1]
- New container images are available
The
rhel10/ruby-40,rhel10/postgresql-18,rhel10/python-314-minimal,rhel10/mariadb-118andrhel10/php-84container images are now available in the Red Hat Container Registry. The notable enhancements for each image are:-
rhel10/ruby-40: You use the Ruby 4.0 container as your base platform to build and run diverse Ruby 4.0 applications and frameworks. This container image includes the npm utility, so you can install JavaScript modules for your web applications. -
rhel10/postgresql-18: You can use this container image to package the PostgreSQLpostgresdaemon and client application in a container. Thepostgresserver daemon accepts your connections from clients and provides you access to content from PostgreSQL databases. -
rhel10/python-314-minimal: You use the full container image as a universal base image to build your containerized applications. However, this universal nature means that the resulting containers consume a lot of disk space. This happens mainly because the image contains npm, compilers, header files, and other packages you might need to install and deploy your applications. -
rhel10/mariadb-118: You use this container image to package the MariaDBmysqlddaemon and client application into a container. Themysqldserver daemon accepts your client connections and provides you with access to content from MySQL databases. -
rhel10/php-84: You can use this container image as a base platform for building and running various PHP 8.4 applications and frameworks. You can also install JavaScript modules for the web applications. This container image includes an npm utility.
-
6.22. RHEL Lightspeed Copy linkLink copied to clipboard!
Review new features and enhancements for RHEL Lightspeed in Red Hat Enterprise Linux 10.2.
- Color support for the command-line assistant
With this update, the command-line assistant supports color output by default, aligning its appearance with other RHEL command-line tools. This update improves output readability through increased visual contrast.
You can disable color output by using the
--plainoption or by setting theNO_COLOR=1environment variable.Jira:RHELDOCS-21814[1]
- SAP Solutions documentation added to RHEL Lightspeed
With this enhancement, RHEL Lightspeed includes the Red Hat Enterprise Linux for SAP Solutions documentation set in its knowledge base. You can now ask RHEL Lightspeed technical questions specific to SAP deployments on RHEL. This update provides more accurate and context-aware responses for SAP-related administrative and configuration tasks.
Jira:RHELDOCS-21815[1]
Chapter 7. Technology Preview features Copy linkLink copied to clipboard!
Review newly identified and previously known Technology Preview features available in Red Hat Enterprise Linux 10.2.
For information about Red Hat scope of support for Technology Preview features, see Technology Preview Features Support Scope.
7.1. Installer and image creation Copy linkLink copied to clipboard!
Review new Technology Preview features available for installer and image creation in Red Hat Enterprise Linux 10.2.
- A new
bootcKickstart command available as a Technology Preview The installer includes support for the new
bootcKickstart command as a Technology Preview. It enables the deployment of bootable containers. Although comparable to the existingostreecontainerKickstart command, this implementation relies on thebootcutility to manage both operating system content provisioning and boot loader setup. You can use the command in the following way:# bootc --source-imgref=<transport>:<registry>/<namespace>/<name>:<tag> --target-imgref=<registry>/<namespace>/<name>:<tag>NoteThe feature does not support complex partitioning schemes that span multiple storage devices or custom mount point configurations beyond standard layouts.
For more information, see Installing RHEL from a bootable container image by using the bootc Kickstart command.
Jira:RHEL-58215[1]
- Integrity Image Sealing is available as a Technology Preview
With this Technology Preview, you can cryptographically seal your boot container images by using your organization’s Secure Boot keys, ensuring complete operating system integrity from build through runtime. This is based on Unified Kernel Images that embed a digest of the target container root filesystem, alongside a bootloader (such as
systemd-boot) also signed with your key.As a result, you can achieve higher security than current solutions and meet compliance requirements for tamper-proof systems, ensuring the integrity of the executed code from hardware to the operating system. The container image includes a Unified Kernel Image and covers the integrity of the boot process, path, and host operating system. For more information, see Building sealed images.
Jira:RHELDOCS-20426[1]
7.2. File systems and storage Copy linkLink copied to clipboard!
Review new Technology Preview features available for file systems and storage in Red Hat Enterprise Linux 10.2.
- TLS support for NVMe-TCP as a Technology Preview in NVMe/TLS
NVMe/TLS, available as a Technology Preview, complies with standard TLS key derivation specifications. This update introduces a breaking change to TLS Pre-Shared Key (PSK) import functionality. This change affects the
gen-tls-keyandcheck-tls-keycommands fornvme-cliversions earlier than 2.16 andlibnvmeversions earlier than 1.16.If NVMe/TLS connections to a storage target fail after an upgrade, perform one of the following actions:
-
Use the
--compatflag withnvme-cliwhen you import TLS PSKs to maintain operations with existing out-of-spec implementations. -
If connections still fail when you use the
--compatflag after a storage target upgrade, you must re-provision the TLS PSKs to match the vendor’s updated implementation.
-
Use the
7.3. Identity Management Copy linkLink copied to clipboard!
Review new Technology Preview features available for Identity Management (IdM) in Red Hat Enterprise Linux 10.2.
- Passwordless authentication mechanisms are available in GDM (Technology Preview)
Identity Management (IdM) administrators can configure the GNOME Display Manager (GDM) login screen to display multiple authentication mechanisms. In addition to existing smart card authentication, administrators can enable new passwordless methods, such as external identity providers (EIdP) and FIDO2-compatible passkeys. Enable the
with-switchable-authfeature inauthselectand configure the System Security Services Daemon (SSSD) to allow users to choose their preferred credential directly at login.Passwordless authentication aligns with zero trust architecture by replacing static passwords with cryptographic proof that verifies both user identity and device integrity for each access request. For detailed configuration instructions and a list of current limitations, see Enabling authentication mechanism selection in GDM using SSSD.
Jira:RHEL-11913[1]
- The IdM Modern Web UI is available (Technology Preview)
With this update, Identity Management (IdM) provides the Modern Web UI as a Technology Preview. This new interface features updated design and is available at the
/ipa/modern-uiendpoint. You can access the new interface through a link on the IdM Web UI login screen.As a Technology Preview, the Modern Web UI is under active development and intended for experimentation in non-production environments. Provide feedback at the FreeIPA Web UI community project to help improve the interface.
7.4. SSSD Copy linkLink copied to clipboard!
Review new Technology Preview features available for SSSD in Red Hat Enterprise Linux 10.2.
- SSSD supports generic Identity Provider integration (Technology Preview)
SSSD provides a generic identity provider (IdP), initially supporting Keycloak and Entra ID. You can configure SSSD to read users and groups directly from these IdPs and authenticate users by using the OAuth 2.0 Device Authorization Grant (RFC 8628). This allows you to use modern IdPs for centralized authentication and access management. This capability is a Technology Preview feature.
For more information, see the
sssd-idp(5)man page.
7.5. Desktop Copy linkLink copied to clipboard!
Review new Technology Preview features available for desktop in Red Hat Enterprise Linux 10.2.
- Interactive authentication selection is available on the GDM Login Screen (Technology Preview)
The GNOME Display Manager (GDM) provides an interface for users to select a preferred authentication method. Previously, the graphical login environment restricted users to a single authentication method. With this update, users can switch between methods such as external identity providers (EIdP), FIDO2-compatible passkey devices, or smart cards directly from the login screen. The feature is available as a Technology preview.
For more information to enable this functionality and a list of current limitations, see Enabling authentication mechanism selection in GDM using SSSD.
Jira:RHEL-14524[1]
mutterrebase introduces an HDR switch for HDR displays (Technology Preview)The
mutter49 rebase introduces a High Dynamic Range (HDR) switch in the display settings. The HDR switch enables users to change between HDR and Standard Dynamic Range (SDR) modes, which improves media and graphics visuals on compatible devices. This feature is available as a Technology Preview.
7.6. Virtualization Copy linkLink copied to clipboard!
Review new Technology Preview features available for virtualization in Red Hat Enterprise Linux 10.2.
- Secure Boot for VMs on ARM64 (Technology Preview)
As a Technology Preview, you can now configure the Secure Boot feature for virtual machines (VMs) on RHEL 10 hosts that use ARM64 hardware (also known as AArch64). Secure Boot ensures that the VM is running a cryptographically signed operating system (OS). This can be useful if the guest OS of a VM has been altered by malware. In such a scenario, Secure Boot prevents the VM from booting, which stops the potential spread of the malware to your host machine.
- Live migration for S3-PR (Technology Preview)
As a Technology Preview, you can now live migrate a virtual machine (VM) with enabled SCSI3-Persistent Reservation (S3-PR), with the reservation state being preserved after the migration. To do this, you must use the following XML configuration for the VM:
<reservations managed="no" migration="yes">Note, however, that migrating a VM with S3-PR and this configuration to a host that uses a previous version of QEMU fails.
- SEV-SNP is available on RHEL hosts as a Technology Preview
As a Technology Preview, you can enable Secure Encrypted Virtualization-Secure Nested Paging (SEV-SNP) on RHEL hosts. SEV-SNP is a hardware-based security feature that provides strong memory encryption and integrity protection for virtual machines, isolating them from the hypervisor and other system software.
SEV-SNP is available only with AMD CPUs, and you must use the
snphostpackage to configure the feature on the host.Jira:RHELDOCS-19757[1]
7.7. Containers Copy linkLink copied to clipboard!
Review new Technology Preview features available for containers in Red Hat Enterprise Linux 10.2.
krunruntime for RHEL Container Workloads is a Technology PreviewRed Hat Enterprise Linux offers the
krunruntime as a Technology Preview for running container workloads. You can launch containers inside lightweight microVMs, which provides an additional isolation boundary for your workloads by using thecrunconfigured to supportkrun. This feature improves container workload performance, security, and addresses an issue where running containers by usingkrunfails because RHEL did not previously include a version of thekrunruntime.
7.8. Technology Preview features identified in RHEL 10.1 Copy linkLink copied to clipboard!
Review Technology Preview features that were introduced in Red Hat Enterprise Linux 10.1.
For information about Red Hat scope of support for Technology Preview features, see Technology Preview Features Support Scope.
7.8.1. Installer and image creation Copy linkLink copied to clipboard!
Review Technology Preview features introduced for installer and image creation in Red Hat Enterprise Linux 10.1.
image-builder-clireplacesosbuild-composerandcomposer-cli(Technology Preview)With this release, you can install and use the new
image-builder-clipackage to build an image with one command. The new tool supports containers and enhances your user experience to create a container image that you can use to build other images. This capability is a Technology Preview feature. For more details, see Installing RHEL image builder.Jira:RHELDOCS-20354[1]
7.8.2. Shells and command-line tools Copy linkLink copied to clipboard!
Review Technology Preview features introduced for shells and command-line tools in Red Hat Enterprise Linux 10.1.
- RHEL 10.1 provides ReaR on aarch64 (Technology Preview)
RHEL 10.1 introduces the Relax and Recover (ReaR) package for the 64-bit ARM architecture (
aarch64) as a Technology Preview. ReaR is a disaster recovery tool that produces a bootable image that you can use to restore the system from a backup. You can currently use the following output methods with ReaR onaarch64: ISO, USB, and PXE.For more information about ReaR, see the article What is Relax and Recover(ReaR) and how to use it for disaster recovery?
Jira:RHEL-84286[1]
7.8.3. Dynamic programming languages, web and database servers Copy linkLink copied to clipboard!
Review Technology Preview features introduced for dynamic programming languages, web and database servers in Red Hat Enterprise Linux 10.1.
- Node.js 24 is available as a Technology Preview
A new
nodejs24component is available as a Technology Preview in Red Hat Enterprise Linux 10.1. This update introduces Node.js 24, which includes new features, bug fixes, security updates, and performance improvements compared to Node.js 22 in RHEL 10.0.Currently, the
nodejs24package provides versioned binaries (/usr/bin/node-24,/usr/bin/npm-24, and/usr/bin/npx-24). To use these binaries, update the shebang lines in your scripts to reference the version-specific paths. The ability fornodejs24to provide the base binaries (/usr/bin/nodeand related files) might be included in a future update.To install the
nodejs24package, enter:# dnf install nodejs24NoteOn Red Hat Enterprise Linux 10, configure FIPS mode during installation. Switching the methods after installing RHEL is documented only for RHEL 9 does not apply to RHEL 10. In the RHEL build of Node.js 24, downstream patches prevent the use of the
--force-fipsruntime flag. Passing--force-fipsresults in an error regardless of the system FIPS state. If you encounter an error that links to RHEL 9 documentation, note that those steps do not work on RHEL 10.For information about the length of support for the
nodejsApplication Streams, see Red Hat Enterprise Linux Application Streams Life Cycle.
7.8.4. Identity Management Copy linkLink copied to clipboard!
Review Technology Preview features introduced for Identity Management (IdM) in Red Hat Enterprise Linux 10.1.
- Encrypted DNS with DoT is now available in ansible-freeipa installations of IdM as a Technology Preview
You can now use Ansible to ensure that all DNS queries and responses between DNS clients and Identity Management (IdM) DNS servers are encrypted. Encrypted DNS using DNS over TLS (DoT) has been available as a Technology Preview in IdM deployments since RHEL 10. In RHEL 10.1, the functionality is available as a Technology Preview in the
freeipa.ansible_freeipacollection.To enable DoT during a deployment of IdM by using
ansible-freeipause the following options:-
ipaserver_dns_over_tlswith thefreeipa.ansible_freeipa.ipaserverrole for a new server. -
ipareplica_dns_over_tlswith thefreeipa.ansible_freeipa.ipareplicarole for a replica. -
dot_forwarderto specify an upstream DoT-enabled DNS server. -
dns_over_tls_keyanddns_over_tls_certto configure DoT certificates.
Additionally, you can set the
dns_policyvariable to enforce DoT-only communication, overriding the default behavior that allows fallback to unencrypted DNS.Jira:RHELDOCS-20258[1]
-
7.8.5. Virtualization Copy linkLink copied to clipboard!
Review Technology Preview features introduced for virtualization in Red Hat Enterprise Linux 10.1.
- Virtual Socket to TCP bridge is available as a Technology Preview
As a Technology Preview, you can use a Virtual Socket (
vsock) to TCP bridge. By using this bridge, you can securely expose a virtual machine (VM) service, such as SSH, to the host machine without configuring any IP networking.To bridge your host’s connection directly to the SSH service inside the VM over the hypervisor’s private
vsockchannel, you can use a relay tool such assocat.
- CCA on ARM virtual machines is available as a Technology Preview
As a Technology Preview, you can enable Confidential Compute Architecture (CCA) on RHEL 10.1 and later virtual machines (VMs). CCA, built on top of Realm Management Extension (RME), helps to maintain data privacy while it is in use within a virtual machine.
Currently, CCA can only be enabled on ARM VMs as a Technology Preview and not on a RHEL host.
- TDX is available on RHEL hosts as a Technology Preview
As a Technology Preview, you can enable Trust Domain Extensions (TDX) on RHEL hosts. TDX is a hardware-based security feature that provides strong memory encryption and integrity protection for virtual machines, isolating them from the hypervisor and other system software.
TDX is available only with Intel CPUs.
Jira:RHEL-111863[1]
7.8.6. Containers Copy linkLink copied to clipboard!
Review Technology Preview features introduced for containers in Red Hat Enterprise Linux 10.1.
- Podman compatibility with Docker API is available as a Technology Preview
Podman supports the following Docker API versions as a Technology Preview:
- Docker API 1.41
- Docker API 1.43
7.9. Technology Preview features identified in RHEL 10.0 Copy linkLink copied to clipboard!
Review Technology Preview features that were introduced in Red Hat Enterprise Linux 10.0.
For information about Red Hat scope of support for Technology Preview features, see Technology Preview Features Support Scope.
7.9.1. Software management Copy linkLink copied to clipboard!
Review Technology Preview features introduced for software management in Red Hat Enterprise Linux 10.0.
- Support for signing packages with Sequoia PGP (Technology Preview)
The
macros.rpmsign-sequoiamacro file that configures RPM to use Sequoia PGP instead of GnuPG for signing packages is now available as a Technology Preview. To enable its usage, perform the following steps:Install the following packages:
# dnf install rpm-sign sequoia-sqCopy the
macros.rpmsign-sequoiafile to the/etc/rpm/directory:$ cp /usr/share/doc/rpm/macros.rpmsign-sequoia /etc/rpm/
Jira:RHEL-56363[1]
7.9.2. Networking Copy linkLink copied to clipboard!
Review Technology Preview features introduced for networking in Red Hat Enterprise Linux 10.0.
- WireGuard VPN (Technology Preview)
WireGuard, which Red Hat provides as an unsupported Technology Preview, is a high-performance VPN solution that runs in the Linux kernel. It uses modern cryptography and is easier to configure than other VPN solutions. Additionally, the small code-basis of WireGuard reduces the surface for attacks and, therefore, improves the security.
For further details, see Setting up a WireGuard VPN.
Jira:RHELDOCS-20056[1]
- KTLS (Technology Preview)
In RHEL, Kernel Transport Layer Security (KTLS) is provided as a Technology Preview. KTLS handles TLS records by using the symmetric encryption or decryption algorithms in the kernel for the AES-GCM cipher. KTLS also includes the interface for offloading TLS record encryption to Network Interface Controllers (NICs) that provides this functionality.
Note that specific uses cases of kernel TLS offload might have a higher support status.
Jira:RHELDOCS-20440[1]
7.9.3. Kernel Copy linkLink copied to clipboard!
Review Technology Preview features introduced for kernel in Red Hat Enterprise Linux 10.0.
- The Red Hat Enterprise Linux for Real Time on ARM64 is now available as a Technology Preview
With this Technology Preview, the Red Hat Enterprise Linux for Real Time is now enabled for ARM64. The ARM64 is enabled on ARM (AARCH64), for both 4k and 64k ARM kernels.
Jira:RHELDOCS-19635[1]
7.9.4. File systems and storage Copy linkLink copied to clipboard!
Review Technology Preview features introduced for file systems and storage in Red Hat Enterprise Linux 10.0.
ublk_drvdriver is available as a Technology PreviewThe
ublk_drvkernel module is now enabled as a Technology Preview. It provides theublkframework with which you can create and build high-performance block devices from userspace. Currently,ublkrequires userspace implementations, such as the Userspace Block Driver (ublksrv) or the Rust-basedublk(rublk), to function effectively.Jira:RHELDOCS-19891[1]
- NVMe/TCP using TLS is available (Technology Preview)
Encrypting Non-volatile Memory Express (NVMe) over TCP (NVMe/TCP) network traffic using TLS configured with Pre-Shared Keys (PSK) has been added as a Technology Preview in RHEL 10.0. For instructions, see Configuring an NVMe/TCP host using TLS with Pre-Shared-Keys.
Jira:RHELDOCS-19968[1]
- xfs_scrub utility is available as a Technology Preview
You can check all the metadata on a mounted XFS file system by using the
xfs_scrubutility as a Technology Preview. It functions similarly to thexfs_repair -ncommand for an unmounted XFS filesystem. For details, see thexfs_scrub(8)man page on your system. Note that currently only the scrub feature is available in RHEL 10 kernels and online repair is not enabled.Jira:RHELDOCS-20041[1]
- Limited shrinking of XFS file systems is available as Technology Preview
You can reduce the size of XFS file systems by using the
xfs_growfsutility as a Technology Preview. You can remove blocks from the end of the file system by usingxfs_growfs, provided that all of the following conditions are true:- No metadata or data is allocated within the range to be removed.
- The requested size is within the last allocation group.
Jira:RHELDOCS-20042[1]
- Mounting XFS file systems with blocks larger than system page is available as Technology Preview
You can now mount XFS file systems created with a block size larger than the system page size as a Technology Preview. For example, a file system with 16-KB blocks can now be mounted on a system with a 4-KB page size, such as x86_64.
Jira:RHELDOCS-20043[1]
io-uringinterface is available as a Technology PreviewThe
io_uring, which is an asynchronous I/O interface, is available as a Technology Preview. By default, this feature is disabled in RHEL 10. You can enable this interface by setting thekernel/io_uring_disabledvariable:For all users:
# echo 0 > /proc/sys/kernel/io_uring_disabledFor root only:
# echo 1 > /proc/sys/kernel/io_uring_disabled
You can also disable
io_uringfor all processes:# echo 2 > /proc/sys/kernel/io_uring_disabled
- NVMe/TCP Boot with NBFT is available as a Technology Preview
NVMe/TCP Boot by using the NVM Express Boot Specification (NBFT) is available on select server platforms as a Technology Preview. Consult your server manufacturer for platform-specific details and compatibility information.
Jira:RHELDOCS-21587[1]
7.9.5. Compilers and development tools Copy linkLink copied to clipboard!
Review Technology Preview features introduced for compilers and development tools in Red Hat Enterprise Linux 10.0.
eu-stacktraceavailable as a Technology PreviewThe
eu-stacktraceutility, which has been distributed through theelfutilspackage since version 0.192, is available as a Technology Preview feature.eu-stacktraceis a prototype utility that uses theelfutilstoolkit’s unwinding libraries to support a sampling profiler to unwind frame pointer-less stack sample data.Jira:RHELDOCS-19072[1]
7.9.6. Identity Management Copy linkLink copied to clipboard!
Review Technology Preview features introduced for Identity Management (IdM) in Red Hat Enterprise Linux 10.0.
- DNS over TLS (DoT) in IdM deployments is available as a Technology Preview
Encrypted DNS using DNS over TLS (DoT) is now available as a Technology Preview in Identity Management (IdM) deployments. You can now encrypt all DNS queries and responses between DNS clients and IdM DNS servers.
To start using this functionality, install the
ipa-server-encrypted-dnspackage on IdM servers and replicas, and theipa-client-encrypted-dnspackage on IdM clients. Administrators can enable DoT during the installation by using the--dns-over-tlsoption.IdM configures Unbound as a local caching resolver and BIND to receive DoT requests. This functionality is available through the command-line interface (CLI) and non-interactive installations of IdM.
The following options were added to installation utilities for IdM servers, replicas, clients, and the integrated DNS service:
-
--dot-forwarderto specify an upstream DoT-enabled DNS server. -
--dns-over-tls-keyand--dns-over-tls-certto configure DoT certificates. -
--dns-policyto set a DNS security policy to either allow fallback to unencrypted DNS or enforce strict DoT usage.
By default, IdM uses the
relaxedDNS policy, which allows fallback to unencrypted DNS. You can enforce encrypted-only communication by using the new--dns-policyoption with theenforcedsetting.You can also enable DoT on an existing IdM deployment by reconfiguring the integrated DNS service by using
ipa-dns-installwith the new DoT options.See Securing DNS with DoT in IdM for more details.
-
7.9.7. Virtualization Copy linkLink copied to clipboard!
Review Technology Preview features introduced for virtualization in Red Hat Enterprise Linux 10.0.
- AMD SEV, SEV-ES, and SEV-SNP for KVM virtual machines are available as a Technology Preview
As a Technology Preview, RHEL provides the Secure Encrypted Virtualization (SEV) feature for AMD EPYC host machines that use the KVM hypervisor. If enabled on a virtual machine (VM), SEV encrypts the VM’s memory to protect the VM from access by the host. This increases the VM security.
In addition, the enhanced Encrypted State version of SEV (SEV-ES) is also provided as Technology Preview. SEV-ES encrypts all CPU register contents when a VM stops running. This prevents the host from modifying the VM’s CPU registers or reading any information from them.
RHEL also provides the Secure Nested Paging (SEV-SNP) feature as Technology Preview. SNP enhances SEV and SEV-ES by improving its memory integrity protection, which helps to prevent hypervisor-based attacks, such as data replay or memory re-mapping.
Note that:
- SEV and SEV-ES work only on the 2nd generation of AMD EPYC CPUs (codenamed Rome) or later.
- SEV-SNP works only on 3rd generation AMD EPYC CPUs (codenamed Milan) or later.
Also note that RHEL includes SEV, SEV-ES, and SEV-SNP encryption, but not the SEV, SEV-ES, and SEV-SNP security attestation and live migration.
Jira:RHELDOCS-16800[1]
- Creating nested virtual machines (Technology Preview)
Nested KVM virtualization is provided as a Technology Preview for KVM virtual machines (VMs) running on Intel, AMD64, and IBM Z hosts with RHEL 10. With this feature, a RHEL 7, RHEL 8, or RHEL 9 VM that runs on a physical RHEL 10 host can act as a hypervisor, and host its own VMs.
Jira:RHELDOCS-20080[1]
- New package:
trustee-guest-components(Technology Preview) As a Technology Preview, this update adds the
trustee-guest-componentspackage. This makes it possible for confidential virtual machines to attest themselves and get confidential resources from a Trustee server.Jira:RHEL-73770[1]
7.9.8. Containers Copy linkLink copied to clipboard!
Review Technology Preview features introduced for containers in Red Hat Enterprise Linux 10.0.
- Partial pulls for
zstd:chunkedare available as a Technology Preview You can pull only the changed parts of the container images compressed with the
zstd:chunkedformat, reducing network traffic and necessary storage. You can enable partial pulls by adding theenable_partial_images = "true"setting to the/etc/containers/storage.conffile. This functionality is available as a Technology Preview.
- The
podman artifactcommand is available as a Technology Preview The
podman artifactcommand, which you can use to work with OCI artifacts at the command-line level, is available as a Technology Preview. For further informal, reference the man page.
- The
vrfoption for thepodman network createis available as a Technology Preview The
podman network createcommand now provides thevrfvalue for the--optoption, as a Technology Preview. Thevrfvalue assigns a virtual routing and forwarding instance (VRF) to the bridge interface. It accepts the name of the VRF and defaults to none.WarningThis option can only be used with the Netavark network backend.
7.10. Technology Preview features identified in previous releases Copy linkLink copied to clipboard!
Review Technology Preview features that were introduced in earlier Red Hat Enterprise Linux versions.
For information about Red Hat scope of support for Technology Preview features, see Technology Preview Features Support Scope.
7.10.1. Networking Copy linkLink copied to clipboard!
Review Technology Preview features introduced for networking in previous Red Hat Enterprise Linux versions.
NetworkManagerenables configuring HSR and PRP interfacesHigh-availability Seamless Redundancy (HSR) and Parallel Redundancy Protocol (PRP) are network protocols that provide seamless failover against failure of any single network component. Both protocols are transparent to the application layer, meaning that users do not experience any disruption in communication or any loss of data, because a switch between the main path and the redundant path happens very quickly and without awareness of the user. Now it is possible to enable and configure HSR and PRP interfaces using the
NetworkManagerservice through thenmcliutility and the DBus message system.
7.10.2. Identity Management Copy linkLink copied to clipboard!
Review Technology Preview features introduced for Identity Management (IdM) in previous Red Hat Enterprise Linux versions.
- DNSSEC available as Technology Preview in IdM
Identity Management (IdM) servers with integrated DNS now implement DNS Security Extensions (DNSSEC), a set of extensions to DNS that enhance security of the DNS protocol. DNS zones hosted on IdM servers can be automatically signed using DNSSEC. The cryptographic keys are automatically generated and rotated.
Users who decide to secure their DNS zones with DNSSEC are advised to read and follow these documents:
Note that IdM servers with integrated DNS use DNSSEC to validate DNS answers obtained from other DNS servers. This might affect the availability of DNS zones that are not configured in accordance with recommended naming practices.
Jira:RHELDOCS-20690[1]
7.10.3. Virtualization Copy linkLink copied to clipboard!
Review Technology Preview features introduced for virtualization in previous Red Hat Enterprise Linux versions.
- VDUSE for RHEL networking is available as a Technology Preview
The virtio Data Path Acceleration (vDPA) device in userspace (VDUSE) feature is now available as a Technology Preview for RHEL networking. VDUSE is a Linux kernel mechanism, which allocates user-space for vDPA devices specifically. This mechanism enables a user-space process to register a
virtio-classdevice, such as a NIC or block device, with the kernel in a controlled manner. As a result, you can use it on virtual machines or the host through standard vDPA or virtio interfaces.Jira:RHEL-76477[1]
Chapter 8. Developer Preview features Copy linkLink copied to clipboard!
Review Developer Preview features that are available in Red Hat Enterprise Linux 10.2.
For information about Red Hat scope of support for Developer Preview features, see Developer Preview - Scope of Support.
8.1. Installer and image creation Copy linkLink copied to clipboard!
Review Developer Preview features available for installer and image creation in Red Hat Enterprise Linux 10.2.
- Unified storage for bootc is available as a Developer Preview
With this Developer Preview feature, you can configure
bootcto pull the host image into bootc-owned container storage, enhancing container image management efficiency. This feature reduces the need for repeated image pulls on the same host, allowing the host image to be reused by container runtimes, such as podman for running and building layered images. It improves overall network performance by usingzstdchunking when available and streamlines development and testing processes.As a result, by configuring the unified storage feature on your system, you can store, manage, and utilize container images more efficiently, providing a seamless bootc container management experience.
Jira:RHELDOCS-21395[1]
8.2. RHEL Lightspeed Copy linkLink copied to clipboard!
Review Developer Preview features available for RHEL Lightspeed in Red Hat Enterprise Linux 10.2.
gooseas an alternative for the existing RHEL command-line assistant client and back-end serviceThis update introduces
gooseas an alternative to the command-line interface (CLI) client for the existing RHEL command-line assistant (CLA) back-end service. These changes do not affect thecommand-line assistantback end, and functionalities remain the same. Thegoosepackage is available on the RHEL Extensions repository. You can use thegoosetext chat interface interactively during the chat session.When you use
goose, before you execute the MCP server or a local Linux command, it prompts you to confirm that the LLM does not break your system or workflow.For more information, see the Red Hat Knowledgebase article link:https://access.redhat.com/articles/7142302Optimize the RHEL command-line assistant tasks by using goose-redhat].
ImportantThe existing RHEL command-line assistant (CLA) that uses a Red Hat-provided LLM is still available and integrated directly into the RHEL 10 (and late RHEL 9) ecosystem. It is usually installed by using standard DNF repositories and is a core part of the RHEL Lightspeed offering.
Jira:RSPEED-2846[1]
- Agent skills for Red Hat Enterprise Linux are available (Developer Preview)
With this Developer Preview, Red Hat Enterprise Linux introduces two new agent skills designed to enhance AI-driven administration and troubleshooting for Red Hat Enterprise Linux (RHEL). The Agent skills for RHEL are built on the Agent Skills (
SKILL.md) open standard. These integrations equip AI agents, such as Cursor and Claude Code, with workflows and domain expertise directly from Red Hat.By using these skills, you can help ensure that the AI-generated guidance aligns with RHEL standards, moving away from generic Linux advice toward recommended Red Hat methodologies.
- Best Practices Skill for RHEL focuses on proactive maintenance, system health, and troubleshooting. It provides the AI tool with a structured framework to assist with diagnosing complex RHEL environments.
Translator Skill for RHEL is designed for users migrating from other distributions or earlier systems. This skill translates general Linux concepts into RHEL-native equivalents.
For more information, see Best practices agent skill for Red Hat Enterprise Linux and Translator agent skill for Red Hat Enterprise Linux.
Jira:RHELDOCS-22164[1]
8.3. Developer Preview features identified in RHEL 10.1 Copy linkLink copied to clipboard!
Review Developer Preview features that were introduced in Red Hat Enterprise Linux 10.1.
8.3.1. RHEL Lightspeed Copy linkLink copied to clipboard!
Review Developer Preview features introduced for RHEL Lightspeed in Red Hat Enterprise Linux 10.1.
- The
linux-mcp-serverfor Red Hat Enterprise Linux is available (Developer Preview) This Developer Preview introduces the
linux-mcp-serverfor Red Hat Enterprise Linux (RHEL), which is designed to bridge the gap between RHEL systems and large language models (LLMs). By using this Model Context Protocol (MCP) server, you can enable AI applications to perform context-aware troubleshooting on RHEL systems, including log and performance analysis. For more details, see Using the MCP server for RHEL to enable AI assistants to run, discover, and troubleshoot complex issues.Jira:RHELDOCS-21153[1]
Chapter 9. Removed features Copy linkLink copied to clipboard!
Review features that were removed in Red Hat Enterprise Linux 10.2.
All removed features were deprecated in earlier releases and are no longer supported. For information regarding functionality that is present in RHEL 9 but has been removed in RHEL 10, see Considerations in adopting RHEL 10.
9.1. Security Copy linkLink copied to clipboard!
Review removed features for security in Red Hat Enterprise Linux 10.2.
- Non-post-quantum KEX removed from the
FUTUREpolicy The
FUTUREsystem-wide cryptographic policy no longer allows traditional, non-post-quantum, key exchange (KEX) methods. With this update, you can use only hybrid Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM) key exchange algorithms.This aligns with the target use of the
FUTUREpolicy in controlled, isolated deployments and impacts interoperability with the public internet. For example, when you switch RHEL 10 to theFUTUREpolicy, you cannot connect to the cdn.redhat.com network. Also, Java clients cannot connect to TLS servers running inFUTURE.Note that upcoming RHEL releases might further restrict signature algorithms in certificates and signatures to allow only post-quantum cryptography (PQC) in the
FUTUREpolicy.
9.2. Infrastructure services Copy linkLink copied to clipboard!
Review removed features for infrastructure services in Red Hat Enterprise Linux 10.2.
- Vim launch from
vicommand removed The
vicommand no longer launches the Vim editor when bothvim-minimalandvim-enhancedare installed. Instead, thevicommand starts the minimal editor fromvim-minimal. To use Vim, run thevimcommand.Jira:RHEL-145868[1]
9.3. Identity Management Copy linkLink copied to clipboard!
Review removed features for Identity Management (IdM) in Red Hat Enterprise Linux 10.2.
- The SSSD
ipa_enable_dns_sitesoption is removed The
ipa_enable_dns_sitesoption in SSSD is removed and is no longer available in RHEL 10.2. Because the corresponding server-side functionality was never implemented, the option was non-functional. It has been removed to simplify configuration and avoid confusion.
9.4. SSSD Copy linkLink copied to clipboard!
Review removed features for SSSD in Red Hat Enterprise Linux 10.2.
- IdM no longer supports configuring an Active Directory trust with Windows Server 2012 R2
With Windows Server 2012 R2 reaching its end-of-life, Red Hat aligns supported platform versions with Microsoft support lifecycles and has removed support for this version for Active Directory trusts.
Jira:RHELDOCS-22174[1]
Chapter 10. Deprecated features Copy linkLink copied to clipboard!
Review functionalities that are deprecated in Red Hat Enterprise Linux 10.2.
Deprecated functionalities are fully supported, which means that they are tested and maintained, and their support status remains unchanged within Red Hat Enterprise Linux 10. However, they will likely not be supported in a future major version release, and are not recommended for new deployments on the current or future major versions of Red Hat Enterprise Linux.
Features can be deprecated during a major version’s release cycle.
Deprecated features are listed in all future release notes until they are removed. For a complete list of deprecated features, see the release notes for the latest minor version. For information about the length of support, see Red Hat Enterprise Linux Life Cycle and Red Hat Enterprise Linux Application Streams Life Cycle.
10.1. High availability and clusters Copy linkLink copied to clipboard!
Review deprecated functionalities for high availability and clusters in Red Hat Enterprise Linux 10.2.
- SCTP transport for knet is now deprecated in Corosync
Previously, the
knettransport protocol in Corosync allowed the selection of Stream Control Transmission Protocol (SCTP), although this specific transport was not officially supported in RHEL.With this update, using SCTP for
knettransport is officially deprecated. The option to use SCTP might be removed in a future release.As a result, users are advised to transition to supported transport protocols. The
pcs cluster setup,pcs cluster link add, andpcs cluster link updatecommands now display a warning if SCTP is specified forknettransport.
10.2. Containers Copy linkLink copied to clipboard!
Review deprecated functionalities for containers in Red Hat Enterprise Linux 10.2.
MySQL80andPython 3.11container images are deprecatedThe
MySQL80andPython 3.11container images are now deprecated and will no longer receive feature updates. To maintain support and receive new features, you must migrate to theMySQL84andPython 3.12container images.Jira:RHELDOCS-22088[1]
- The
bootc-image-buildertool is deprecated The
bootc-image-buildertool, to convertbootcimages into disk images for different platforms and formats, is deprecated and might be removed in a future major release. It remains supported for the lifetime of Red Hat Enterprise Linux (RHEL) 10. You can create bootable containers and disk images by using the RHEL image builder instead.Jira:RHELDOCS-22154[1]
10.3. Deprecated features identified in RHEL 10.1 Copy linkLink copied to clipboard!
Review functionalities that are deprecated in Red Hat Enterprise Linux 10.1.
10.3.1. Security Copy linkLink copied to clipboard!
Review functionalities deprecated for security in Red Hat Enterprise Linux 10.1.
oqsproviderandliboqsare deprecatedThe
oqsproviderandliboqspackages, which provided post-quantum cryptography (PQC) for OpenSSL 3.0, are deprecated and might be removed in a future major release. Instead, use the PQC functionality provided by OpenSSL 3.5.Jira:RHEL-97489[1]
X25519-MLKEM768deprecated and aliased toMLKEM768-X25519incrypto-policiesThe
X25519-MLKEM768value in system-wide cryptographic policies is deprecated and aliased to theMLKEM768-X25519value. This unifies the concatenation order, allowing both variants to work.
10.3.2. Compilers and development tools Copy linkLink copied to clipboard!
Review functionalities deprecated for compilers and development tools in Red Hat Enterprise Linux 10.1.
- GCC Toolset 15 environment script replaces Software Collections (
scl-enable) Previously, the
scl enable gcc-toolset-15 <command>command was used to manage the development environment for GCC Toolset 15 on Red Hat Enterprise Linux. In RHEL 10, Software Collections are no longer used for this purpose. As a consequence, thescl enableoption does not work withgcc-toolset-15.Use the new
gcc-toolset-15-envscript, which runs the specified command with the GCC toolset environment:gcc-toolset-15-env <command>If a command is not specified, the script opens a default shell (
sh) in the GCC toolset environment.As a result, users must use
gcc-toolset-15-envinstead ofscl enableto access GCC Toolset 15 in RHEL 10.Jira:RHEL-88743[1]
10.3.3. Virtualization Copy linkLink copied to clipboard!
Review functionalities deprecated for virtualization in Red Hat Enterprise Linux 10.1.
- Specific IBM z16 CPU features have been deprecated.
With this update, the
teandcteCPU features have been deprecated for IBM z16 KVM VMs. Note, however, that migrating a virtual machine with CPU modelhost-modelfrom an IBM z16 host to an IBM z17 host does not require any adjustments to CPU feature settings.Jira:RHEL-89426[1]
- The
rtl8139NIC has been deprecated for VMs With this update, the
rtl8139network interface controller type has been deprecated, and will become unsupported for use in virtual machines in a future major release of RHEL. If you require using a non-virtio NIC type on your host, use thee1000ore1000eNIC instead.
10.4. Deprecated features identified in RHEL 10.0 Copy linkLink copied to clipboard!
Review functionalities that are deprecated in Red Hat Enterprise Linux 10.0.
10.4.1. Installer and image creation Copy linkLink copied to clipboard!
Review functionalities deprecated for installer and image creation in Red Hat Enterprise Linux 10.0.
- The
squashfspackage has been deprecated The
squashfspackage has been deprecated, and will be removed in a future major RHEL release. As an alternative,dracuthas support for mountingerofs.Jira:RHELDOCS-18903[1]
gdiskis removed fromboot.isoin RHEL 10The
gdiskpartitioning utility is removed from theboot.isoimage type in RHEL 10. You still can usegdiskin your Kickstarts. For theboot.isoimage type, other tools are available for handling GPT disks, for example, thepartedutility.Jira:RHELDOCS-18904[1]
- The
moduleKickstart command has been deprecated Anaconda has deprecated its support for DNF modularity, and as a consequence the
moduleKickstart command has been deprecated. This might impact you if you are using modules in the%packagessection of your Kickstart files or themoduleKickstart command. This change is implemented for simplifying the installation process and ensuring a more consistent experience moving forward.
- The
inst.gptboot option is now deprecated The
inst.gptboot option is now deprecated and will be removed in the future releases. To specify a preferred disk label type, use theinst.disklabelboot option. Specifygptormbrto create GPT or MBR disk labels.Jira:RHELDOCS-18491[1]
10.4.2. Security Copy linkLink copied to clipboard!
Review functionalities deprecated for security in Red Hat Enterprise Linux 10.0.
- ENGINE API in OpenSSL is deprecated
In RHEL 10, ENGINE API is deprecated and is planned to be removed in a future major release. No new applications should be built by using the ENGINE API. To keep application binary interface (ABI) and existing applications working, OpenSSL still exports the ENGINE symbols. To prevent new applications from using ENGINE API, OpenSSL sets the
OPENSSL_NO_ENGINEflag system-wide, and the headerengine.hthat exposes the ENGINE API has been removed.
crypto-policiesnow setallow-rsa-pkcs1-encrypt = falsefor GnuTLSIn RHEL 10, the GnuTLS library blocks encryption and decryption with the RSA PKCS #1 v1.5 padding by default. Except for the LEGACY policy, the
allow-rsa-pkcs1-encrypt = falseoption is specified in all system-wide cryptographic policies (DEFAULT, FUTURE, and FIPS).
- HMAC-SHA-1 in FIPS mode is deprecated
The HMAC-SHA-1 cryptographic algorithm is deprecated in FIPS mode, and it might be removed in a future release. Outside FIPS mode, support for HMAC-SHA-1 is preserved.
10.4.3. Software management Copy linkLink copied to clipboard!
Review functionalities deprecated for software management in Red Hat Enterprise Linux 10.0.
- Modularity is deprecated
In RHEL 10, the modularity functionality is deprecated and will be removed in a future major release. Therefore, the DNF
modulecommand displays a deprecation warning.NoteIn previous RHEL major versions, some Application Streams were available as modules as an extension to the RPM format. In RHEL 10, Red Hat does not intend to provide any Application Streams that use modularity as the packaging technology. Therefore, no modular content is being distributed with RHEL 10.
Jira:RHELDOCS-20138[1]
10.4.4. Infrastructure services Copy linkLink copied to clipboard!
Review functionalities deprecated for infrastructure services in Red Hat Enterprise Linux 10.0.
- FTP clients and Servers software are now deprecated
The following FTP clients and servers software are deprecated and will be removed in the future major version of RHEL:
-
ftp -
lftp -
vsftpd
These FTP protocol implementations are no longer under active development. We recommend that customers plan to migrate workflows based on FTP to one of either:
-
OpenSSH and the
sftpcommand, which provides an interactive interface for secure file transfer over the SSH protocol. - WebDAV based on Apache httpd - various client implementations are available.
Jira:RHELDOCS-20610[1]
-
10.4.5. Networking Copy linkLink copied to clipboard!
Review functionalities deprecated for networking in Red Hat Enterprise Linux 10.0.
ipsethas been unmaintainedIn RHEL 10, the
ipsetutility is unmaintained and is planned to be removed in a future major release. Red Hat will provide only critical bug fixes during the current release lifecycle. As an alternative toipset, you can use thenftablessets functionality instead.Jira:RHELDOCS-20147[1]
- The BIND
auto-dnssecparameter is deprecated Starting with RHEL 9.7, the BIND
auto-dnssecparameter is deprecated and will be removed in a future release. As a replacement, use thednssec-policyparameter to specify a complete Key and Signing Policy (KASP) that groups all related configurations into a single, intuitive block.For further details and information about migrating to
dnssec-policy, see DNSSEC Key and Signing Policy in the BIND 9 upstream documentation.Jira:RHELDOCS-21532[1]
10.4.6. File systems and storage Copy linkLink copied to clipboard!
Review functionalities deprecated for file systems and storage in Red Hat Enterprise Linux 10.0.
- The
squashfspackage has been deprecated SquashFS is deprecated and will be removed in the next major release. It will no longer receive enhancements and is in RHEL 10 for specific use cases that are internal to Red Hat. Consider using EROFS as an alternative solution.
Jira:RHELDOCS-18450[1]
10.4.7. High availability and clusters Copy linkLink copied to clipboard!
Review functionalities deprecated for high availability and clusters in Red Hat Enterprise Linux 10.0.
- Deprecated High Availability Add-On features
The following features have been deprecated in Red Hat Enterprise Linux 10 and will be removed in the next major release:
- Specifying rules as multiple arguments. Use a single string argument instead.
-
Specifying
scoreas a standalone value inpcs constraint location addandpcs constraint colocation ad. Usescore=valueinstead. Specifying the
--waitoption in resource commands exceptpcs resource restart | move, and in the commandspcs cluster node add-guest | add-remote. Use the following commands instead:-
pcs status waitto wait for the cluster to settle into stable state. -
pcs status query resourcecommands to verify that the resource is in the expected state after the wait.
-
-
Using the
--forceflag to confirm potentially destructive actions such aspcs cluster destroy,pcs quorum unblock,pcs stonith confirm,pcs stonith sbd device setup, andpcs stonith sbd watchdog testcommands. You should now use the--yesflag to confirm potentially destructive actions and reserve use of the--forceflag to override validation errors. -
Using the
--forceflag to confirm overwriting files inpcs cluster report. Use the--overwriteflag instead. -
Assigning and unassigning ACL roles without specifying the
userorgroupkeyword. -
Configuring a score parameter in order constraints. The
pcscommand-line interface now produces a warning when a user attempts to configure a score parameter in order constraints.
Jira:RHELDOCS-19607[1]
10.4.8. Compilers and development tools Copy linkLink copied to clipboard!
Review functionalities deprecated for compilers and development tools in Red Hat Enterprise Linux 10.0.
- The
utmpandutmpxinterfaces inglibcare deprecated The
utmpandutmpxinterfaces provided by theglibclibrary include a counter that counts time since the UNIX epoch. This counter will overflow on February 07, 2106. Therefore,utmpandutmpxare deprecated in RHEL 10 and will be removed in RHEL 11.Jira:RHELDOCS-18080[1]
10.4.9. The web console Copy linkLink copied to clipboard!
Review functionalities deprecated for the web console in Red Hat Enterprise Linux 10.0.
- The host switcher in the RHEL web console is deprecated
The host switcher that provides connections to multiple machines through SSH from a single RHEL web console session is deprecated and disabled by default. Due to the web technology limitations, this feature cannot be secure.
In the short term, you can enable the host switcher after assessing the risks in your scenario with the
AllowMultiHostoption in thecockpit.conffile:[WebService] AllowMultiHost=yesAs more secure alternatives, you can use:
- the web console login page (with the secure limit of one host in a web browser session)
- the Cockpit Client flatpak
Jira:RHEL-4032[1]
10.4.10. Red Hat Enterprise Linux System Roles Copy linkLink copied to clipboard!
Review functionalities deprecated for Red Hat Enterprise Linux system roles in Red Hat Enterprise Linux 10.0.
- The
mssql_accept_microsoft_odbc_driver_17_for_sql_server_eulavariable has been deprecated With a future major update of RHEL, the
mssql_accept_microsoft_odbc_driver_17_for_sql_server_eulavariable will no longer be supported in themssqlsystem role because the role can now install theodbcdriver formssql_toolsversion 17 and 18. Therefore, you must use themssql_accept_microsoft_odbc_driver_for_sql_server_eulavariable without the version number instead.Important: If you use the deprecated variable with the version number
mssql_accept_microsoft_odbc_driver_17_for_sql_server_eula, the role notifies you to use the new variablemssql_accept_microsoft_odbc_driver_for_sql_server_eula. However, the deprecated variable continues to work.
- The
sshdvariable deprecated and replaced bysshd_config To unify coding standards across the RHEL system roles, the
sshdvariable has been replaced by thesshd_configvariable. Thesshdvariable is now deprecated and might be removed from thesshdAnsible role in a future major version of RHEL.Jira:RHEL-73440[1]
10.4.11. Virtualization Copy linkLink copied to clipboard!
Review functionalities deprecated for virtualization in Red Hat Enterprise Linux 10.0.
- libslirp has been deprecated
In RHEL 10, the
libslirpnetworking back end has become deprecated, and will be removed in a future major version release.
- The i440fx virtual machine type has been deprecated
In RHEL 10, the
i440fxmachine types for virtual machines (VMs) have become deprecated, and will be removed in a future major version of RHEL.In addition, the
i440fx-rhel7.6machine type has been replaced byi440fx-rhel10.0. As a consequence, a VM with ai440fx-rhel7.6machine type will not boot correctly after live migrating to a RHEL 10 host. Workaround: Restart the VM after live migration.Jira:RHELDOCS-18672[1]
- Legacy vCPU models are now deprecated
Several virtual CPU models are now deprecated and will become unsupported for use in virtual machines (VMs) in a future major release of RHEL. Notably, the deprecated models include the following:
- Intel Xeon 55xx and 75xx Processor families (also known as Nehalem)
- Intel Xeon v2 (also known as Ivy Bridge)
- AMD Opteron G4 and G5
To view the complete list of deprecated CPU models, use the following command:
# /usr/libexec/qemu-kvm -cpu help | grep depre | grep -v - -vTo check whether a running VM is using a deprecated CPU model, use the
virsh dominfoutility, and look for a line similar to the following in theMessagessection:tainted: use of deprecated configuration settings deprecated configuration: CPU model 'Nehalem'Jira:RHEL-28971[1]
virt-managerhas been deprecatedThe Virtual Machine Manager application, also known as
virt-manager, has been deprecated. The RHEL web console, also known asCockpit, is intended to become its replacement in a subsequent release. It is, therefore, recommended that you use the web console for managing virtualization in a GUI. Note, however, that some features available invirt-managermight not be yet available in the RHEL web console.Jira:RHELDOCS-20688[1]
libvirtdhas become deprecatedThe monolithic
libvirtdaemon,libvirtd, has been deprecated in RHEL 9, and will be removed in a future major release of RHEL. Note that you can still uselibvirtdfor managing virtualization on your hypervisor, but Red Hat recommends switching to the newly introduced modularlibvirtdaemons. For instructions and details, see the RHEL 9 Configuring and Managing Virtualization document.Jira:RHELDOCS-20689[1]
- SecureBoot image verification using SHA1-based signatures is deprecated
Performing SecureBoot image verification using SHA1-based signatures on UEFI (PE/COFF) executables has become deprecated. Instead, Red Hat recommends using signatures based on the SHA-2 algorithm, or later.
Jira:RHELDOCS-20691[1]
- The virtual floppy driver has become deprecated
The
isa-fdcdriver, which controls virtual floppy disk devices, is now deprecated, and will become unsupported in a future release of RHEL. Therefore, to ensure forward compatibility with migrated virtual machines (VMs), Red Hat discourages using floppy disk devices in VMs hosted on RHEL 10.2.Jira:RHELDOCS-20692[1]
- qcow2-v2 image format is deprecated
With RHEL 10.2, the qcow2-v2 format for virtual disk images has become deprecated, and will become unsupported in a future major release of RHEL. In addition, the RHEL 10.2 Image Builder cannot create disk images in the qcow2-v2 format.
Instead of qcow2-v2, Red Hat strongly recommends using qcow2-v3. To convert a qcow2-v2 image to a later format version, use the
qemu-img amendcommand.Jira:RHELDOCS-20693[1]
10.4.12. Containers Copy linkLink copied to clipboard!
Review functionalities deprecated for containers in Red Hat Enterprise Linux 10.0.
tzdatapackage is no longer installed by default in the minimal container imagesThe
tzdatapackage is no longer installed in theregistry.access.redhat.com/ubi10-minimalcontainer image. As a consequence, if you migrate your minimal container builds from a previous RHEL release to RHEL 10.0, and you enter themicrodnf reinstall tzdatacommand to reinstall thetzdatapackage, you get an error message because thetzdatapackage is no longer installed by default. In this case, enter themicrodnf install tzdatacommand to installtzdata.Jira:RHELDOCS-18700[1]
- The Podman v5.0 deprecations
In RHEL 10.0, the following is deprecated in Podman v5.0:
-
The system connections and farm information stored in the
containers.conffile are now read-only. The system connections and farm information will now be stored in thepodman.connections.jsonfile, managed only by Podman. Podman continues to support the old configuration options such as[engine.service_destinations]and the[farms]section. You can still add connections or farms manually if needed; however, it is not possible to delete a connection from thecontainers.conffile with thepodman system connection rmcommand. -
The
slirp4netnsnetwork mode is deprecated and will be removed in a future major release of RHEL. Thepastanetwork mode is the default network mode for rootless containers. The
containernetworking-pluginspackage and the CNI network stack are no longer supported.-
If you upgrade from the previous RHEL versions to RHEL 10.0 or if you have a fresh installation of RHEL 10.0, the CNI is no longer available. As a result, you have to run the
podman rmi --all --forcecommand to remove all images and containers that are using those images. -
If present, the
cnivalue in the containers.conf file for thenetwork_backendoption must be changed tonetavarkor can be unset.
-
If you upgrade from the previous RHEL versions to RHEL 10.0 or if you have a fresh installation of RHEL 10.0, the CNI is no longer available. As a result, you have to run the
-
The system connections and farm information stored in the
- The
podman-testspackage has been deprecated The
podman-testspackage has been deprecated in the AppStream repository. The package is now available in the CodeReady Linux Builder (CRB). More information about the CRB repository can be found at The CodeReady Linux Builder repository.
nodejs-18andnodejs-18-minimalare deprecatedThe
nodejs-18andnodejs-18-minimalcontainer images are now deprecated and will no longer receive feature updates. Usenodejs-22andnodejs-22-minimalinstead.Jira:RHELDOCS-20283[1]
10.5. Deprecated features identified in previous releases Copy linkLink copied to clipboard!
Review functionalities that are deprecated in earlier Red Hat Enterprise Linux versions.
10.5.1. SSSD Copy linkLink copied to clipboard!
Review functionalities deprecated for SSSD in previous Red Hat Enterprise Linux versions.
- The SMB1 protocol is deprecated in Samba
Starting with Samba 4.11, the insecure Server Message Block version 1 (SMB1) protocol is deprecated and will be removed in a future release.
To improve the security, by default, SMB1 is disabled in the Samba server and client utilities.
Jira:RHELDOCS-16612[1]
10.6. Deprecated packages Copy linkLink copied to clipboard!
Review the packages that are deprecated in Red Hat Enterprise Linux 10.2. Although these packages remain fully supported in this release, they will likely be removed in a future major version.
The support status of deprecated packages remains unchanged within RHEL 10.
The following packages have been deprecated in RHEL 10:
- daxio
- ftp
- gvisor-tap-vsock-gvforwarder
- lftp
- libpmem
- libpmem2
- libpmemblk
- libpmemlog
- libpmemobj
- libpmemobj-cpp
- libpmempool
- libslirp
- nvml
- pmempool
- pmreorder
- sdl2-compat
- vsftpd
- wget
Chapter 11. Known issues Copy linkLink copied to clipboard!
Understand how newly identified and previously known issues might affect your use of Red Hat Enterprise Linux 10.2, and how to work around them.
A known issue is listed in all future release notes until resolved, at which point it is published as a fixed issue.
11.1. Installer and image creation Copy linkLink copied to clipboard!
Review known issues for installer and image creation in Red Hat Enterprise Linux 10.2.
- Boot container installation in UEFI mode fails on systems without
/boot The installation of a bootable container image in UEFI mode fails in the absence of the separate
/bootpartition.Workaround: Ensure the Kickstart file or manual configuration includes both an EFI System partition and a distinct
/bootpartition in addition to the root (/) partition.
- Hostname resolution fails with encrypted DNS and custom CA in boot options
While using the
inst.repo=orinst.stage2=boot options in the kernel command line along with a remote installation URL, an encrypted DNS, and a custom CA certificate in the Kickstart file, the installation program attempts to download theinstall.imgstage2 image before processing the Kickstart file. Consequently, the hostname resolution fails, leading to display of some errors before successfully fetching the stage2 image. Workaround: Define the installation source in the Kickstart file instead of the kernel command line.
11.2. Security Copy linkLink copied to clipboard!
Review known issues for security in Red Hat Enterprise Linux 10.2.
rust-rpm-sequoiafails when importing OpenPGP certificates with keys disallowed bycrypto-policiesImporting OpenPGP certificates that contain keys disallowed by the system-wide cryptographic policy causes the
rust-rpm-sequoialibrary to fail. Consequently, the failure of the import prevents further operations, such as importing additional OpenPGP certificates from a single file.To work around this problem, remove the disallowed key from the file before importing the certificate bundle. As a result,
rust-rpm-sequoiadoes not fail when you import OpenPGP certificates only with keys allowed bycrypto-policies.
11.3. RHEL for Edge Copy linkLink copied to clipboard!
Review known issues for RHEL for Edge in Red Hat Enterprise Linux 10.2.
- Greenboot triggers a warning message during the first boot
When booting a system for the first time with the
greenboot-0.16.2-0package, the system might log aWARNmessage stating that boot data is unavailable. This occurs because the initial boot data has not yet been generated. This message is benign and does not affect the system’s operation or the health check process. You can safely ignore the warning during the initial boot.
11.4. Software management Copy linkLink copied to clipboard!
Review known issues for software management in Red Hat Enterprise Linux 10.2.
- DNF installs a package from a local file when the package version is excluded in
versionlock When you exclude a package version in the
versionlockDNF plugin configuration, DNF still installs the specified package version from a package local file.To work around this problem, complete the following steps:
-
Turn a directory with local packages into a local repository by using the
createrepo_ctool. - Enable the local repository in the DNF configuration.
- Install all packages by their names.
As a result, the
versionlockplugin applies to packages from the local repository and has no effect on directory with local package files.NoteConsider not installing packages by a local file path if you do not want certain package versions to be installed.
For more information, see the
dnf-versionlock(8)man page on your system.-
Turn a directory with local packages into a local repository by using the
11.5. Networking Copy linkLink copied to clipboard!
Review known issues for networking in Red Hat Enterprise Linux 10.2.
- RHEL does not contain closed-source modem unlocking tools
Federal Communications Commission (FCC) regulations require that modems in the United States must be enabled by using an unlocking tool from the modem manufacturer. RHEL does not provide these tools if they are closed-source software according to FCC regulations. However, they might be available in an unsupported third-party repository, such as RPM Fusion.
For further details, see Installing the FCC unlocking tool for modems from third-party repositories.
Jira:RHEL-100066[1]
- Preventing non-root users from creating system-wide NetworkManager connection profiles
You can set certain properties in NetworkManager connection profiles, such as
802-1x.client-cert, to a path to a certificate file. Because theNetworkManagerservice runs as therootuser, the service can access those files independent of their file permissions. This can lead to security problems in the following scenarios:A user creates a private connection profile and specifies a path to another user’s certificate file.
With NetworkManager in RHEL 10.2 and later, referring to other users' certificates in private profiles is no longer possible.
A user creates a system-wide connection profile and specifies a path to another user’s certificate.
On RHEL, users can only create system-wide profiles if they are logged in locally to the console and not remotely, such as over SSH. To not change this behavior of NetworkManager during the RHEL 10 release cycle, users can still create system-wide profiles.
To mitigate the risk, you can prevent normal users from creating system-wide connection profiles. For example, create the
/etc/polkit-1/rules.d/20-nm-non-root.rulesfile with the following content:polkit.addRule(function(action, subject) { if (action.id == "org.freedesktop.NetworkManager.settings.modify.system" && !subject.isInGroup("wheel")) { return polkit.Result.AUTH_ADMIN_KEEP; } });The setting takes effect immediately.
Jira:RHELDOCS-21618[1]
11.6. Dynamic programming languages, web and database servers Copy linkLink copied to clipboard!
Review known issues for dynamic programming languages, web and database servers in Red Hat Enterprise Linux 10.2.
- SELinux prevents replication in a Galera cluster after upgrading from MariaDB 10.11 to MariaDB 11.8
If you run a Galera cluster and upgrade MariaDB 10.11 to MariaDB 11.8, SELinux prevents replication among the cluster nodes.
There is no known workaround for the issue, while keeping SELinux in the
enforcingmode.Note that setting the SELinux mode to
permissiveis not a secure workaround, because this significantly reduces the security of your servers.
11.7. Identity Management Copy linkLink copied to clipboard!
Review known issues for Identity Management (IdM) in Red Hat Enterprise Linux 10.2.
ipa-migratedoes not migrate SSH public keysWhen migrating an Identity Management (IdM) deployment using the
ipa-migratetool, SSH public keys assigned to user accounts and ID overrides are not transferred to the destination server. As a consequence, users cannot authenticate using SSH public key authentication after migration.To work around this problem, retrieve the SSH public keys from the source server using the
ipa user-find --allorldapsearchcommands, and then re-add them on the destination server using theipa user-mod --sshpubkeycommand.
11.8. Virtualization Copy linkLink copied to clipboard!
Review known issues for virtualization in Red Hat Enterprise Linux 10.2.
- High-memory Windows guests might fail to validate with SVVP
Currently, when using the Server Virtualization Validation Program (SVVP) software to validate a Windows virtual machine (VM) with a large amount of assigned memory, the validation might fail with a
GetPhysicallyInstalledSystemMemory failederror message. As a consequence, the VM cannot be validated for SVVP support.
- VMs on IBM Z hosts sometimes fail to boot when an invalid boot device is specified
Currently, for KVM virtual machines (VMs) hosted on IBM Z systems, the boot order setting does not work consistently. If the boot device configured with
<boot order='1'/>is invalid, the next boot device specified by the boot order setting sometimes does not boot correctly. This might cause the VM to shut down or become unresponsive.Jira:RHEL-151317[1]
- Stop errors in Windows guests
Currently, in virtual machines that use Windows guest operating systems on RHEL hosts, a variety of stop errors (also known as BSOD) might occur. For details of the known errors, see List of known Windows BSOD issues on OpenShift Virtualization and RHEL KVM on Red Hat Knowledge Base. For instructions on troubleshooting the errors, see Recommendations when investigating Windows BSOD issues.
Jira:RHELDOCS-22157[1]
- Installing the VirtIO-Win bundle cannot be canceled
Currently, if you start the installation of
virtio-windrivers from the VirtIO-Win installer bundle in a Windows guest operating system, clicking theCancelbutton during the installation does not correctly stop it. The installer wizard interface displays a "Setup Failed" screen, but the drivers are installed and the IP address of the guest is reset.
- Cloning or restoring RHEL 9 virtual machines that use LVM on Nutanix AHV causes non-root partitions to disappear
When running a RHEL 9 guest operating system on a virtual machine (VM) hosted on the Nutanix AHV hypervisor, restoring the VM from a snapshot or cloning the VM currently causes non-root partitions in the VM to disappear if the guest is using Logical Volume Management (LVM). As a consequence, the following problems occur:
- After restoring the VM from a snapshot, the VM cannot boot, and instead enters emergency mode.
- A VM created by cloning cannot boot, and instead enters emergency mode.
To work around these problems, do the following in emergency mode of the VM:
Remove the LVM system devices file:
# rm /etc/lvm/devices/system.devicesRe-create LVM device settings:
# vgimportdevices -a- Reboot the VM
This makes it possible for the cloned or restored VM to boot up correctly.
Alternatively, to prevent the issue from occurring, do the following before cloning a VM or creating a VM snapshot:
-
Uncomment the
use_devicesfile = 0line in the/etc/lvm/lvm.conffile. Regenerate initramfs. To do so, use the following steps in the VM and replace
<kernelVersion>with the full version of the kernel that you want to rebuild.Back up the current
initramfsconfiguration:# cp /boot/initramfs-<kernelVersion>.img /boot/initramfs-<kernelVersion>.img.bakBuild
initramfs:# dracut -f /boot/initramfs-<kernelVersion>.img <kernelVersion>
- Reboot the VM to verify successful boot.
Jira:RHELPLAN-114103[1]
11.9. RHEL in cloud environments Copy linkLink copied to clipboard!
Review known issues for RHEL in cloud environments in Red Hat Enterprise Linux 10.2.
kdumpfails to complete on the Azure Confidential VMsWhen you experience a kernel crash on a Red Hat Enterprise Linux VM on the Azure Confidential VM instances, in this case DCv5 and ECv5 series, the
kdumpprocess may not complete and the VM becomes unresponsive. As a result, after a forced reboot, there is avmcore-incompletefile.Jira:RHEL-75576[1]
11.10. Containers Copy linkLink copied to clipboard!
Review known issues for containers in Red Hat Enterprise Linux 10.2.
- EUS repositories are not enabled by default
RHEL 10 systems target the major release version, such as RHEL 10. Standard repositories remain active by default, preventing the automatic enablement and correct path resolution for Extended Update Support (EUS) repositories. Consequently, systems can not receive the expected EUS-specific software updates.
If the release version is not set, DNF attempts to pull metadata from a major-version URL such as
…/rhel10/10/…, which does not exist for EUS, resulting in a404 Not Founderror during the metadata sync.To work around this problem, follow these steps:
Override the default DNF variable to point to the specific EUS minor version, such as
10.2. This ensures the repository URL construction is accurate.# Set releasever to EUS version (mandatory) RUN echo "10.0" > /etc/dnf/vars/releaseverAfter setting
releasever, use one of the following two approaches to enable EUS:Command-line configuration:
Manually disable the standard repositories and enable the EUS versions.
# dnf config-manager --set-disabled <standard_repo_id> # dnf config-manager --set-enabled <eus_repo_id>
Manual File editing:
-
Run the
dnf repolistcommand to trigger therhsm dnfplugin to generate/etc/yum.repos.d/redhat.repodynamically. -
Edit the relevant
.repofiles in the/etc/yum.repos.d/directory to setenabled=0for standard repositories andenabled=1for EUS repositories.
-
Run the
Jira:RHELDOCS-21758[1]
11.11. Known issues identified in RHEL 10.1 Copy linkLink copied to clipboard!
Review known issues identified in Red Hat Enterprise Linux 10.1 that might affect your use of Red Hat Enterprise Linux 10.2.
11.11.1. Installer and image creation Copy linkLink copied to clipboard!
Review known issues for installer and image creation identified in Red Hat Enterprise Linux 10.1.
- Crash dumps are not performed by default
By default, crash dumps do not occur for default installation methods using RHEL Image Mode, because the
crashkernel=kernel argument is not set. To work around this problem, set acrashkernel=kernel argument at build or during installation time.
11.11.2. Security Copy linkLink copied to clipboard!
Review known issues for security identified in Red Hat Enterprise Linux 10.1.
- Containers fail to start when
fapolicydis running The
fapolicydframework does not fully support namespaces and containers. As a consequence, containers fail to start whenfapolicydis running.To work around this problem, create the
/etc/fapolicyd/rules.d/25-runc.rulesfile with the following content:allow perm=any pattern=ld_so exe=/usr/bin/runc : all allow perm=any uid=0 pattern=ld_so exe=/runc : trust=1Save the file, run the
fagenrulesscript, and enter thefapolicyd-cli --reload-rulescommand to apply the changes. Alternatively, you can remove thetmpfsvalue from thewatch_fsoption in the/etc/fapolicyd/fapolicyd.conffile and restart thefapolicydservice by using thesystemctl restart fapolicydcommand, but this lowers the system security.As a result, you can use
fapolicydon systems running containers after you apply the previously described workaround. This preserves the enhanced security provided byfapolicydand helps comply with configuration standards such as the Security Technical Implementation Guide (STIG) from the Defense Information Systems Agency (DISA).
sqcannot generate keys in FIPS modeThe
squtility from the Sequoia PGP toolset uses the deprecated OpenSSL API for key generation. Consequently, you cannot generate keys withsqon the system running in FIPS mode.
- GnuTLS cannot convert ML-DSA private keys to public ones
GnuTLS lacks an algorithm to convert a private ML-DSA key in the expanded form to a public ML-DSA key. Consequently, operations requiring both keys fail when only the expanded private key is provided.
Workaround: Use the
opensslcommand to convert such a private key to a public key:openssl dsa -in <private_key> -pubout -out <public_key>. As a result, the public key is available for use in other operations.
- PQC for
rpm-sequoiais always enabled incrypto-policies In RHEL 10.1, the
rpm-sequoiafails to verify dual-signed RPM packages if one of the algorithms used for signing is disabled in system-wide cryptographic policies. This problem is common on systems that have post-quantum (PQ) algorithms disabled and cannot install packages signed with both classic and PQ cryptography.To prevent breaking the system, the enablement of PQ algorithms for
rpm-sequoiais hard-coded on thecrypto-policieslevel. As a result, PQ algorithms forrpm-sequoiaare enabled regardless of any settings incrypto-policies.
11.11.3. Shells and command-line tools Copy linkLink copied to clipboard!
Review known issues for shells and command-line tools identified in Red Hat Enterprise Linux 10.1.
- Hot-plugged memory is not available to VMs running on IBM Z by default
RHEL provides default udev rules that automatically configure memory onlining when you hot plug memory to virtual machines (VMs) with
virtio-mem. However, current udev rules do not include VMs running on IBM Z. As a consequence, after hot-plugging memory to VMs running on IBM Z withvirtio-mem, the memory is not immediately available in the VM.To work around this problem, set the
memhp_default_state=onlinekernel parameter in the VM and reboot it. For example:# grubby --update-kernel=ALL --args=memhp_default_state=onlineAs a result, the hot-plugged memory is available in the VM.
11.11.4. Networking Copy linkLink copied to clipboard!
Review known issues for networking identified in Red Hat Enterprise Linux 10.1.
- Inbound IPsec cryptographic offload can fail in SR-IOV
switchdevmode with SMFS If you configure IPsec cryptographic offload on a Mellanox ConnectX network interface controller (NIC) in Single-Root I/O Virtualization (SR-IOV)
switchdevmode with the flow steering mode set to Software Managed Flow Steering (SMFS), the hardware offload for inbound IPsec Security Associations (SAs) fails. In this case, theip xfrm state dir in showcommand returns the following error:Error: mlx5_core: Device failed to offload this state.To work around this problem, switch to Device-Managed Flow Steering (DMFS) before switching the device to
switchdevmode. By using DMFS, the inbound IPsec state can successfully be offloaded to the hardware.Jira:RHEL-114861[1]
11.11.5. File systems and storage Copy linkLink copied to clipboard!
Review known issues for file systems and storage identified in Red Hat Enterprise Linux 10.1.
- iSCSI-backed logical volumes fail to activate after a reboot
During installation, a logical volume spanning a local disk and an iSCSI device can fail to activate the iSCSI device in the installed system. This occurs where a non-root filesystem LVM logical volume is located both on a local disk and on an iSCSI device, which results in the iSCSI device not getting configured with
node.startup=onbootby the installation program. As a result, the system cannot access the volume after reboot, because it doesn’t get automatically activated upon boot.Workaround: Manually create the logical volume after the installation or update the iSCSI node configuration by setting
node.startup=automaticin the relevant file in the/var/lib/iscsi/nodes/directory.
11.11.6. Dynamic programming languages, web and database servers Copy linkLink copied to clipboard!
Review known issues for dynamic programming languages, web and database servers identified in Red Hat Enterprise Linux 10.1.
- MySQL does not work with RHEL in image mode
The MySQL database management systems in RHEL 10 do not use the
sysusers.ddirectories to populate users and working directories. Additionally, MySQL also does not use thetmpfiles.ddirectory. As a consequence, the database user can be missing and MySQL is not able to initialize because its working directory is missing. There is currently no workaround for this issue.Jira:RHELDOCS-21374[1]
11.11.7. Desktop Copy linkLink copied to clipboard!
Review known issues for desktop identified in Red Hat Enterprise Linux 10.1.
- Plymouth duplicates log entries of the kernel log ring buffer
Plymouth, an application which provides a graphical boot experience for Red Hat Enterprise Linux, has a "console syndication" feature that outputs log messages to all configured consoles during boot. The kernel can natively output log messages only to the last configured console. In the default configuration, the kernel is muted, but removing the
quietargument from the kernel command line unmutes the kernel, and causes both Plymouth and the kernel to send the boot log messages to the last-configured console. As a result, log messages might be duplicated on the last-configured console (for example ttyS0). Plymouth further duplicates these log entries by replaying the entire contents of the kernel log ring buffer during boot and shutdown. To work around this problem, disable Plymouth.Jira:RHEL-60198[1]
11.11.8. Red Hat Enterprise Linux System Roles Copy linkLink copied to clipboard!
Review known issues for Red Hat Enterprise Linux system roles identified in Red Hat Enterprise Linux 10.1.
- Ansible
rpm_keymodules fail to work with the OpenPGP v6RPM-GPG-KEY-redhat-releasekey RHEL 10.1 uses the Red Hat RPM signing key extended with a post-quantum public key and stored in the
/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-releasefile in the OpenPGP v6 format. Because the Ansiblerpm_keymodules use the GnuPG tools, which cannot handle post-quantum keys and OpenPGP v6, the modules fail to work with this key.
11.11.9. Virtualization Copy linkLink copied to clipboard!
Review known issues for virtualization identified in Red Hat Enterprise Linux 10.1.
- Windows VMs might become unresponsive due to storage errors
On virtual machines (VMs) that use Windows guest operating systems, the system in some cases becomes unresponsive when under high I/O load. When this happens, the system logs a
viostor Reset to device, \Device\RaidPort3, was issuederror. There is currently no workaround for this issue.Jira:RHEL-1609[1]
- Windows 10 VMs with certain PCI devices might become unresponsive on boot
Currently, a virtual machine (VM) that uses a Windows 10 guest operating system might become unresponsive during boot if a
virtio-win-scsiPCI device with a local disk back end is attached to the VM.Workaround: Boot the VM with the
multi_queueoption enabled.Jira:RHEL-1084[1]
- VMs with SEV-SNP enabled fail to boot with
arch-capabilities=on Virtual machines (VMs) with SEV-SNP enabled fail to boot when using the
arch-capabilities=onCPU flag.To work around this problem, disable the
arch-capabilitiesfeature in the CPU section of the VM’s configuration:<cpu mode='host-passthrough' check='none'> <feature name='arch-capabilities' policy='disable'/> </cpu>Jira:RHEL-100313[1]
11.11.10. RHEL Lightspeed Copy linkLink copied to clipboard!
Review known issues for RHEL Lightspeed identified in Red Hat Enterprise Linux 10.1.
- The command-line assistant cannot verify the Satellite server certificate
The command-line assistant does not recognize the Satellite certificate authority (CA) certificate for the Red Hat Satellite server. The Satellite CA certificate is used to issue and sign certificates for hosts that register with and are managed by Satellite. As a consequence, the command-line assistant cannot establish secure connections to the Satellite server, which prevents it from functioning correctly.
Work around: copy the Satellite CA certificate to the system trust store and update the CA trust database:
$ sudo cp /etc/rhsm/ca/katello* /etc/pki/ca-trust/source/anchors/ $ sudo update-ca-trustJira:RHELDOCS-21325[1]
- Security risk when using unsupported AI models
Do not use unsupported models. Changing the RHEL Offline Container model to unsupported models might allow the execution of arbitrary code or compromise the integrity of Red Hat Enterprise Linux (RHEL).
No known workaround exists.
Jira:RHELDOCS-21726[1]
11.12. Known issues identified in RHEL 10.0 Copy linkLink copied to clipboard!
Review known issues identified in Red Hat Enterprise Linux 10.0 that might affect your use of Red Hat Enterprise Linux 10.2.
11.12.1. Installer and image creation Copy linkLink copied to clipboard!
Review known issues for installer and image creation identified in Red Hat Enterprise Linux 10.0.
- Podman and bootc do not share the same registry login process
Podman and
bootcuse different registry login processes when pulling images. As a consequence, if you login to an image by using Podman, logging to a registry forbootcwill not work on that image. When you install an image mode for RHEL system, and login to registry.redhat.io by using the following command:# podman login registry.redhat.io <username_password>And then you attempt to switch to the
registry.redhat.io/rhel9/rhel-bootcimage with the following command:# bootc switch registry.redhat.io/rhel9/rhel-bootc:9.4You should be able to see the following message:
Queued for next boot: registry.redhat.io/rhel9/rhel-bootc:9.4However, an error is displayed:
ERROR Switching: Pulling: Creating importer: Failed to invoke skopeo proxy method OpenImage: remote error: unable to retrieve auth token: invalid username/password: unauthorized: Please login to the Red Hat Registry using your Customer Portal credentials. Further instructions can be found here: https://access.redhat.com/RegistryAuthenticationWorkaround: Follow the steps Configuring container pull secrets to use authenticated registries with
bootc.Jira:RHELDOCS-18471[1]
cloud-initgrowpart skips with composefs is enabledWhen composefs is enabled, if you generate an image from the generic base image, then the rootfs will not grow the filesystem, prompting an error similar to:
2024-04-30 17:27:53,543 - cc_growpart.py[DEBUG]: '/' SKIPPED: stat of 'overlay' failed: [Errno 2] No such file or directory: 'overlay'Workaround: You can add a custom growpart, by specifying the
rootfsdefault size in the container, instead of dynamically choosing 100G at instance creation time to be able to write a partitioning config in the container.
- Unable to build ISOs from a signed container
Trying to build an ISO disk image from a GPG or a simple signed container results in an error, similar to the following:
manifest - failed Failed Error: cannot run osbuild: running osbuild failed: exit status 1 2024/04/23 10:56:48 error: cannot run osbuild: running osbuild failed: exit status 1This happens because the system fails to get the image source signatures.
Workaround: You can either remove the signature from the container image or build a derived container image. For example, to remove the signature, you can run the following command:
$ sudo skopeo copy --remove-signatures containers-storage:registry.redhat.io/rhel9/rhel-bootc:9.4 containers-storage:registry.redhat.io/rhel9/rhel-bootc:9.4 $ sudo podman run \ --rm \ -it \ --privileged \ --pull=newer \ --security-opt label=type:unconfined_t \ -v /var/lib/containers/storage:/var/lib/containers/storage \ -v ~/images/iso:/output \ quay.io/centos-bootc/bootc-image-builder \ --type iso --local \ registry.redhat.io/rhel9/rhel-bootc:9.4To build a derived container image, and avoid adding a simple GPG signatures to it, see the Signing container images product documentation.
- The installation program becomes unresponsive during final RPM installation stage
An installation program might become unresponsive during the RPM installation process at the final stage. Before the issue occurs, you might see the repeated
Configuring rootfiles.noarchmessages. Workaround: Restart the installation process.Jira:RHEL-67865[1]
- Disabled keyboard layout switching by using shortcut during installation
To prevent confusion caused by a broken keyboard shortcut to change keyboard layout, this feature has been disabled in Anaconda. You cannot change keyboard layouts by using shortcuts during installation. Workaround: Use the keyboard layout icon on the top bar to switch layouts.
- The installation program now respects the
BOOTIFboot argument Previously, the RHEL installation program ignored the
BOOTIF=<MAC>boot argument and activated all the available network interfaces. With this fix, the installation program now properly processes theBOOTIFargument and ensures that only the designated network device is activated during the installation process.Jira:RHEL-69400[1]
- Bonding device with LACP takes longer to become operational, causing subscription failures
When configuring a bonding device with LACP by using both kernel command-line boot options and a Kickstart file, the connection is created during the
initramfsstage but reactivated in Anaconda. As a consequence, it causes a temporary disruption that leads to system subscription failure through therhsmKickstart command.Workaround: Add
--no-activateto the Kickstart network configuration to keep the network operational. As a result, the system subscription completes successfully.Jira:RHELDOCS-19853[1]
- The
servicesKickstart command fails to disable thefirewalldservice A bug in Anaconda prevents the
services --disabled=firewalldcommand from disabling thefirewalldservice in Kickstart. Workaround: Use thefirewall --disabledcommand instead. As a result, thefirewalldservice is disabled properly.
- The USB CD-ROM drive is not available as an installation source in Anaconda
Installation fails when the USB CD-ROM drive is the source for it and the Kickstart
ignoredisk --only-use=command is specified. In this case, Anaconda cannot find and use this source disk.Workaround: Use the
harddrive --partition=sdX --dir=/command to install from USB CD-ROM drive. As a result, the installation does not fail.
- Insufficient disk space can cause deployment failure
Deploying a bootc container image on a package mode system without enough free disk space can result in installation errors and prevent the system from booting. Ensure adequate disk space is available for the image to install and adjust the provision logical volume before deployment.
Jira:RHELDOCS-19948[1]
- Anaconda might not work correctly on
s390xandppc64learchitectures Image mode for RHEL supports
pp64leands390xarchitectures besides the already supportedx86_64and ARM architectures. However, Anaconda might not function correctly on s390x and ppc64le architectures.Jira:RHELDOCS-19496[1]
- RHEL images on Azure marked as LVM require default layout resizing
When using
system-reinstall-bootcorbootc installon Azure, RHEL images marked as LVM will require resizing the default layout.Workaround: Use RHEL images labeled as RAW. This does not require resizing the default layout.
Jira:RHELDOCS-19945[1]
- Installation fails due to busy partitions
A race condition in the storage subsystem causes the installation to fail when writing the partition table to disk. The system displays the following error message:
Partition(s) have been written, but we have been unable to inform the kernel of the change.This error occurs because the partitions are reported as busy and the changes cannot be synchronized. To work around this problem, restart the installation.
11.12.2. Security Copy linkLink copied to clipboard!
Review known issues for security identified in Red Hat Enterprise Linux 10.0.
- SELinux policy rules for four
libvirtservices temporarily changed into permissive mode Previously, the SELinux policy was changed to reflect the replacement of the legacy monolithic
libvirtddaemon with a new set of modular daemons. Because this change requires testing of many scenarios, the following services have been temporarily changed into SELinux permissive mode:-
virtqemud -
virtvboxd -
virtstoraged -
virtsecretd
To prevent harmless AVC denials,
dontauditrules have been added to the SELinux policy for these services.Jira:RHEL-77808[1]
-
- Cryptographic tokens do not work in FIPS mode with
pkcs11-provider When the system runs in FIPS mode, the
pkcs11-providerOpenSSL provider does not work correctly and the OpenSSL TLS toolkit falls back to the default provider. Consequently, OpenSSL fails to load PKCS #11 keys, and cryptographic tokens do not work in this scenario.To work around this problem, set the
pkcs11-module-assume-fips = trueparameter in the PKCS #11 section of theopenssl.cnffile. See thepkcs11-provider(7)man page on your system for more information. With this configuration change,pkcs11-providerworks in FIPS mode.
- OpenSSL stores ML-KEM and ML-DSA private keys in standard formats
In RHEL 10.0, the open quantum-safe provider for OpenSSL (
oqsprovider) generated private keys in a format that did not conform to any of the file formats proposed by the IETF LAMPS work group. Consequently, the key files were unreadable by other applications that follow the IETF standard and could not be handled by applications that require providing the key in the seed format for import. With this update, OpenSSL no longer usesoqsproviderand its post-quantum cryptography (PQC) implementation generates the keys in standard formats. As a result, you can use OpenSSL ML-KEM and ML-DSA keys for storing long-term secrets.
11.12.3. Shells and command-line tools Copy linkLink copied to clipboard!
Review known issues for shells and command-line tools identified in Red Hat Enterprise Linux 10.0.
unamecommand produces an unknown outputThe
unamecommand displays unknown output with flags--hardware-platformand--processor. In the previous RHEL versions,uname -ianduname -pwere aliases foruname -mand are not portable even across GNU or Linux distributions.As a workaround, you can use the
-mflag instead of the-iand-pflags.
11.12.4. Infrastructure services Copy linkLink copied to clipboard!
Review known issues for infrastructure services identified in Red Hat Enterprise Linux 10.0.
- Nginx does not support PKCS #11 and TPM
The OpenSSL engines API was deprecated in RHEL 9 and removed from Nginx in RHEL 10. The corresponding functionality using the current OpenSSL providers API is not yet available. As a consequence, the Nginx HTTP server does not work with hardware security modules (HSMs) through PKCS #11 and Trusted Platform Module (TPM) devices.
- Using the incorrect Perl database driver for MariaDB and MySQL can lead to unexpected results
The MariaDB database is a fork of MySQL. Over time, these services developed independently and are no longer fully compatible. These differences also affect the Perl database drivers. Consequently, if you use the
DBD::mysqldriver in a Perl application to connect to a MariaDB database, or theDBD::MariaDBdriver to connect to a MySQL database, operations can lead to unexpected results. For example, the driver can return incorrect data from read operations. To avoid such problems, use the Perl driver in your application that matches the database service.Red Hat only supports the following scenarios:
-
The Perl
DBD::MariaDBdriver with a MariaDB database -
The Perl
DBD::mysqldriver with a MySQL database
Note that RHEL 8 contained only the
DBD::mysqldriver. If you plan to upgrade to RHEL 9 and then to RHEL 10 and your application uses a MariaDB database, install theperl-DBD-MariaDBpackage after the upgrade and modify your application to use theDBD::MariaDBdriver.For further details, see the Red Hat Knowledgebase solution Support of MariaDB/MySQL cross-database connection from Perl db drivers.
Jira:RHELDOCS-19770[1]
-
The Perl
11.12.5. Networking Copy linkLink copied to clipboard!
Review known issues for networking identified in Red Hat Enterprise Linux 10.0.
- VMware vCenter now correctly removes a SATA disk from a running RHEL VM
When using the VMware vCenter interface to remove a SATA disk from a running RHEL 10 guest on the VMware ESXi hypervisor, the disk previously did not get removed fully. It stopped being functional and disappeared from the guest in the vCenter interface, but the SCSI interface still detected the disk as attached in the guest. This update fixes the issue, and the SATA disk is fully removed in the described scenario.
Jira:RHEL-79913[1]
11.12.6. High availability and clusters Copy linkLink copied to clipboard!
Review known issues for high availability and clusters identified in Red Hat Enterprise Linux 10.0.
- ACL roles should not reference location constraints with two rules
In Red Hat Enterprise Linux 10, more than one top-level rule in a location constraint is not supported. When upgrading from RHEL 9 to RHEL 10, verify that any ACL roles you have configured do not reference a location constraint with two rules and are still valid.
11.12.7. Compilers and development tools Copy linkLink copied to clipboard!
Review known issues for compilers and development tools identified in Red Hat Enterprise Linux 10.0.
- The new version of TBB is incompatible
RHEL 10 includes the Threading Building Blocks (TBB) library version 2021.11.0, which is incompatible with the versions distributed with previous releases of RHEL. You must rebuild applications that use TBB to make them run on RHEL 10.
11.12.8. Identity Management Copy linkLink copied to clipboard!
Review known issues for Identity Management (IdM) identified in Red Hat Enterprise Linux 10.0.
- IdM in FIPS mode does not support using the NTLMSSP protocol to establish a two-way cross-forest trust
Establishing a two-way cross-forest trust between Active Directory (AD) and Identity Management (IdM) with FIPS mode enabled fails because the New Technology LAN Manager Security Support Provider (NTLMSSP) authentication is not FIPS-compliant. IdM in FIPS mode does not accept the RC4 NTLM hash that the AD domain controller uses when attempting to authenticate.
Jira:RHEL-12154[1]
- Installing a RHEL 7 IdM client with a RHEL 10 IdM server in FIPS mode fails due to EMS enforcement
The TLS
Extended Master Secret(EMS) extension (RFC 7627) is now mandatory for TLS 1.2 connections on FIPS-enabled RHEL 10 systems. This is in accordance with FIPS-140-3 requirements. However, theopensslversion available in RHEL 7.9 and lower does not support EMS. In consequence, installing a RHEL 7 Identity Management (IdM) client with a FIPS-enabled IdM server running on RHEL 10 fails.Workaround: Upgrade the host to RHEL 8 or later before installing an IdM client on it.
Jira:RHELDOCS-19015[1]
ldapmodifydoes not delete a single specific value from any attribute incn=configCurrently, when you try to delete a value from any attribute in
cn=config, the value remains in the attribute and the server might require a restart to fully remove it.Workaround: Remove the entire attribute, including all its values, by performing a modify operation without specifying any values. Then re-add the values you need. Alternatively, use the following
dsconfcommand to remove a specific value without a server restart:# dsconf <instance_name> config delete <attribute_name>=<undesired_value>
11.12.9. SSSD Copy linkLink copied to clipboard!
Review known issues for SSSD identified in Red Hat Enterprise Linux 10.0.
- SSSD retrieves incomplete list of members if the group size exceeds 1500 members
During the integration of SSSD with Active Directory, SSSD retrieves incomplete group member lists when the group size exceeds 1500 members. This issue occurs because Active Directory’s MaxValRange policy, which restricts the number of members retrievable in a single query, is set to 1500 by default.
Workaround: Change the MaxValRange setting in Active Directory to accommodate larger group sizes.
Jira:RHELDOCS-19603[1]
11.12.10. Desktop Copy linkLink copied to clipboard!
Review known issues for desktop identified in Red Hat Enterprise Linux 10.0.
- Standard mouse cursor is offset in VMs when using Mutter
When you use a standard mouse within a virtual machine (VM) configuration in the Mutter compositing window manager, you might notice an offset between the physical mouse cursor and the actual pointer within the virtual environment. The actual pointer might not even be visible in the virtual environment.
Workaround: If your scenario requires precise input, use a tablet as an input device in the VM configuration.
11.12.11. Graphics infrastructures Copy linkLink copied to clipboard!
Review known issues for graphics infrastructures identified in Red Hat Enterprise Linux 10.0.
- Standard mouse cursor is offset in VMs when using Mutter
When you use a standard mouse within a virtual machine (VM) configuration in the Mutter compositing window manager, you might notice an offset between the physical mouse cursor and the actual pointer within the virtual environment. The actual pointer might not even be visible in the virtual environment.
Workaround: If your scenario requires precise input, use a tablet as an input device in the VM configuration.
11.12.12. The web console Copy linkLink copied to clipboard!
Review known issues for the web console identified in Red Hat Enterprise Linux 10.0.
- VNC console in the RHEL web console does not work correctly on ARM64
Currently, when you import a virtual machine (VM) in the RHEL web console on ARM64 architecture and then you try to interact with it in the VNC console, the console does not react to your input.
Additionally, when you create a VM in the web console on ARM64 architecture, the VNC console does not display the last lines of your input.
Jira:RHEL-31993[1]
11.12.13. Red Hat Enterprise Linux System Roles Copy linkLink copied to clipboard!
Review known issues for Red Hat Enterprise Linux system roles identified in Red Hat Enterprise Linux 10.0.
ansible-coredoes not installsshpassas a dependencyThe
ansible-corepackage does not install thesshpasspackage as a dependency. Consequently, you cannot use Ansible to manage systems over SSH with an SSH password.Workaround: On the control node, manually install
sshpassafter you installansible-core. As a result, you can use Ansible in the scenario described above.Jira:RHEL-86829[1]
11.12.14. Virtualization Copy linkLink copied to clipboard!
Review known issues for virtualization identified in Red Hat Enterprise Linux 10.0.
- QEMU no longer prevents using SEV-SNP
Previously, when attempting to start a virtual machine (VM) with AMD SEV-SNP enabled, QEMU checked the incorrect capability of KVM, and the guest failed to start. As a consequence, running VMs with AMD SEV-SNP configured was not possible with RHEL10. This problem has been fixed, and running VMs with SEV-SNP works as expected now.
Jira:RHEL-58928[1]
- Network boot for VMs now works correctly without an RNG device
Previously, when a virtual machine (VM) did not have an RNG device configured and its CPU model did not support the RDRAND feature, it was not possible to boot the VM from the network. With this update, the problem has been fixed, and VMs that do not support RDRAND can boot from the network even without an RNG device configured.
Note, however, that adding an RNG device is highly encouraged for VMs that use a CPU model that does not support RDRAND, in order to increase security when booting from the network.
- RHEL 10 guests no longer crash on restart in Google Cloud and Alibaba
When using a RHEL 10.0 instance on Google Cloud or the Alibaba Cloud, restarting the instance previously caused a kernel panic in the guest operating system if the
virtio-netdriver was in use. This issue has been fixed and RHEL 10 guests no longer crash in the described scenario.Jira:RHEL-56981[1]
- Secure Execution VMs can now boot with file-backed memory backing
Previously, if you configured a virtual machine (VM) with enabled Secure Execution to use file-backed memory backing, the VM failed to boot, and instead displayed a
Protected boot has failederror. Now, the VM boots as expected.
- A virtual machine with a large amount of bootable data disks might fail to start
If you attempt to start a virtual machine (VM) with a large amount of bootable data disks, the VM might fail to boot with this error:
Something has gone seriously wrong: import_mok_state() failed: Volume FullWorkaround: Decrease the number of bootable data disks and use one system disk. To ensure the system disk is first in the boot order, add
boot order=1to the device definition of the system disk in the XML configuration. For example:<disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='/path/to/disk.qcow2'/> <target dev='vda' bus='virtio'/> <boot order='1'/> </disk>Set boot order only for the system disk.
- VMs with large memory can now boot correctly on SEV-SNP host with AMD Genoa CPUs
Previously, virtual machines (VMs) could not boot on hosts that used a 4th Generation AMD EPYC processor (also known as Genoa) and had the AMD Secure Encrypted Virtualization with Secure Nested Paging (SEV-SNP) feature enabled. Instead of booting, a kernel panic occurred in the VM. This issue has now been fixed.
Jira:RHEL-32892[1]
- The virtio balloon driver sometimes does not work on Windows 10 and Windows 11 VMs
Under certain circumstances, the
virtio-balloondriver does not work correctly on virtual machines (VMs) that use a Windows 10 or Windows 11 guest operating system. As a consequence, such VMs might not use their assigned memory efficiently.
- Windows VM with VBS and IOMMU device fails to boot
When you boot a Windows VM with Virtualization Based Security (VBS) enabled and an Input-Output Memory Management Unit (IOMMU) device by using the
qemu-kvmutility, the booting sequence only shows the boot screen, resulting in an incomplete booting process.Workaround: Ensure the VM domain XML is configured as below:
<features> <ioapic driver='qemu'/> </features> <devices> <iommu model='intel'> <driver intremap='on' eim='off' aw_bits='48'/> <alias name='iommu0'/> </iommu> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/> <driver iommu='on' ats='on'/> </memballoon> </devices>Otherwise, the Windows VM cannot boot.
Jira:RHEL-45585[1]
- Hot-plugging vCPUs and memory to Windows guests with VBS does not work
Currently, Windows Virtualization-based Security (VBS) is not compatible with hot-plugging CPU and memory resources. As a consequence, attempting to attach memory or vCPUs to a running Windows virtual machine (VM) with VBS enabled only adds the resources to the VM after the guest system is restarted.
Jira:RHEL-66229, Jira:RHELDOCS-19066
- VMs with 5-level page merging and a lot of memory sometimes fail to start
VMs with the following configuration fail to boot if you set the
host-phys-bits-limitparameter to49or more:- The VM has more than 1 TB of assigned memory
- The VM uses the 5-level page merging feature
- The host uses System Management Mode (SMM) in its firmware
Instead, attempting to boot the VM fails with
ERROR: Out of aligned pages.Workaround: Set the
host-phys-bits-limitparameter to 48 or less.
- Enabling 3D support no longer prevents installing a RHEL 10 guest on ESXi
Prior to this update, if you selected the Enable 3D support option in VMware ESXI for installing a RHEL 10 guest operating system, the installation did not start correctly, and instead showed a blank screen. This issue has been fixed, and you can now install RHEL 10 guests in the described scenario.
Jira:RHEL-88668[1]
11.12.15. RHEL in cloud environments Copy linkLink copied to clipboard!
Review known issues for RHEL in cloud environments identified in Red Hat Enterprise Linux 10.0.
- RDMA devices currently do not work on vSphere
When using a RHEL 10 instance on the VMware vSphere platform, the
vmw_pvrdmamodule currently does not install properly. As a consequence, VMware paravirtual remote direct memory access (PVRDMA) devices do not work on the affected instances.Jira:RHEL-41133[1]
- The leapp upgrade fails when upgrading from RHEL 9.6 to RHEL 10.0 for the cloud-init network configuration
If you deploy RHEL 9.6 with the
cloud-initdefault configuration and withsysconfigas the default network configuration directory, thesysconfigconfiguration files do not support theifcfglegacy format for RHEL 10.0. Consequently, theleappupgrade fails when upgrading from RHEL 9.6 to RHEL 10.0 for the legacy network configuration files, such as ifcfg-<enp1s0>.Workaround: Convert the
sysconfigconfiguration files into the NetworkManager nativekeyfileformat:Modify the connection:
# nmcli connection modify "System <enp1s0>" connection.id "cloud-init <enp1s0>"Migrate the connection:
# nmcli connection migrate /etc/sysconfig/network-scripts/ifcfg-<enp1s0>Move the connection profile:
# sudo mv /etc/NetworkManager/system-connections/"cloud-init <enp1s0>.nmconnection" /etc/NetworkManager/system-connections/cloud-init-<enp1s0>.nmconnectionReload the network connection settings:
# nmcli conn reload
As a result, the leapp upgrade from RHEL 9.6 to RHEL 10.0 now works with the updated configuration.
Jira:RHEL-82209[1]
- Upgrading a RHEL 9.6 guest on VMware ESXi to RHEL 10.0 causes
cloud-initto rewrite the network configuration After a upgrading a RHEL guest on the VMware ESXi hypervisor from RHEL 9.6 to RHEL 10.0, the
cloud-inittool currently cannot detect the VMware data source and cannot restore its configuration from the cache. As a consequence,cloud-initreverts to theNonedata source, and rewrites the network configuration of the guest.Workaround: Remove the
disable_vmware_customizationflag from the/etc/cloud/cloud.cfgfile before you reboot the guest during the upgrade process. As a result, the upgraded guest will retain its previous network configuration.Jira:RHEL-82210[1]
- BIOS or UEFI supported Hyper-V Windows Server 2016 VM fails to boot if a host uses the AMD EPYC CPU processor
With the Hyper-V enabled setting, Hyper-V Windows Server 2016 VM fails to boot on the AMD EPYC CPU host.
Workaround: Check for the following log message:
kvm: Booting SMP Windows KVM VM with !XSAVES && XSAVEC. If it fails to boot try disabling XSAVEC in the VM config.And try adding
xsavec=offto-cpu cmdlineto boot Hyper-V Windows Server 2016 VM.Jira:RHEL-38957[1]
11.12.16. Containers Copy linkLink copied to clipboard!
Review known issues for containers identified in Red Hat Enterprise Linux 10.0.
- FIPS bootc image creation fails on FIPS enabled host
Building a disk image on a host by using Podman with enabled the FIPS mode fails with the exit code 3 because of the update-crypto-policies package:
# Enable the FIPS crypto policy # crypto-policies-scripts is not installed by default in RHEL-10 RUN dnf install -y crypto-policies-scripts && update-crypto-policies --no-reload --set FIPSWorkaround: Build the bootc image with FIPS mode disabled.
11.12.17. RHEL Lightspeed Copy linkLink copied to clipboard!
Review known issues for RHEL Lightspeed identified in Red Hat Enterprise Linux 10.0.
- Command-line assistant configuration file changes are not applied immediately
When making changes in the
etc/xdg/command-line-assistant/config.tomlconfiguration file, it takes around 30 to 60 seconds for the command-line assistant daemon to recognize the changes, instead of applying the changes immediately. The command-line assistant is also missing thereloadfunctionality.Workaround: Follow the steps:
-
Make the changes that you need to the
config.tomlconfiguration file. Run the following command:
# systemctl restart clad
Jira:RHELDOCS-19734[1]
-
Make the changes that you need to the
11.13. Known issues identified in previous releases Copy linkLink copied to clipboard!
Review known issues identified in earlier Red Hat Enterprise Linux versions that might affect your use of Red Hat Enterprise Linux 10.2.
11.13.1. Networking Copy linkLink copied to clipboard!
Review known issues for networking identified in previous Red Hat Enterprise Linux versions.
- Failure to update the session key causes the connection to break
Kernel Transport Layer Security (kTLS) protocol does not support updating the session key, which is used by the symmetric cipher. Consequently, the user cannot update the key, which causes a connection break.
Workaround: Disable kTLS. As a result, with the workaround, it is possible to successfully update the session key.
Jira:RHELDOCS-20686[1]
- kTLS does not support offloading of TLS 1.3 to NICs
Kernel Transport Layer Security (kTLS) does not support offloading of TLS 1.3 to NICs. Consequently, software encryption is used with TLS 1.3 even when the NICs support TLS offload.
Workaround: Disable TLS 1.3 if offload is required. As a result, you can offload only TLS 1.2. When TLS 1.3 is in use, there is lower performance, since TLS 1.3 cannot be offloaded.
Jira:RHELDOCS-20687[1]
11.13.2. Virtualization Copy linkLink copied to clipboard!
Review known issues for virtualization identified in previous Red Hat Enterprise Linux versions.
- The
Extended Master SecretTLS Extension is now enforced on FIPS-enabled systems With the release of the RHSA-2023:3722 advisory, the TLS
Extended Master Secret(EMS) extension (RFC 7627) is mandatory for TLS 1.2 connections on FIPS-enabled RHEL 9 systems. This is in accordance with FIPS-140-3 requirements. TLS 1.3 is not affected.Legacy clients that do not support EMS or TLS 1.3 now cannot connect to FIPS servers running on RHEL 9 and 10. Similarly, RHEL 9 and 10 clients in FIPS mode cannot connect to servers that only support TLS 1.2 without EMS. This in practice means that these clients cannot connect to servers on RHEL 6, RHEL 7 and non-RHEL legacy operating systems. This is because the legacy 1.0.x versions of OpenSSL do not support EMS or TLS 1.3.
In addition, connecting from a FIPS-enabled RHEL client to a hypervisor such as VMWare ESX now fails with a
Provider routines::ems not enablederror if the hypervisor uses TLS 1.2 without EMS. To work around this problem, update the hypervisor to support TLS 1.3 or TLS 1.2 with the EMS extension. For VMWare vSphere, this means version 8.0 or later.For more information, see TLS Extension "Extended Master Secret" enforced with Red Hat Enterprise Linux 9.2 and later.
Jira:RHEL-13340[1]
Chapter 12. Fixed issues Copy linkLink copied to clipboard!
Review issues that have been fixed in Red Hat Enterprise Linux 10.2.
12.1. Installer and image creation Copy linkLink copied to clipboard!
Review issues that have been fixed for installer and image creation in Red Hat Enterprise Linux 10.2.
- Root passwords are correctly set in ISO images
Before this update, the blueprint incorrectly used the
usercommand to configure therootpassword for ISO images. As a consequence, the root password was not set, preventing users from logging in. With this release, the root password is correctly applied for the root user during the ISO image build process, enabling successful system access.
- Installer falls back to English in text mode for unsupported languages
Before this release, the installer did not set the display mode (text, graphical, or non-interactive) early enough during startup. As a result, the check to determine whether a selected language is supported in text mode did not run. In text mode installations, languages that are not supported in the text user interface, such as Japanese, could be used, resulting in unreadable output.
With this fix, the installer correctly detects languages that are not supported in the text mode. If an unsupported language is selected, the text user interface falls back to English. The installed system is still configured to use the originally selected language.
- The driver disk menu now correctly displays user input on the console
Before this release, when starting a RHEL installation with the
inst.ddkernel command-line option, the console failed to render characters typed by the user. As a consequence, the lack of visual feedback made the application appear unresponsive, even though the input was still being processed in the background. With this update, this display issue has been resolved, and user input is now visible as expected during the driver disk selection process.
- Anaconda installation program no longer fails if
/bootpartition is not created when using theostreecontainerKickstart command Before this update, while using the
ostreecontainerKickstart command to install a bootable container, the/bootpartition was not created. As a consequence, the installation failed because it required a dedicated/bootpartition to proceed with the container deployment.With this update, you can use Anaconda to install a bootable container image without having a separate
/bootpartition.
- Rescue mode in Anaconda now correctly detects and mounts image-based systems
Before this release, the rescue scanner failed to identify image-based installations due to their unique filesystem hierarchy. The environment now automatically mounts the system under the
/mnt/sysrootmount point and provides the specificchrootcommand required to access the active deployment. As the image-based systems are immutable, manual changes should be limited to/etcor/var.
12.2. Security Copy linkLink copied to clipboard!
Review issues that have been fixed for security in Red Hat Enterprise Linux 10.2.
- AIDE no longer terminates when a monitored file is changed
Before this update, AIDE terminated with an error if a file was truncated or removed while AIDE was computing its hash. With this update, AIDE detects when a file is truncated or deleted during hash calculation and handles the condition safely. As a result, AIDE successfully completes integrity checks even if a monitored file change size or is removed during processing.
fapolicyd-cli --check-trustdbno longer reports files without size or checksum informationSome files, for example,
/usr/lib/rpm/redhat/redhat-annobin-cc1or/etc/selinux/targeted/policy/policy.33, owned by an RPM package, are expected to be changed during and after the installation, but they are still owned by the corresponding package. Consequently,fapolicydcannot verify such files. With this release, thefapolicydframework no longer adds files that do not have size or checksum information in the RPM database to the trust database. As a result, thefapolicyd-cli --check-trustdbcommand does not report themiscompares: size sha256error message for such files.
- Remote serving of PKCS #11 tokens is no longer broken in
p11-kit Before this update of the
p11-kitpackages, a zero-length recursive attribute array was improperly read in the remote procedure call (RPC) mechanism. Consequently, remote serving of PKCS #11 tokens broke due to a communication error. This update fixes the reading of zero-length attribute arrays. As a result, ap11-kitserver can remotely serve PKCS #11 tokens.Jira:RHEL-97770[1]
- NSS database password updates no longer corrupt ML-DSA seeds
Before this update, a bug in how NSS handled database re-encryption prevented the ML-DSA seed attribute from updating when you changed the database password. As a result, the seed value was permanently lost, even if you knew the previous password.
With this update, password changes correctly update the ML-DSA seed attribute and no longer cause the permanent loss of seed values. Previously lost seeds cannot be recovered.
- Keylime agent no longer fails to enroll with non-RSA certificates
Before this update, the Keylime agent used a single key for both the TLS identity and the payload encryption. As a consequence, when you configured the agent to use a certificate other than RSA, it attempted to use the same key for the payload mechanism and the enrollment process failed.
With this release, the agent relies on two separate keys. As a result, the mutual TLS (mTLS) identity can use alternative cryptographic schemes, and the Keylime agent successfully enrolls with Elliptic Curve Cryptography (ECC) certificates. The payload encryption mechanism still requires a dedicated RSA key pair.
- Keylime agents correctly generate TPM quotes by using ECC keys
Before this update, when generating signed Trusted Platform Module (TPM) quotes, the
keylime-agent-rustcomponent did not properly support Elliptic Curve Cryptography (ECC) key algorithms. This prevented the agent from generating TPM quote evidence and caused enrollment failures for the ECC key types.With this update, the
keylime-agent-rustcomponent correctly handles ECC key algorithms during TPM quote generation. As a result, agents can successfully generate TPM quotes and enroll with the verifier to provide full attestation functionality with ECC keys generated by the TPM.
- Keylime verifier correctly validates TPM quotes signed with ECC keys
Before this update, when verifying signed Trusted Platform Module (TPM) quotes from agents, the Keylime verifier component did not properly support Elliptic Curve Cryptography (ECC) key algorithms. This caused attestation failures when agents used the ECC key types
ecc521,ecc384,ecc256,ecc224, orecc192.With this update, the verifier correctly handles and verifies TPM quotes signed with ECC keys. As a result, Keylime provides full attestation functionality for these algorithms.
- The
scputility correctly handles relative paths containing.. Before this update, the
scputility did not expand the..parent directory indicator in a path to the directory name. Consequently,scpincorrectly handled relative paths containing... This update adds special handling for parent directory indicators. As a result,scpnow processes paths containing..correctly.
keylime-policyno longer fails to process remote RPM repositoriesBefore this update, the
keylime-policycommand failed to close file handles during the analysis of remote RPM repositories, which caused file descriptor leaks. As a consequence, when you used the--remote-rpm-repooption to generate a runtime policy,keylime-policyfailed with aToo many open fileserror. With this update, the command properly closes file handles for all repository metadata and package files and does not exceed the system file descriptor limit.As a result,
keylime-policysuccessfully generates runtime policies from remote RPM repositories.Jira:RHEL-119028[1]
- Restored certificate bundles in
/etc/pki/tlsand/etc/ssl Before this update, certificate bundles were removed from
/etc/pki/tlsand/etc/sslas part of the transition to the directory-hash format. Consequently, applications relying on these bundles failed to establish secure connections.With this update, Red Hat restored the certificate bundles and moved the directory-hash format to RHEL-11. Affected applications can now establish secure connections as before. For RHEL-11 transition guide, see Dropping of cert.pem file.
Jira:RHEL-120696[1]
- The
keylime-policycommand correctly handles the--ima-measurement-listoption Before this update, if you did not specify a file path for the
--ima-measurement-listoption, thekeylime-policycommand did not properly set the default value. This error blocked other options, such as--keyrings, andkeylime-policyfailed to create the runtime policy.With this update, the
keylime-policycommand uses the default path,/sys/kernel/security/ima/ascii_runtime_measurements, when you do not provide a specific value for the--ima-measurement-listoption. As a result,keylime-policysuccessfully creates the runtime policy.
rust-rpm-sequoiacorrectly requires OpenSSL 3.5 as a dependencyThe
rust-rpm-sequoiapackage requires theopensslpackages in version 3.5, but this was not reflected in the RPM dependency chain. Consequently, you were able to installrust-rpm-sequoiawithout OpenSSL 3.5, but the RPM package management tool subsequently stopped working. With this update, the explicit dependency on OpenSSL 3.5 has been added. As a result, you cannot installrust-rpm-sequoiawithout the required OpenSSL version, which prevents the RPM tool from failing.
/usr/share/*/bin/*binaries work withfapolicydBefore this update, the
fapolicydservice did not add binaries from/usr/share/*/bin/directories to the trust database. For example, the/usr/share/Modules/bin/mkrootbinary was not added. Consequently, users could not run these binaries when using thetrust=1option infapolicydrules. With this fix, thefapolicyd-filter.conffile contains*/bin/*. As a result, you can run binaries from/usr/share/*/bin/with thefapolicydservice active.
- Clevis handles migrations to image mode correctly
Before this update, user and group membership updates from package installations were not properly applied when migrating from package mode to image mode. Consequently, the
clevisuser was not added to thetsssecurity group, preventing Clevis from accessing a trusted platform module (TPM) device and retrieving encryption keys during system boot. With this update, the Clevis package installation process is updated to ensure that theclevisuser is properly added to thetssgroup during image mode updates, even when existing configuration files are preserved. As a result, Clevis can properly access the TPM device and successfully retrieve an encryption key on systems in image mode.
clevis-pin-tpm2no longer silently ignores invalid JSONBefore this update, the
clevis-pin-tpm2command did not validate JSON field names during encryption with TPM2 and silently ignored typos and invalid fields, for example,pcrs_idsinstead ofpcr_ids. Consequently, users could inadvertently create LUKS bindings with incorrect TPM2 configurations due to typos. This could lead to unlock failures when TPM state changes, potentially making systems unbootable.This update adds JSON schema validation to reject unknown fields in the TPM2 configuration during encryption. As a result, invalid field names in TPM2 JSON configuration are properly rejected with clear error messages to prevent silent misconfigurations that could cause unlock failures.
Jira:RHEL-138591[1]
- SELinux policy update fixes hostname configuration failures
Before this update, a missing SELinux policy rule prevented the
systemd-hostnamedservice from creating a Varlink socket file in the/rundirectory. This issue caused hostname configuration to fail during PXE installations that used Kickstart withbootc, which resulted in failed installations.With this update, the SELinux policy permits the
systemd_hostnamed_tdomain to create the required socket file. As a result, hostname configuration completes successfully.Jira:RHEL-139385[1]
rust-rpm-sequoiano longer causes RPM to fail for disallowed algorithmsBefore this update, when handling signatures with algorithms disallowed by the system-wide cryptographic policies, the
rust-rpm-sequoialibrary reported a generic failure error to the RPM package management tool. Consequently, RPM failed to validate signatures on RPM packages with such algorithms. In this update, whenrust-rpm-sequoiaencounters an algorithm disallowed bycrypto-policies, it reports theNOTTRUSTEDerror message. As a result, you can usecrypto-policiesto disallow one of the algorithms used for signing packages without causing RPM to fail the whole package verification.
12.3. Software management Copy linkLink copied to clipboard!
Review issues that have been fixed for software management in Red Hat Enterprise Linux 10.2.
dnf-automaticcan send emails to multiple recipients with default/usr/bin/mailBefore this update, if the
dnf-automaticutility used thecommand_emailemitter to send emails to multiple recipients and also used the/usr/bin/mailutility installed with thes-nailpackage,/usr/bin/mailfailed to send an email. With this update, thednf-automaticutility expands theemail_tokeyword in thecommand_formatformatting string from a single argument to multiple arguments. As a result,dnf-automaticsends emails to multiple recipients with the default/usr/bin/mailutility.
- RPM no longer fails to install or verify a package with multiple signatures when the package has some
NOTTRUSTEDsignatures Before this update, when you installed or verified a package with multiple signatures, RPM did not correctly determine the overall verification result when the
rpmkeys(8)utility reported some of the package signatures asNOTTRUSTED. A signature can becomeNOTTRUSTEDif, for example, its certificate is expired or revoked, or if its algorithm is disabled by system-wide cryptographic policies. As a consequence, RPM failed to install or verify the package even if the package had at least one valid and trusted signature.This update fixes the verification logic in RPM to correctly handle packages with
NOTTRUSTEDsignatures. This update also improves error reporting around this functionality.As a result, RPM ignores
NOTTRUSTEDpackage signatures and successfully installs or verifies a package with multiple signatures if the package has at least one valid signature and no invalid signatures. Error messages are also clearer and more accurate when verification actually fails.
- DNF no longer fails to install packages that use both supported and unsupported signing algorithms
Before this update, you could not install packages with signatures that used both supported and unsupported package signing algorithms. As a consequence, DNF rejected such packages when verifying their signatures because of the unsupported algorithms. With this update, DNF ignores signatures classified as
NOTTRUSTEDin therpmkeyscommand output. As a result, DNF can install packages that use both supported and unsupported signing algorithms.
- RPM resolves non-local users and groups correctly when installing or verifying packages
Before this update, you could use centralized identity management, for example, through the Lightweight Directory Access Protocol (LDAP), and build a custom package that contains files to be owned by corresponding users or groups. As a consequence, when you installed this custom package, RPM failed to resolve any non-local user and group names, and defaulted to
rootin both cases. This caused files owned by non-local users or groups to be owned byrootwhen installed on disk.With this update, RPM consults the Name Service Switch (NSS) file when resolving user and group names. As a result, as long as the NSS configuration on the system is correct, RPM resolves such non-local users and groups correctly, and the files are owned by the correct User Identifier (UID) and Group Identifier (GID) when installed on disk.
NoteIf you do not want to use NSS, you can configure the
%_passwd_pathor%_group_pathmacro. RPM will only use the specified localpasswd(5)andgroup(5)files when resolving names.NoteWhen installing or verifying packages in an alternate root directory specified with the
--rootoption, RPM only uses thepasswd(5)andgroup(5)files, or the paths configured with the%_passwd_pathand%_group_pathmacros, inside the targetrootdirectory and does not consult NSS at all.For more information, see the
--rootdescription in therpm(8)man page.
- DNF correctly performs comparison of
epoch-version-releasefor upgrade transactions Before this update, DNF incorrectly performed comparison of the
epoch-version-release(EVR) RPM package information. As a consequence, if you performed two subsequent upgrade transactions for a package that had the sameepoch-versionbut differentrelease, DNF identified the overall transaction as a downgrade. This update fixes theEVRcomparison. As a result, DNF identifies two subsequent package upgrades with different release versions as an upgrade.Jira:RHEL-128443[1]
- DNF no longer attempts to automatically remove protected packages installed as dependencies
Before this update, if you installed a protected package as a dependency required by only one other package and had the
clean_requirements_on_removeconfiguration option enabled, DNF failed to perform any transaction that tried to remove the protected package if this package became an unused dependency. This prevented the removal of the package that depended on it, because DNF would automatically attempt to remove the protected dependency as well. With this update, DNF treats all protected packages as explicitly installed by the user. As a result, DNF no longer attempts to automatically remove protected packages, allowing the removal of the package that depends on it.Jira:RHEL-128445[1]
12.4. Shells and command-line tools Copy linkLink copied to clipboard!
Review issues that have been fixed for shells and command-line tools in Red Hat Enterprise Linux 10.2.
- Fixed the
ipmievdservice start failure due to missing PID file Before this update, the
ipmievdsystemd service failed to start because the service did not create the required PID file during initialization. As a result, the service could not store its process ID and timed out. With this update, the service configuration creates the PID file before startingipmievdto ensure that the service starts correctly.Jira:RHEL-112449[1]
volume_keysuccessfully retrieves backup passphrases in FIPS modeBefore this update, the
volume_keyutility used functions that were incompatible with Federal Information Processing Standards (FIPS) when retrieving a backup passphrase from an escrow packet. Consequently,volume_keyfailed and reported an error on systems with FIPS mode enabled. This update ensures that the backup passphrase retrieval function is FIPS-compliant. As a result, you can successfully retrieve backup passphrases on FIPS-enabled systems.Jira:RHEL-146218[1]
12.5. Networking Copy linkLink copied to clipboard!
Review issues that have been fixed for networking in Red Hat Enterprise Linux 10.2.
- The NetworkManager
sriov.vfsproperty supports thereapplyoperation Before this update, NetworkManager could not dynamically apply changes if a user changed the
sriov.vfsproperty. As a consequence, NetworkManager connections with Single Root I/O Virtualization (SR-IOV) settings required a restart after modifications. With this release,sriov.vfsnow supports thereapplyoperation if the total number of virtual functions (VFs) does not change. As a result, restarting a connection after modifying SR-IOV settings is no longer required in the mentioned scenario.
- The
bindpackage successfully installs in imagemode Before this update,
bindpackage installation in imagemode failed because the/var/nameddirectories and files were missing. With this update, essentialbindfiles are moved from the/var/nameddirectory to the/etc/nameddirectory, and symlinks are created. As a result, thebindpackage successfully installs in imagemode.
- The
xdp-trafficgenutility works correctly on ARM systems Before this update, the
xdp-trafficgenutility failed on ARM systems with aMissing required option '--interface'error even if you specified the-i <interface>option. As a consequence, it was not possible to probe eXpress Data Path (XDP) support on a specific interface. This update fixes the problem, and the-i <interface>option works correctly on ARM systems.
- NetworkManager clients can set a global-level DNS search domain without defining a DNS server
Before this update, if a client, such as the Nmstate API or the GNOME control center application, used the D-Bus API for changes on a global level, it was not possible to set DNS search domains without defining a DNS server. This update fixes the problem, and clients can define only a global-level DNS search domain.
NetworkManager-wait-online.serviceis no longer a hard requirement innmstate.serviceBefore this update, the
nmstate.servicesystemd unit had a strictRequiresdependency on theNetworkManager-wait-online.serviceunit. Consequently, in environments whereNetworkManager-wait-onlinefailed or timed out, thenmstatestate service failed to start and Nmstate could not apply the necessary network configurations. This update replacesRequiresin the unit withWants. As a result, thenmstateservice starts regardless of the status ofNetworkManager-wait-online, and Nmstate can apply network configurations.
- Unbound follows system-wide crypto-policies for TLS
Before this update, the Unbound package explicitly disabled TLS 1.2 on server sockets for DNS over TLS (DoT). Consequently, servers could not use TLS 1.2 regardless of system settings.
With this update, the default system-wide crypto-policies manage protocol disabling . As a result, TLS server sockets accept older protocols like TLS 1.2, and TLS 1.1 in
LEGACYpolicy mode.
12.6. Kernel Copy linkLink copied to clipboard!
Review issues that have been fixed for kernel in Red Hat Enterprise Linux 10.2.
- The USB bulk transport path no longer leaks USB protocol bytes
Before this update, a memory leak of USB protocol data in the USB bulk transport path could expose bytes from the USB protocol into user space when devices incorrectly skipped the data phase. This behavior was detected by the Linux Test Project (LTP)
ioctl_sg01test and indicated that the SCSI request block (SRB) transfer buffer was not cleared in these situations.With this update, the RHEL kernel is updated to clear the SRB transfer buffer when the data phase is incorrectly skipped. As a result, the USB bulk transport path no longer leaks USB protocol bytes into the user space, and the
ioctl_sg01test now completes successfully.Jira:RHEL-2588[1]
- Incorrect state decoding in
perf_schedfixed, and theperf_schedtest suite now passes Before this update, the incorrect state decoding in
perf_schedcaused the perf tool test suite to fail. This affected the perf tool test suite results. With this release, a patch for correct process state decoding inperf_schedtest has been implemented. As a result, theperf_schedtest suite now passes.Jira:RHEL-68347[1]
- Update resolves
ftracetesting failures foruprobeevents by using readelf for entry point determination Before this update, the
uprobeevents test duringftracetesting failed due to an issue with entry point determination. This fix involves using readelf for entry point determination in theuprobetests. As a result,ftracetesting failures foruprobeevents and Kprobe event parsing are resolved, improvingftracetest stability.Jira:RHEL-87219[1]
12.7. File systems and storage Copy linkLink copied to clipboard!
Review issues that have been fixed for file systems and storage in Red Hat Enterprise Linux 10.2.
- SCSI tape driver fix now enables device ID IOCTLs after reset
Before this update, a regression in the SCSI tape (
st) driver caused certain tape applications to fail after a device reset (such as a third-party power-on reset). When these applications attempted to verify device ID information by usingioctlcommands, the driver blocked the request if the buffer state was not ready. This caused errors such as "device /dev/nst1 failed on scsi ioctl(idlun)" and the affected tapes entered an error state.With this update, the
stdriver has been fixed to ensure that informationalioctlcommands, such asidlun, can execute regardless of the internal buffer state. As a result, tape applications can now successfully verify device information after a reset.Jira:RHEL-115965[1]
- Multipath persistent reservation handling is now more robust and consistent
Before this update, the
libmpathpersistlibrary, which is used by thempathpersistcommand, had several issues and corner cases that affected persistent reservation handling for multipath devices. This caused the following problems:-
Numerous
mpathpersistoperations failed on a multipath device. - Persistent reservations sometimes ended up in an inconsistent state. As a consequence, the multipath device denied write access when it was supposed to be allowed, and allowed write access when it was supposed to be prohibited.
With this release, multiple areas of
libmpathpersisthave been redesigned and fixed to ensure correct and consistent behavior. As a result,mpathpersistcommands on multipath devices now work the same as the equivalentsg_persistcommands on SCSI devices. I/O access to multipath devices also consistently reflects the device’s persistent reservation state.Jira:RHEL-118720[1]
-
Numerous
- The Anaconda installer can now use iSCSI LUNs with ID 256 or higher
Before this update, starting an operating system installation on a system that used iSCSI storage could cause the Anaconda installer to crash. This occurred when the iSCSI Logical Unit Number (LUN) ID was 256 or higher.
This update includes a fix to the LUN ID parsing logic in the
blivetlibrary. As a result, installations on systems that use iSCSI targets with LUN IDs of 256 or greater can now proceed.
- Added a new VDO
vdocalculatesizeutility and improved metadata error handling This update introduces the
vdocalculatesizeutility. Thevdocalculatesizecomputes Virtual Data Optimizer (VDO) volume size and memory requirements based on parameters such as logical size, physical size, slab size, index memory size, and block map cache size. As a result, you can accurately plan and provision VDO volumes, reducing configuration uncertainty for VDO storage deployment.This release also fixes error handling for scenarios in which VDO metadata becomes corrupted.
multipathdlogs offline path warnings for uninitialized pathsBefore this update, if
multipathdstarted or reconfigured while a path was offline, the daemon did not print regular offline warnings for that path. This made it difficult to identify issues with uninitialized paths.With this update,
multipathdprints offline messages for uninitialized paths. As a result, you can monitor path status consistently.Jira:RHEL-133815[1]
- Fixed NVMe
subsystem resetrecovery on PowerPC Before this update, issuing the
nvme subsystem-resetcommand on the PowerPC platform caused the Non-volatile Memory Express (NVMe) device to enter theresettingstate and it failed to recover. As a consequence, the device hung and required a system reboot to recover.With this release, the NVMe device recovers correctly after a
subsystem reset. It is temporarily inaccessible while transitioning from theresettingstate to thelivestate.Jira:RHEL-137767[1]
12.8. High availability and clusters Copy linkLink copied to clipboard!
Review issues that have been fixed for high availability and clusters in Red Hat Enterprise Linux 10.2.
- Nodes no longer unexpectedly leave the cluster after rejoining
Before this update, when a node left a cluster, the cleanup of its transient attributes was handled by two separate components. As a consequence, a node’s shutdown attribute might not have been cleared before the node attempted to rejoin the cluster, causing the node to immediately leave again.
With this release, the responsibility for clearing all transient node attributes has been consolidated into a single component.
As a result, these timing issues are no longer possible, and nodes can rejoin the cluster without being immediately removed due to stale
shutdownattributes.
- Warning messages added when using the
-fflag to modify CIB files Before this update, when a user executed
pcs resource delete,pcs cluster node remove-remote, orpcs booth removeusing the-fflag to modify a CIB file directly,pcswould perform the deletion but silently omit cleanup actions that require a live cluster, such as stopping resources or removing nodes from Pacemaker.With this update, warning messages are displayed whenever live cluster cleanup actions are skipped due to the use of the
-fflag.As a result, users are alerted that they must perform manual cleanup actions on the live cluster when modifying configuration files offline. Note that the usage of the
--forceflag to skip resource stopping in these commands has been deprecated and will be removed in a future release. The--forceflag retains its functionality to override validation errors. Users should now use the--no-stopflag to explicitly skip resource stopping before deletion.
- The
pcs resource deletecommand blocks the deletion of running unmanaged resources Before this update, if you attempted to delete an unmanaged resource by using
pcs resource deletewhile that resource was still running, the resource would be removed from the Cluster Information Base (CIB) but remain active in the running configuration. This left the resource in anORPHANEDstate, which could lead to cluster instability and resource management issues.With this update,
pcsreturns an error if a deletion request includes any unmanaged resources that are currently running.As a result,
pcs resource deleteprevents the creation of orphaned resources by requiring that they be stopped before deletion.
- Resource and stonith agent descriptions retain original formatting
Before this update,
pcsautomatically wrapped resource and stonith agent descriptions to fit within the terminal window. Consequently, any formatting done by the agents' authors-such as new lines, paragraphs, lists, or tables-was removed, often making the descriptions difficult to read.With this update,
pcsno longer reformats the description text.As a result,
pcsdisplays resource and stonith agent descriptions exactly as the agents' authors intended, preserving the original structure and improving readability.
- The
db2resource agent handles reintegration correctly Before this update, the
db2resource agent could encounter a race condition when a node was reintegrating into the cluster. Consequently, the reintegrating node could incorrectly attempt to start as a "Primary" instance.With this update, a "reintegration" attribute has been added to the agent. This allows the agent to correctly identify whether it is expected to join as a "Primary" or not, avoiding the race condition.
As a result, reintegration works correctly. Note that in order to prevent issues during the upgrade, you must disable all
db2resources before applying the update and re-enable them only after the update is complete on all nodes.Jira:RHEL-115495[1]
12.9. Compilers and development tools Copy linkLink copied to clipboard!
Review issues that have been fixed for compilers and development tools in Red Hat Enterprise Linux 10.2.
- Fix missing gzip dependency for compressed locale character maps in
glibc-locale-source Before this update, the
glibc-locale-sourcepackage provided character maps ingzipcompressed format but did not declare a dependency on thegzippackage. As a consequence, usinglocaledefwith a character map provided byglibc-locale-sourcecould fail ifgzipwas not installed on the system because the compressed archive could not be uncompressed.With this release,
glibc-locale-sourcenow depends on thegzippackage. This change ensures the required compression utility is present, allowinglocaledefto process character maps correctly. As a result, usinglocaledefwith character maps provided byglibc-locale-sourcenow works as expected even on systems wheregzipwas previously missing.
- The glibc exit function no longer crashes on simultaneous calls
Before this update, simultaneous calls to the glibc
exitfunction and concurrentstdio.hstream operations in multi-threaded applications were not synchronized. As a consequence, applications could terminate unexpectedly or experience data corruption. With this update, theexitandquick_exitfunctions synchronizestdio.hstream flushing and allow only one exit call to proceed. As a result, applications no longer crash in this scenario, and overall reliability is improved.Applications that perform blocking read operations on
stdio.hstreams, such as withgetchar, or that useflockfileto lock streams, cannot exit until the read operation completes or the lock is released. This behavior is required by the POSIX standard.Jira:RHEL-111117[1]
- glibc now returns complete group membership results when NSS group merges fail with ERANGE
Before this update, when looking up group membership on systems where Name Service Switch (NSS) merged groups from more than two services, a merge between two groups that failed due to an insufficient internal buffer caused glibc to skip the merge result instead of retrying the operation with a larger buffer.
As a consequence, on systems with more than two group database sources, querying group information, such as with the
getentgroup command, produced incomplete or empty group membership results in some cases.With this update, glibc no longer skips merge failures that are caused by an insufficient internal buffer and instead retries the merge with a larger buffer as intended.
As a result, group membership lookups on systems with multiple group database sources now return complete and correct group membership data.
Jira:RHEL-114265[1]
- Fixed uninitialized result from
sem_openwhen opening missing semaphore Before this update, calling the
sem_openfunction for a named semaphore that did not exist and without specifying theO_CREATflag could return an uninitialized value instead of a defined error indicator.As a consequence, affected applications observed undefined behavior, such as attempting to use an invalid semaphore handle and misinterpreting the failure because errno was not set to a meaningful value.
With this release,
sem_openexplicitly returnsSEM_FAILEDand setserrnotoENOENTwhen it is called for a semaphore that does not exist and theO_CREATflag is not specified.As a result, applications reliably detect this error condition and can handle missing semaphores in a predictable and standards-compliant way.
Jira:RHEL-119392[1]
glibcstdio flushing issues fixed for input streams and shared file descriptorsBefore this update, the glibc standard I/O implementation did not fully comply with POSIX when flushing input streams. This caused
fflushto mishandle input streams afterungetc, inconsistent behavior when called asfflush(NULL), and incorrect file offsets whenfcloseoperated on shared file descriptors or special character devices.As a consequence, applications might observe unexpected input stream state, incorrect underlying file positions, and file positioning errors when using
fseekandfflushon memory-mapped input files, which can lead to misreads or subtle data-processing bugs.With this release, the
glibcstdio library is corrected so thatfflushhandles input streams in a POSIX-compliant way, including afterungetcand when invoked asfflush(NULL). In addition,fclosenow updates the underlying file offset for shared file descriptors and works correctly with special character devices, and the file positioning logic forfseekandfflushon memory-mapped input files is fixed.As a result, applications that rely on
stdiofor input processing, shared file descriptor usage, or memory-mapped input files now behave predictably and correctly after the update.Jira:RHEL-119434[1]
glibcNSS database lookup stability improvementBefore this update, missing checks in the
__nss_database_getfunction in theglibcpackage could cause null pointer dereferences and assertion failures during Name Service Switch (NSS) database lookups. As a consequence, applications relying on NSS could terminate unexpectedly, or the C library could crash under specific lookup conditions.With this release, additional validation checks are added to the NSS database lookup path in
glibcto handle invalid or unexpected internal states safely. As a result, NSS database lookups are more robust, and system stability is improved.
- Duplicate DNS queries fixed when the search path is set to
. Before this update, when the Domain Name System (DNS) search path in
/etc/resolv.conffile contained a single.entry, theglibcDNS stub resolver queried both the original domain name and the same domain name with a trailing dot.As a consequence, DNS queries for non-existent domains were duplicated, increasing the load on DNS servers.
After this update, the
glibcDNS stub resolver no longer appends a trailing dot to domain names when the search path contains only a single.entry.As a result, DNS queries are no longer duplicated in this configuration, reducing unnecessary DNS traffic and server load.
12.10. Identity Management Copy linkLink copied to clipboard!
Review issues that have been fixed for Identity Management (IdM) in Red Hat Enterprise Linux 10.2.
- Directory Server tools consistently accept unit suffixes when configuring the LMDB database maximum size
Before this update,
dscreateanddsconfused different functions to parse and display the LMDB database maximum size (nsslapd-mdb-max-size). As a consequence,dscreate create-templatedisplayed the value as a raw floating-point number in bytes, whiledsconf backend config set --mdb-max-sizeaccepted values in bytes only, making it difficult to configure consistent values across the two tools.With this update, both tools use the same parsing functions and accept values with unit suffixes (
k,m,g,t), automatically aligning the result to the nearest page boundary. As a result, administrators can use human-readable size values consistently acrossdscreateanddsconfwhen setting the LMDB database maximum size.
- The Directory Server web console displays sub-suffixes whose parent suffix is a regular entry
Before this update, the Directory Server web console only displayed sub-suffixes whose
nsslapd-parent-suffixattribute exactly matched an existing backend suffix. As a consequence, sub-suffixes with a parent suffix pointing to a regular LDAP entry (rather than a backend suffix) were not visible in the console’s suffix tree, even though they appeared correctly in thedsconf backend suffix listoutput.With this update, the web console correctly identifies sub-suffixes that fall under a backend suffix, regardless of whether the parent suffix is a backend suffix itself. As a result, all configured sub-suffixes are displayed in the web console suffix tree.
- Directory Server no longer fails at shutdown when the retro changelog trimming thread is active
Before this update, the retro changelog plugin’s internal lock object was freed while the trimming thread was still holding a reference to it when
ns-slapdstarted shutting down. As a consequence, the server could fail with a segmentation fault.With this update, the server waits for all active plugin threads to finish before freeing plugin resources during shutdown. As a result,
ns-slapdshuts down cleanly even when retro changelog trimming is in progress.
- LDAP searches with a single component in compound filters return correct results
Before this update, Directory Server did not correctly evaluate compound LDAP filters that contained only a single filter component, such as
(&(cn:dn:=groups)). As a consequence, group search queries using these filters returned no results, causing failed group lookups and potentially incorrect access control. With this update, filter evaluation logic is updated to correctly handle compound filters with a single component. As a result, existing group search filters such as(&(cn:dn:=groups))return the expected entries, restoring predictable LDAP behavior for applications and scripts.
- User resolution no longer fails if
nameID user overrides exist for IdM AD users Before this update, when a
nameID user override existed for IdM AD trusted users, user resolution failed because the auto private group could not be resolved. With this update, the IdM provider retries to fetch the user object if no group override is found. As a result, the auto private group of <overwritten_name>@ad.domain can be resolved, and user resolution succeeds.Jira:RHEL-94545[1]
- Directory Server ignores
memberOfDeferredUpdatesetting on instances with LMDB Before this update, the
memberOfDeferredUpdateconfiguration attribute, which is only effective for a Berkeley DB (BDB) backend, was not ignored on instances with a Lightning Memory-Mapped Database Manager (LMDB) backend. As a consequence, ifmemberOfDeferredUpdatewas enabled on an LMDB instance, the Directory Server could become unresponsive during MemberOf plugin processing of large or complex groups.With this update, Directory Server ignores the
memberOfDeferredUpdatesetting on instances with LMDB. As a result, processing large or complex groups no longer causes the server to become unresponsive.
dsctl db2indexno longer reindexes all attributes when specific attributes are requestedBefore this update, running
dsctl db2indexwith the--attroption but without specifying a backend name caused the--attroption to be silently ignored. As a consequence, all attributes across all backends were reindexed instead of only the specified ones, which could take a significant amount of time on large databases.With this update,
dsctl db2indexrequires a backend name as a positional argument, and the--attroption correctly limits reindexing to the specified attributes for the given backend. As a result, only the requested attributes are reindexed when a backend name and the--attroption are both provided.Jira:RHEL-111220[1]
- The MemberOf fixup task completion message correctly displays the membership attribute name
Before this update, when the MemberOf plugin completed a global fixup task, the plugin freed its configuration structure before logging the completion message. As a consequence, the completion log message displayed (
null) instead of the membership attribute name.With this update, the MemberOf plugin logs the fixup task completion message before freeing its configuration structure, ensuring the attribute name is available when the message is written. As a result, the completion log message displays the correct membership attribute name, making it easier for administrators to verify fixup operations and troubleshoot issues.
Jira:RHEL-117520[1]
- The Directory Server web console no longer fails with an error when enabling replication on a consumer
Before this update, when enabling replication on a consumer, the
dsconfutility printed a warning about changelogs to thestdoutstream instead ofstderr. As a consequence, the textual warning broke JSON parsing in the Directory Server web console, which expects pure JSON onstdout.With this update,
dsconfutility was updated so that the warning about changelogs on consumer replicas is written tostderr. As a result, the Directory Server web console successfully loads the Replication tab after enabling replication on a consumer or changing a role to consumer.
- New
notes=Nandnotes=Bsearch indicators to identify asynchronous operations in the Directory Server access log Before this update, asynchronous requests that exceeded the maximum number of threads per connection caused server unresponsiveness without identification in the Directory Server access logs. As a consequence, it was difficult to diagnose server unresponsiveness.
With this release, Directory Server uses the new search indicators in the access logs to identify such requests:
notes=Ndefines that the operation is not synchronous.notes=Bdefines that the operation blocks other new incoming operations: pending operations, not the read operations, are delayed.In both cases, you might need to increase the
nsslapd-maxthreadsperconnattribute value to allow a connection to use more threads.
- Online initialization of a Directory Server consumer no longer fails with an
LDAP_BUSYerror Before this update, the replication agreement could send entries faster than the consumer was able to import during online initialization. In that situation, the consumer responded with an
LDAP_BUSYerror. As a consequence, the replication agreement did not handle this error and terminated the online initialization.With this update, the replication agreement handles received
LDAP_BUSYresponses by retrying the operation after a delay. As a result, online initialization completes successfully even when the consumer temporarily cannot keep up with the rate of incoming entries.Jira:RHEL-123663[1]
- LDAP searches with spaces in DN filter values no longer return incorrect results
Before this update, a regression in the handling of filters containing distinguished name (DN) caused LDAP searches with spaces inside DN values in the filter, such as
(member=uid=user, ou=people,dc=example,dc=com), to be evaluated incorrectly. As a consequence, applications received incomplete group membership and search results.With this update, Directory Server normalizes and correctly compares DN values in the filter, accepting filters both with and without spaces in DN components. As a result, LDAP searches that include spaces in DN values return the same, complete results as in earlier RHDS versions, restoring expected application behavior.
Jira:RHEL-123664[1]
- Directory Server deletes access logs as expected
Before this update, when access log compression was enabled, the log rotation logic failed to correctly recognize
.gz-suffixed rotated access log filenames while rebuilding the internal rotation information, so compressed logs were not associated with their corresponding rotation entries. As a consequence, thensslapd-accesslog-listdid not contain the actual files on disk, and access logs accumulated until manual cleanup was required to prevent disks from filling.With this update, the log rotation logic was updated to correctly parse and match rotated access log filenames regardless of whether they are compressed (with a
.gzsuffix) or uncompressed, ensuring compressed logs are included when rebuilding rotation information and validating previous log files. As a result, compressed rotated access logs are properly tracked and removed according to the configured rotation settings.
- Online initialization of large databases progresses as expected
Before this update, when initializing replication with very large databases, especially after major subtree moves, the initialization could appear stalled after sending the initial suffix entry, because it spent excessive time building and checking large internal ID lists. As a consequence, the server experienced long CPU spikes, initialization was delayed or incomplete, and replicas remained outdated for an extended period.
With this update, the internal ID list lookup logic used during online initialization was optimized, making it scalable even with very large datasets. As a result, replication online initialization progresses as expected on large databases.
- Replication no longer fails with
Can’t locate CSNerrors after an offline import Before this update, when a replica was reinitialized by using an offline import, the replication keep-alive update was triggered before the replica had time to synchronize with the other suppliers. As a consequence,
Can’t locate CSN(Change Sequence Number) errors were logged and some changes were not replicated to consumers.With this update, the initial delay before the first keep-alive update matches the value of the
nsds5ReplicaKeepAliveUpdateIntervalattribute, which defaults to 1 hour, and a warning is displayed if this interval is less than the maximum backoff timer. As a result, the replica has sufficient time to synchronize from other suppliers after a reinitialization, and replication proceeds without CSN errors.Jira:RHEL-129675[1]
- Directory Server database initialization no longer fails with an
MDB_BAD_VALSIZEerror Before this update, when indexing an attribute, Directory Server erroneously extended the prefix of the index key. The more values were indexed, the longer the prefix became. Adding entries with large values accelerated the issue, because the server also appended a hash to the key. For example, entries in a FreeIPA deployment with many certificates triggered an
MDB_BAD_VALSIZEerror. As a consequence, key sizes could exceed the LMDB maximum key size, and Directory Server could not initialize the database during import or replication when the dataset contained such entries.With this update, Directory Server corrects the index key handling to prevent the
MDB_BAD_VALSIZEcondition. As a result, database initialization succeeds when importing or replicating datasets that contain entries with large numbers of long indexed attribute values.
- Directory Server no longer fails under heavy operations involving the NDN cache
Before this update, a defect in the concread dependency used by the Named Data Networking (NDN) cache caused LinCowCell chain drops to incorrectly free shared links when multiple references existed to the same chain. As a consequence, under heavy operations involving the NDN cache, the server could hit a use-after-free condition and fail with a segmentation fault in
atomic_compare_exchange(), leading to erratic downtime.With this update, the
389-ds-basepackage uses concread version 0.5.10, which correctly stops freeing data when a shared cache link is detected. As a result, NDN cache operations are handled safely, preventing the segmentation fault.
- DNS record creation no longer fails when a reverse zone is missing
Before this update, the
ipadnsrecordmodule inansible-freeipaignored thecreate_reverseparameter. As a consequence, when users attempted to addAorAAAArecords, the module incorrectly always required an existing reverse DNS zone and the task failed with a "DNS zone not found" error.With this release, the module logic verifies the status of the
create_reverseflag before attempting to validate or locate a reverse zone and skips the check entirely if it is set tofalse. As a result, theipadnsrecordmodule successfully addsAandAAAArecords to IdM-managed zones without requiring an existing reverse zone whencreate_reverseis set tofalse.
12.11. SSSD Copy linkLink copied to clipboard!
Review issues that have been fixed for SSSD in Red Hat Enterprise Linux 10.2.
adclicorrectly identifies machine account principals in multi-realm keytabsBefore this update, when connecting to a domain to update a password,
adclialways used the Kerberos realm of the first entry in the keytab file. As a consequence, on systems where the keytab contained multiple realms, the renewal process failed with a "no suitable keys" error if the required realm was not listed first. With this release,adclisearches the keytab for a principal that matches the target domain. As a result, machine account password renewals now succeed regardless of the order of entries in the keytab.
adclitestjoin correctly identifies the joined domain in multi-principal keytabsBefore this update, the
adcli testjoincommand unconditionally used the domain or realm from the first entry found in the keytab file to perform its diagnostic test. As a consequence, on systems where the keytab contained principals from multiple domains,adcli testjoinwould often attempt to connect to an incorrect domain and fail with a "Realm not local to KDC" error.With this release,
adcliuses the realm from the keytab as the domain name when the domain is not explicitly specified. As a result, users can reliably verify domain connectivity without encountering false authentication failures.
- User creation fails with invalid
sAMAccountNameinput Before this update, user creation with, for example, a User Principal Name (UPN) format that includes the
@character instead of asAMAccountNameattribute, causedadclito create user objects with asAMAccountNamewhich contained invalid characters. As a consequence, Active Directory (AD) operations involving that user could break. With this release,adclivalidates the input string for user creation against a list of illegal characters before attempting to create the entry. As a result,adcliterminates user creation if the input is not a validsAMAccountNamevalue. This prevents the creation of malformed user objects and ensures smoother AD operation.Jira:RHEL-5050[1]
12.12. Red Hat Enterprise Linux System Roles Copy linkLink copied to clipboard!
Review issues that have been fixed for Red Hat Enterprise Linux system roles in Red Hat Enterprise Linux 10.2.
- The
networkRHEL system role no longer fails to look up routing tables by name The
/usr/share/iproute2/rt_tablesfile contains certain built-in routing table names, such asmain. Before this update, if an administrator used thenetworkRHEL system role to modify the routing table and specified a routing table by its name in a playbook, the role failed with the following error:cannot find route table main in /etc/iproute2/rt_tables or /etc/iproute2/rt_tables.d/With this update, the
networkRHEL system role no longer fails to look up routing tables by name in/etc/iproute2/rt_tablesand files in the/etc/iproute2/rt_tables.d/directory.Jira:RHEL-110865[1]
- Storage role no longer fails when
/etc/fstabis missing Before this update, the storage role crashed on systems where
/etc/fstabwas absent. As a consequence, systems without a file system table configuration experienced failures.With this update, the storage role checks whether
/etc/fstabexists before attempting to parse it. As a result, systems without this file no longer experience a crash when using the storage role.
- External configuration files correctly override all the
sshd_configoptions Before this update, external configuration files were not loaded first, which prevented overrides of all options in the
sshd_configfile. Consequently, users experienced incorrect OpenSSH daemon configuration. With this update, external configuration files take priority. As a result, users can override all options in thesshd_configfile.
- The
networkRHEL system role no longer reports an incorrect state when removing profiles Before this release, when you used the
networkRHEL system role with thepersistent_state: absentsetting to remove undefined profiles, the role attempted to delete the loopback interface profile. Because the system automatically recreates this profile immediately, Ansible incorrectly reported achangedstate. This bug fix adds the loopback device to the role-internalblack_list_namesvariable. As a result, thenetworkRHEL system role ignores the loopback interface. This prevents unnecessary changes and the role reports anokstate.
- Fixed ZeroDivisionError when creating LVM volumes without a specified size
Before this update, creating an LVM volume without specifying a size could cause a ZeroDivisionError. This occurred because the
blivetmodule treated a volume with no specified size as zero.With this release, if you do not specify size, the volume uses all available space in the pool. As a result, LVM volumes are created successfully even when a size is omitted.
- The
nbde_clientrole correctly maintains idempotence after failed binding operations Before this update, when the
nbde_clientsystem role failed to add a required binding to a LUKS-encrypted volume, the rollback mechanism did not always function correctly. This caused idempotence issues, where subsequent attempts to run the role would fail or produce unexpected results because the system was left in a partially modified state.With this update, the role performs a backup of the LUKS header before initiating any binding operations. If an operation fails, the role uses this backup to restore the header to its original state. As a result, the role correctly maintains idempotence and ensures the system remains in a consistent state even if a binding fails to be added.
Jira:RHEL-128428[1]
- The
aidesystem role supports dynamic database configuration for multiple AIDE versions Before this update, the
aidesystem role used the deprecateddatabasevariable in its templates. On systems running Advanced Intrusion Detection Environment (AIDE) version 0.17 or later, including RHEL 10.2, RHEL 9.8, and CentOS Stream 9, this caused the AIDE service to fail during configuration parsing.With this update, the role introduces the
database_inandaide_versionvariables to dynamically detect the installed AIDE version and apply the appropriate configuration syntax automatically.As a result, the
aidesystem role provides consistent file integrity monitoring across different releases without requiring manual configuration changes.
- Improved error handling for empty disk lists in
blivet Before this update, the code failed to check if the disks list was empty before accessing
disks[0]in theblivetmodule. As a consequence, an unhandledIndexErrorcaused playbook failures, leading to poor performance.With this update, the module checks whether the disk list is empty before accessing it. If no disks are available, a clear error message is displayed instead of triggering an exception.
vpnrole generates validipsec.conffile for unmanaged hostsBefore this update, when you tried to generate an
ipsec.conffile for VPN connection between managed and unmanaged hosts, a logic error in the Ansible Playbook caused the task to fail. With this update, the Ansible Playbook references the host and subnet information correctly.As a result, the
vpnsystem role generates a validipsec.conffile for this scenario.
- The
selinuxsystem role supports static imports even when some variables are undefined Before this update, undefined variables, such as module paths, caused the
selinuxsystem role to fail during template expansion if theimport_roledirective was used. This occurred because Ansible attempts to resolve variables in tasknamefields immediately, even if those tasks are within a block with awhencondition that evaluates to false.With this update, task names use the
default, ord, filter to provide a fallback value for potentially undefined variables. This ensures that static imports succeed without error, and dynamic usage with theinclude_rolemodule still provides detailed task information when variables are present.As a result, the
selinuxrole functions correctly in playbooks that use theimport_roledirective even when no specific module path is defined.
- The
firewallRHEL system role installs NetworkManager on managed nodes in order for PCI interface ID lookups to work correctly Previously, if you wanted to look up the interface name by specifying the PCI id for the interface by using the
interface_pci_idparameter, and NetworkManager was not installed, thefirewallRHEL system role was unable to look up the interface by PCI ID and displayed a warning. As a consequence, the role failed to configure thefirewalldservice by using the specifiedinterface_pci_idvariable. With this update, the role ensures that NetworkManager is installed, and thefirewallRHEL system role works as expected.
- Resolved task name expansion issues in Ansible roles
Before this update, if you used
import_rolewith modules that had no path set, the role issued undefined variable errors. This occurred because Ansible attempted to expand templates in task names within ablockregardless of thewhenconditions.With this update, the
dfilter provides a default value for these variables. As a result, the role no longer errors withimport_roleand modules without a defined path, and continues to provide additional context in task names when used withinclude_role.
- Loop mount errors on RHEL 7 are resolved
Before this update, the
blivetmodule called an undefined function during loop mounts on Red Hat Enterprise Linux 7 because thelibblockdev-looppackage was missing. As a consequence, the role failed with the "The function 'bd_loop_get_backing_file' called, but not implemented" error.With this update, the
libblockdev-looppackage is installed, which preventsbliveterrors during loop mounts on RHEL 7.
12.13. Virtualization Copy linkLink copied to clipboard!
Review issues that have been fixed for virtualization in Red Hat Enterprise Linux 10.2.
- Post-copy migration no longer causes connection issues on IBM Z
After migrating a virtual machine (VM) between IBM Z hosts by using post-copy migration, the VM previously in some cases lost network connection and required resetting its network interface to reconnect. With this update, the kernel handles post-copy initiation properly, and the problem no longer occurs.
virtiofsdno longer exhausts open file descriptors when sharing directories with many filesBefore this update,
virtiofsdused file descriptors to hold references to files in a virtiofs-shared directory until the guest kernel invalidated its cache. As a consequence, when accessing a large number of files throughvirtiofs,virtiofsdaccumulated open file descriptors and exceeded the system limit. This caused commands such asrsyncandduto fail withToo many open fileserrors and in some cases causedvirtiofsdto crash.With this update,
virtiofsddefaults to using inode file handles instead of file descriptors to hold references to files. As a result,virtiofsdno longer exhausts the open file descriptor limit when working withvirtiofs-shared directories that contain a large number of files.Jira:RHEL-99895[1]
- Live migration of VMs with multiple CPU threads no longer fails with a CPU feature mismatch
Before this update, the
libvirtpackage reported theht(Hyper-Threading) CPU feature flag inconsistently between the source and destination hosts during live migration. As a consequence, live migration of virtual machines (VMs) that were configured with multiple CPU threads could fail with the following error:guest CPU doesn't match specification: extra features: htWith this update, the
libvirtpackage correctly handles thehtCPU feature flag during migration. As a result, VMs configured with multiple CPU threads can be successfully migrated between hosts.
- TDX attestation no longer requires rebooting the host
Previously, after you installed the
linux-sgxpackages on your host, Intel Trust Domain Extensions (TDX) attestation on your virtual machines (VMs) only worked after you rebooted the host. Now, the/dev/sgx_provisiondevice has correct correct ownership configured after installinglinux-sgx, and you can proceed with TDX attestation without rebooting the host.
- VM migration no longer fails when using vTPM on shared storage
Before this update, when a virtual Trusted Platform Module (vTPM) data directory was stored on a shared file system, such as NFS, the system failed to create the directory on the destination host during migration, even if it did not exist. This caused virtual machine (VM) migrations to fail. With this update, the system correctly identifies missing vTPM data directories on the destination host and creates them as needed. As a result, virtual machines with a vTPM on shared storage now migrate successfully.
Jira:RHEL-132534[1]
- Live VM memory dumps and VM snapshots now work correctly on IBM Z
Previously, attempting to create a memory dump of a running VM by using the
virsh dump --livecommand on an IBM Z host sometimes caused the VM to become unresponsive. In rare cases, creating a snapshot of a running VM can also caused the VM to become unresponsive. With this update, this issue has been fixed, and VMs on IBM Z work as expected in the described scenarios.Jira:RHELDOCS-21707[1]
12.14. Supportability Copy linkLink copied to clipboard!
Review issues that have been fixed for supportability in Red Hat Enterprise Linux 10.2.
- The
rhsm.serviceservice is running after thesosreport execution Before this update, the
sosreport inadvertently startedrhsm.serviceservice even when it was stopped. This caused the service to run in scenarios where there was no internet connection, generating error messages.With this fix, the
sosreport no longer startsrhsm.serviceservice when it is disabled, improving system stability in offline environments.
- Scrub non-alphanumeric passwords are available in the installer logs
Before this update, password detection was strict for obfuscating non-alphanumeric characters. With this release, password scrubbing now accepts non-alphanumeric characters. As a result, password detection no longer rejects non-alphanumeric characters, improving password input flexibility.
- Improved IPv6 obfuscation for data privacy
Before this update, the netmask portion of IPv6 addresses remained visible during the data cleaning process. With this release, both the address and the netmask are properly obfuscated, preventing the accidental exposure of network topology.
- The
obfuscate_filefunction correctly scrubs file content Before this update, the
obfuscate_filefunction overwrote the file content with the filename, causing issues with the main archive population in the cleaner. Consequently, incorrectly overwritten file content insoscaused user data corruption. This update introduces the following notable enhancements:-
The
obfuscate_filefunction cleans the file content instead of the filename. -
The cleaner’s
main_archiveis populated by the parsers first to ensure data integrity. -
The
obfuscate_filefunction does not requireshort_name. It uses an implicit value that the cleaner automatically processes.
-
The
- Enhanced post processing obfuscation in OpenStack Nova
Before this update, the passwords were never scrubbed. With this update, the obfuscation is applied only to the
/var/lib/openstack/config/novadirectory and obfuscating passwords from transport URLs, not the entire URL.
- Improper scrubbing fixed in
aap_containerizedto secure passwords Before this update, the unscrubbed passwords were collected from containerized AAP deployments because of the improper scrubbing in the
aap_containerizedplugin. As a consequence, a password leak occurred in these deployments.With this release, secret obfuscation has been added to the plugin. As a result, sensitive data is properly obfuscated in the containerized AAP deployments, reducing the risk of password leaks.
12.15. Containers Copy linkLink copied to clipboard!
Review issues that have been fixed for containers in Red Hat Enterprise Linux 10.2.
- Skopeo switches to Sequoia-PGP for OpenPGP signatures in RHEL 10
With this update, Skopeo supports a Sequoia-PGP-based backend for OpenPGP image signatures. Previously, skopeo used
GnuPG(gpgme/pgpmebindings) forOpenPGPoperations. This update includes the following enhancements:- Verification: the back end is switched from GnuPG to Sequoia-PGP.
-
Signing: the current GnuPG workflows continue to exist. New
--sign-by-sq-fingerprintoption allow you to use Sequoia and Sequoia-available keys. Current GnuPG workflows remain supported. - Algorithm support: Supports modern and post-quantum capable algorithms such as ML-DSA-87+Ed448.
- Improved Skopeo compatibility with FIPS certification.
Jira:RHEL-56364[1]
- Buildah and Podman no longer request multiple tokens per operation
Previously, the Buildah and Podman utilities repeatedly requested tokens during each operation. This sometimes caused a race condition in the hosted repository manager.
This update fixes the issue, it prevents multiple token requests which improves the performance and stability of the hosted repository manager.
12.16. RHEL Lightspeed Copy linkLink copied to clipboard!
Review issues that have been fixed for RHEL Lightspeed in Red Hat Enterprise Linux 10.2.
- The
lightspeedkeyword is added todnfsearch metadata for the CLA package Before this update, the
lightspeedkeyword was missing from the command-line assistant (CLA) package summary. As a consequence, users could not easily find the package when performing adnfsearch. With this update, the keyword is added to the package metadata. As a result, users can now find the package by searching forlightspeed, which makes the CLA easier to install.
Chapter 13. Available BPF features Copy linkLink copied to clipboard!
Review Berkeley Packet Filter (BPF) features available in the Red Hat Enterprise Linux 10.2 kernel to understand your system’s capabilities.
| Option | Value |
|---|---|
| unprivileged_bpf_disabled | 2 (bpf() syscall restricted to privileged users, admin can change) |
| JIT enable | 1 (enabled) |
| JIT harden | 1 (enabled for unprivileged users) |
| JIT kallsyms | 1 (enabled for root) |
| Memory limit for JIT for unprivileged users | 69267617742848 |
| CONFIG_BPF | y |
| CONFIG_BPF_SYSCALL | y |
| CONFIG_HAVE_EBPF_JIT | y |
| CONFIG_BPF_JIT | y |
| CONFIG_BPF_JIT_ALWAYS_ON | y |
| CONFIG_DEBUG_INFO_BTF | y |
| CONFIG_DEBUG_INFO_BTF_MODULES | y |
| CONFIG_CGROUPS | y |
| CONFIG_CGROUP_BPF | y |
| CONFIG_CGROUP_NET_CLASSID | y |
| CONFIG_SOCK_CGROUP_DATA | y |
| CONFIG_BPF_EVENTS | y |
| CONFIG_KPROBE_EVENTS | y |
| CONFIG_UPROBE_EVENTS | y |
| CONFIG_TRACING | y |
| CONFIG_FTRACE_SYSCALLS | y |
| CONFIG_FUNCTION_ERROR_INJECTION | n |
| CONFIG_BPF_KPROBE_OVERRIDE | n |
| CONFIG_NET | y |
| CONFIG_XDP_SOCKETS | y |
| CONFIG_LWTUNNEL_BPF | y |
| CONFIG_NET_ACT_BPF | m |
| CONFIG_NET_CLS_BPF | m |
| CONFIG_NET_CLS_ACT | y |
| CONFIG_NET_SCH_INGRESS | m |
| CONFIG_XFRM | y |
| CONFIG_IP_ROUTE_CLASSID | y |
| CONFIG_IPV6_SEG6_BPF | y |
| CONFIG_BPF_LIRC_MODE2 | n |
| CONFIG_BPF_STREAM_PARSER | y |
| CONFIG_NETFILTER_XT_MATCH_BPF | m |
| CONFIG_BPFILTER | n |
| CONFIG_BPFILTER_UMH | n |
| CONFIG_TEST_BPF | m |
| CONFIG_HZ | 100 |
| bpf() syscall | available |
| Large insn size limit | available |
| Bounded loop support | available |
| ISA extension v2 | available |
| ISA extension v3 | available |
| ISA extension v4 | available |
| Program type | Available helpers |
|---|---|
| socket_filter | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_perf_event_output, bpf_skb_load_bytes, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_socket_cookie, bpf_get_socket_uid, bpf_skb_load_bytes_relative, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| kprobe | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_probe_read, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_uid_gid, bpf_get_current_comm, bpf_perf_event_read, bpf_perf_event_output, bpf_get_stackid, bpf_get_current_task, bpf_current_task_under_cgroup, bpf_get_numa_node_id, bpf_probe_read_str, bpf_perf_event_read_value, bpf_get_stack, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_send_signal, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_send_signal_thread, bpf_jiffies64, bpf_get_ns_current_pid_tgid, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_get_task_stack, bpf_copy_from_user, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_task_storage_get, bpf_task_storage_delete, bpf_get_current_task_btf, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_get_func_ip, bpf_get_attach_cookie, bpf_task_pt_regs, bpf_get_branch_snapshot, bpf_find_vma, bpf_loop, bpf_strncmp, bpf_copy_from_user_task, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| sched_cls | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_skb_store_bytes, bpf_l3_csum_replace, bpf_l4_csum_replace, bpf_tail_call, bpf_clone_redirect, bpf_get_cgroup_classid, bpf_skb_vlan_push, bpf_skb_vlan_pop, bpf_skb_get_tunnel_key, bpf_skb_set_tunnel_key, bpf_redirect, bpf_get_route_realm, bpf_perf_event_output, bpf_skb_load_bytes, bpf_csum_diff, bpf_skb_get_tunnel_opt, bpf_skb_set_tunnel_opt, bpf_skb_change_proto, bpf_skb_change_type, bpf_skb_under_cgroup, bpf_get_hash_recalc, bpf_get_current_task, bpf_skb_change_tail, bpf_skb_pull_data, bpf_csum_update, bpf_set_hash_invalid, bpf_get_numa_node_id, bpf_skb_change_head, bpf_get_socket_cookie, bpf_get_socket_uid, bpf_set_hash, bpf_skb_adjust_room, bpf_skb_get_xfrm_state, bpf_skb_load_bytes_relative, bpf_fib_lookup, bpf_skb_cgroup_id, bpf_get_current_cgroup_id, bpf_skb_ancestor_cgroup_id, bpf_sk_lookup_tcp, bpf_sk_lookup_udp, bpf_sk_release, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_sk_fullsock, bpf_tcp_sock, bpf_skb_ecn_set_ce, bpf_get_listener_sock, bpf_skc_lookup_tcp, bpf_tcp_check_syncookie, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_tcp_gen_syncookie, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_sk_assign, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_csum_level, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_skb_cgroup_classid, bpf_redirect_neigh, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_redirect_peer, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_check_mtu, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_skb_set_tstamp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_tcp_raw_gen_syncookie_ipv4, bpf_tcp_raw_gen_syncookie_ipv6, bpf_tcp_raw_check_syncookie_ipv4, bpf_tcp_raw_check_syncookie_ipv6, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| sched_act | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_skb_store_bytes, bpf_l3_csum_replace, bpf_l4_csum_replace, bpf_tail_call, bpf_clone_redirect, bpf_get_cgroup_classid, bpf_skb_vlan_push, bpf_skb_vlan_pop, bpf_skb_get_tunnel_key, bpf_skb_set_tunnel_key, bpf_redirect, bpf_get_route_realm, bpf_perf_event_output, bpf_skb_load_bytes, bpf_csum_diff, bpf_skb_get_tunnel_opt, bpf_skb_set_tunnel_opt, bpf_skb_change_proto, bpf_skb_change_type, bpf_skb_under_cgroup, bpf_get_hash_recalc, bpf_get_current_task, bpf_skb_change_tail, bpf_skb_pull_data, bpf_csum_update, bpf_set_hash_invalid, bpf_get_numa_node_id, bpf_skb_change_head, bpf_get_socket_cookie, bpf_get_socket_uid, bpf_set_hash, bpf_skb_adjust_room, bpf_skb_get_xfrm_state, bpf_skb_load_bytes_relative, bpf_fib_lookup, bpf_skb_cgroup_id, bpf_get_current_cgroup_id, bpf_skb_ancestor_cgroup_id, bpf_sk_lookup_tcp, bpf_sk_lookup_udp, bpf_sk_release, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_sk_fullsock, bpf_tcp_sock, bpf_skb_ecn_set_ce, bpf_get_listener_sock, bpf_skc_lookup_tcp, bpf_tcp_check_syncookie, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_tcp_gen_syncookie, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_sk_assign, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_csum_level, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_skb_cgroup_classid, bpf_redirect_neigh, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_redirect_peer, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_check_mtu, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_skb_set_tstamp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_tcp_raw_gen_syncookie_ipv4, bpf_tcp_raw_gen_syncookie_ipv6, bpf_tcp_raw_check_syncookie_ipv4, bpf_tcp_raw_check_syncookie_ipv6, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| tracepoint | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_probe_read, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_uid_gid, bpf_get_current_comm, bpf_perf_event_read, bpf_perf_event_output, bpf_get_stackid, bpf_get_current_task, bpf_current_task_under_cgroup, bpf_get_numa_node_id, bpf_probe_read_str, bpf_perf_event_read_value, bpf_get_stack, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_send_signal, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_send_signal_thread, bpf_jiffies64, bpf_get_ns_current_pid_tgid, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_get_task_stack, bpf_copy_from_user, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_task_storage_get, bpf_task_storage_delete, bpf_get_current_task_btf, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_get_func_ip, bpf_get_attach_cookie, bpf_task_pt_regs, bpf_get_branch_snapshot, bpf_find_vma, bpf_loop, bpf_strncmp, bpf_copy_from_user_task, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| xdp | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_redirect, bpf_perf_event_output, bpf_csum_diff, bpf_get_current_task, bpf_get_numa_node_id, bpf_xdp_adjust_head, bpf_redirect_map, bpf_xdp_adjust_meta, bpf_xdp_adjust_tail, bpf_fib_lookup, bpf_get_current_cgroup_id, bpf_sk_lookup_tcp, bpf_sk_lookup_udp, bpf_sk_release, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_skc_lookup_tcp, bpf_tcp_check_syncookie, bpf_strtol, bpf_strtoul, bpf_tcp_gen_syncookie, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_check_mtu, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_xdp_get_buff_len, bpf_xdp_load_bytes, bpf_xdp_store_bytes, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_tcp_raw_gen_syncookie_ipv4, bpf_tcp_raw_gen_syncookie_ipv6, bpf_tcp_raw_check_syncookie_ipv4, bpf_tcp_raw_check_syncookie_ipv6, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| perf_event | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_probe_read, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_uid_gid, bpf_get_current_comm, bpf_perf_event_read, bpf_perf_event_output, bpf_get_stackid, bpf_get_current_task, bpf_current_task_under_cgroup, bpf_get_numa_node_id, bpf_probe_read_str, bpf_perf_event_read_value, bpf_perf_prog_read_value, bpf_get_stack, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_send_signal, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_send_signal_thread, bpf_jiffies64, bpf_read_branch_records, bpf_get_ns_current_pid_tgid, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_get_task_stack, bpf_copy_from_user, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_task_storage_get, bpf_task_storage_delete, bpf_get_current_task_btf, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_get_func_ip, bpf_get_attach_cookie, bpf_task_pt_regs, bpf_get_branch_snapshot, bpf_find_vma, bpf_loop, bpf_strncmp, bpf_copy_from_user_task, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| cgroup_skb | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_perf_event_output, bpf_skb_load_bytes, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_socket_cookie, bpf_get_socket_uid, bpf_skb_load_bytes_relative, bpf_skb_cgroup_id, bpf_get_current_cgroup_id, bpf_get_local_storage, bpf_skb_ancestor_cgroup_id, bpf_sk_lookup_tcp, bpf_sk_lookup_udp, bpf_sk_release, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_sk_fullsock, bpf_tcp_sock, bpf_skb_ecn_set_ce, bpf_get_listener_sock, bpf_skc_lookup_tcp, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_sk_cgroup_id, bpf_sk_ancestor_cgroup_id, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| cgroup_sock | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_uid_gid, bpf_get_current_comm, bpf_get_cgroup_classid, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_socket_cookie, bpf_get_current_cgroup_id, bpf_get_local_storage, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_netns_cookie, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_loop, bpf_strncmp, bpf_get_retval, bpf_set_retval, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| lwt_in | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_cgroup_classid, bpf_get_route_realm, bpf_perf_event_output, bpf_skb_load_bytes, bpf_csum_diff, bpf_skb_under_cgroup, bpf_get_hash_recalc, bpf_get_current_task, bpf_skb_pull_data, bpf_get_numa_node_id, bpf_lwt_push_encap, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| lwt_out | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_cgroup_classid, bpf_get_route_realm, bpf_perf_event_output, bpf_skb_load_bytes, bpf_csum_diff, bpf_skb_under_cgroup, bpf_get_hash_recalc, bpf_get_current_task, bpf_skb_pull_data, bpf_get_numa_node_id, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| lwt_xmit | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_skb_store_bytes, bpf_l3_csum_replace, bpf_l4_csum_replace, bpf_tail_call, bpf_clone_redirect, bpf_get_cgroup_classid, bpf_skb_get_tunnel_key, bpf_skb_set_tunnel_key, bpf_redirect, bpf_get_route_realm, bpf_perf_event_output, bpf_skb_load_bytes, bpf_csum_diff, bpf_skb_get_tunnel_opt, bpf_skb_set_tunnel_opt, bpf_skb_under_cgroup, bpf_get_hash_recalc, bpf_get_current_task, bpf_skb_change_tail, bpf_skb_pull_data, bpf_csum_update, bpf_set_hash_invalid, bpf_get_numa_node_id, bpf_skb_change_head, bpf_lwt_push_encap, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_csum_level, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| sock_ops | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_socket_cookie, bpf_setsockopt, bpf_sock_map_update, bpf_getsockopt, bpf_sock_ops_cb_flags_set, bpf_sock_hash_update, bpf_get_current_cgroup_id, bpf_get_local_storage, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_tcp_sock, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_netns_cookie, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_load_hdr_opt, bpf_store_hdr_opt, bpf_reserve_hdr_opt, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| sk_skb | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_skb_store_bytes, bpf_tail_call, bpf_perf_event_output, bpf_skb_load_bytes, bpf_get_current_task, bpf_skb_change_tail, bpf_skb_pull_data, bpf_get_numa_node_id, bpf_skb_change_head, bpf_get_socket_cookie, bpf_get_socket_uid, bpf_skb_adjust_room, bpf_sk_redirect_map, bpf_sk_redirect_hash, bpf_get_current_cgroup_id, bpf_sk_lookup_tcp, bpf_sk_lookup_udp, bpf_sk_release, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_skc_lookup_tcp, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| cgroup_device | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_uid_gid, bpf_get_current_comm, bpf_get_cgroup_classid, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_current_cgroup_id, bpf_get_local_storage, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| sk_msg | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_uid_gid, bpf_get_cgroup_classid, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_msg_redirect_map, bpf_msg_apply_bytes, bpf_msg_cork_bytes, bpf_msg_pull_data, bpf_msg_redirect_hash, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_msg_push_data, bpf_msg_pop_data, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_netns_cookie, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| raw_tracepoint | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_probe_read, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_uid_gid, bpf_get_current_comm, bpf_perf_event_read, bpf_perf_event_output, bpf_get_stackid, bpf_get_current_task, bpf_current_task_under_cgroup, bpf_get_numa_node_id, bpf_probe_read_str, bpf_perf_event_read_value, bpf_get_stack, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_send_signal, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_send_signal_thread, bpf_jiffies64, bpf_get_ns_current_pid_tgid, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_get_task_stack, bpf_copy_from_user, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_task_storage_get, bpf_task_storage_delete, bpf_get_current_task_btf, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_get_func_ip, bpf_task_pt_regs, bpf_get_branch_snapshot, bpf_find_vma, bpf_loop, bpf_strncmp, bpf_copy_from_user_task, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| cgroup_sock_addr | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_uid_gid, bpf_get_current_comm, bpf_get_cgroup_classid, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_socket_cookie, bpf_setsockopt, bpf_getsockopt, bpf_bind, bpf_get_current_cgroup_id, bpf_get_local_storage, bpf_sk_lookup_tcp, bpf_sk_lookup_udp, bpf_sk_release, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_skc_lookup_tcp, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_netns_cookie, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_get_retval, bpf_set_retval, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| lwt_seg6local | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_cgroup_classid, bpf_get_route_realm, bpf_perf_event_output, bpf_skb_load_bytes, bpf_csum_diff, bpf_skb_under_cgroup, bpf_get_hash_recalc, bpf_get_current_task, bpf_skb_pull_data, bpf_get_numa_node_id, bpf_lwt_seg6_store_bytes, bpf_lwt_seg6_adjust_srh, bpf_lwt_seg6_action, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| lirc_mode2 | not supported |
| sk_reuseport | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_skb_load_bytes, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_socket_cookie, bpf_skb_load_bytes_relative, bpf_get_current_cgroup_id, bpf_sk_select_reuseport, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| flow_dissector | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_skb_load_bytes, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| cgroup_sysctl | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_uid_gid, bpf_get_current_comm, bpf_get_cgroup_classid, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_current_cgroup_id, bpf_get_local_storage, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_sysctl_get_name, bpf_sysctl_get_current_value, bpf_sysctl_get_new_value, bpf_sysctl_set_new_value, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| raw_tracepoint_writable | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_probe_read, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_uid_gid, bpf_get_current_comm, bpf_perf_event_read, bpf_perf_event_output, bpf_get_stackid, bpf_get_current_task, bpf_current_task_under_cgroup, bpf_get_numa_node_id, bpf_probe_read_str, bpf_perf_event_read_value, bpf_get_stack, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_send_signal, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_send_signal_thread, bpf_jiffies64, bpf_get_ns_current_pid_tgid, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_get_task_stack, bpf_copy_from_user, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_task_storage_get, bpf_task_storage_delete, bpf_get_current_task_btf, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_get_func_ip, bpf_task_pt_regs, bpf_get_branch_snapshot, bpf_find_vma, bpf_loop, bpf_strncmp, bpf_copy_from_user_task, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| cgroup_sockopt | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_uid_gid, bpf_get_current_comm, bpf_get_cgroup_classid, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_current_cgroup_id, bpf_get_local_storage, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_tcp_sock, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_netns_cookie, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_loop, bpf_strncmp, bpf_get_retval, bpf_set_retval, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| tracing | |
| struct_ops | |
| ext | |
| lsm | |
| sk_lookup | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_perf_event_output, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_current_cgroup_id, bpf_sk_release, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_sk_assign, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_ktime_get_coarse_ns, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_skc_to_unix_sock, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| syscall | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_probe_read, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_pid_tgid, bpf_get_current_uid_gid, bpf_get_current_comm, bpf_perf_event_read, bpf_perf_event_output, bpf_get_stackid, bpf_get_current_task, bpf_current_task_under_cgroup, bpf_get_numa_node_id, bpf_probe_read_str, bpf_get_socket_cookie, bpf_perf_event_read_value, bpf_get_stack, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_sk_storage_get, bpf_sk_storage_delete, bpf_send_signal, bpf_skb_output, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_send_signal_thread, bpf_jiffies64, bpf_get_ns_current_pid_tgid, bpf_xdp_output, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_skc_to_tcp6_sock, bpf_skc_to_tcp_sock, bpf_skc_to_tcp_timewait_sock, bpf_skc_to_tcp_request_sock, bpf_skc_to_udp6_sock, bpf_get_task_stack, bpf_d_path, bpf_copy_from_user, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_task_storage_get, bpf_task_storage_delete, bpf_get_current_task_btf, bpf_sock_from_file, bpf_for_each_map_elem, bpf_snprintf, bpf_sys_bpf, bpf_btf_find_by_name_kind, bpf_sys_close, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_get_func_ip, bpf_task_pt_regs, bpf_get_branch_snapshot, bpf_skc_to_unix_sock, bpf_kallsyms_lookup_name, bpf_find_vma, bpf_loop, bpf_strncmp, bpf_xdp_get_buff_len, bpf_copy_from_user_task, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_skc_to_mptcp_sock, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| netfilter | bpf_map_lookup_elem, bpf_map_update_elem, bpf_map_delete_elem, bpf_ktime_get_ns, bpf_get_prandom_u32, bpf_get_smp_processor_id, bpf_tail_call, bpf_get_current_task, bpf_get_numa_node_id, bpf_get_current_cgroup_id, bpf_map_push_elem, bpf_map_pop_elem, bpf_map_peek_elem, bpf_spin_lock, bpf_spin_unlock, bpf_strtol, bpf_strtoul, bpf_probe_read_user, bpf_probe_read_kernel, bpf_probe_read_user_str, bpf_probe_read_kernel_str, bpf_jiffies64, bpf_get_current_ancestor_cgroup_id, bpf_ktime_get_boot_ns, bpf_ringbuf_output, bpf_ringbuf_reserve, bpf_ringbuf_submit, bpf_ringbuf_discard, bpf_ringbuf_query, bpf_snprintf_btf, bpf_per_cpu_ptr, bpf_this_cpu_ptr, bpf_get_current_task_btf, bpf_for_each_map_elem, bpf_snprintf, bpf_timer_init, bpf_timer_set_callback, bpf_timer_start, bpf_timer_cancel, bpf_task_pt_regs, bpf_loop, bpf_strncmp, bpf_kptr_xchg, bpf_map_lookup_percpu_elem, bpf_dynptr_from_mem, bpf_ringbuf_reserve_dynptr, bpf_ringbuf_submit_dynptr, bpf_ringbuf_discard_dynptr, bpf_dynptr_read, bpf_dynptr_write, bpf_dynptr_data, bpf_ktime_get_tai_ns, bpf_user_ringbuf_drain, bpf_cgrp_storage_get, bpf_cgrp_storage_delete |
| Map type | Available |
|---|---|
| hash | yes |
| array | yes |
| prog_array | yes |
| perf_event_array | yes |
| percpu_hash | yes |
| percpu_array | yes |
| stack_trace | yes |
| cgroup_array | yes |
| lru_hash | yes |
| lru_percpu_hash | yes |
| lpm_trie | yes |
| array_of_maps | yes |
| hash_of_maps | yes |
| devmap | yes |
| sockmap | yes |
| cpumap | yes |
| xskmap | yes |
| sockhash | yes |
| cgroup_storage | yes |
| reuseport_sockarray | yes |
| percpu_cgroup_storage | yes |
| queue | yes |
| stack | yes |
| sk_storage | yes |
| devmap_hash | yes |
| struct_ops | yes |
| ringbuf | yes |
| inode_storage | yes |
| task_storage | yes |
| bloom_filter | yes |
| user_ringbuf | yes |
| cgrp_storage | yes |
| arena_map | yes |
Appendix A. List of tickets by component Copy linkLink copied to clipboard!
Bugzilla and JIRA tickets are listed in this document for reference. The links lead to the release notes in this document that describe the tickets.
Appendix B. Revision history Copy linkLink copied to clipboard!
Review the revision history to track updates to the Red Hat Enterprise Linux 10.2 Release Notes.
0.0-2Fri 29 May 2026, Valentina Ashirova (vaashiro@redhat.com)
- Updated the Distribution of content in RHEL 10 section
0.0-1Tue 26 May 2026, Valentina Ashirova (vaashiro@redhat.com)
- Updated the Architectures for Red Hat Enterprise Linux 10.2 section
0.0-0Wed 20 May 2026, Valentina Ashirova (vaashiro@redhat.com)
- Release of the Red Hat Enterprise Linux 10.2 Release Notes.