Вход на сайт

Просмотр новости

Найдите то, что Вас интересует

Linux Preparing To Retire Its 32-bit MSR Interfaces

Дата публикации: 03-07-2026 10:32:05

Currently measuring in at 32 patches, SUSE engineer Juergen Gross has been leading the effort to end the Linux kernel's usage of their 32-bit model specific register (MSR) interfaces so the more modern 64-bit interfaces can be exclusively used. This allows for better code unification and cleaning up the MSR code...

Основное содержимое страницы с новостью.

LINUX KERNEL

Currently measuring in at 32 patches, SUSE engineer Juergen Gross has been leading the effort to end the Linux kernel's usage of their 32-bit model specific register (MSR) interfaces so the more modern 64-bit interfaces can be exclusively used. This allows for better code unification and cleaning up the MSR code.

Eliminating usage of the 32-bit MSR interfaces with the likes of rdmsr() and rdmsr_safe() is being done since the 64-bit interfaces like rdmsrq() are superior, all the MSR access macros can then be converted to inline functions, and will allow for more MSR code reorganization/improvements moving forward.

Juergen Gross explained in the patch series:

"For accessing the MSR registers on the local CPU, there are 2 types of interfaces: the "modern" 64-bit ones (rdmsrq() etc.) and the 32-bit ones (rdmsr() etc.) which are using the upper and lower 32-bit halves of the 64-bit wide MSR register values.

The 32-bit interfaces are not optimal for 3 reasons:

- They are based on primitives using 64-bit sized values anyway.

- Modern x86 CPUs have added support for MSR access instructions using an immediate value instead of a register for addressing the MSR, while the value is in a 64-bit register.

- rdmsr() is a macro storing the upper and lower 32-bit halves in variables specified as macro parameters. This is obscuring variable assignment through a macro. Additionally rdmsrq() is mimicking this pattern by being a macro, too, with the target variable specified as a parameter as well.

For those reasons drop the 32-bit interfaces for accessing the x86 MSR registers completely and only use the 64-bit variants.

This allows to switch all "high-level" MSR access macros to inline functions in the end.

This series will be used as the base for further reorganisation of the MSR access functions, especially for completely inlining the MSR access instructions even with paravirtualization being active."

Some of these patches were queued over the past day into tip/tip.git's x86/msr Git branch for avoiding use of the 32-bit MSR interfaces in various areas of the common x86 kernel code. The other patches are expected to land via their respective subsystem branches. With seeing this activity in tip/tip.git, that work should then land for the Linux 7.3 kernel cycle later in the year. If the rest of the patches are queued up in coming weeks in their respective branches, this could lead to the old interfaces being removed from the mainline kernel this year.

Linux 32-bit MSR patches queued

As brought up on the mailing list, this removal of the 32-bit MSR interfaces will not affect Linux's x86 32-bit CPU support. SImply the calling conventions will change within the kernel code but older 32-bit CPUs will still continue to function.

Схожие новости

#Наименование новостиТональностьИнформативностьДата публикации
1Linux 7.2-rc2 Raising The Default RISC-V 64-bit CPU Limit To 256 Cores0504-07-2026
24K @ 60 FPS USB Video Capture Finally Becomes Less Problematic On Linux2704-07-2026
3Linux DRM Scheduler Patches Yield Massive Improvement For Job Submission Latency7804-07-2026
4Linux 7.2-rc2 BPF Code Being Hardened Against JIT Spraying Attacks0503-07-2026
5Intel Prepares More Nova Lake Graphics/Display Enablement For Linux 7.30703-07-2026
6Linux 7.3 Adding More Graphics PCI IDs For Intel Nova Lake S0504-07-2026
7NVIDIA VR-NVL BMC Device Tree Being Upstreamed For OpenBMC Support0703-07-2026
8GNOME Mutter GPU Reset Recovery Becoming A Reality2704-07-2026
9На kernel.org по ошибке удалили со всех зеркал архивы с кодом ядра0502-07-2026

Классификация: Экономика. Схожих патентов: 0. Схожих новостей: 9. Тональность: 0. Информативность: 7. Источник: www.phoronix.com.