Set to be merged during the upcoming Linux 6.13 merge window is support with the Rust programming language infrastructure for allowing in-place kernel modules.
This addition by Rust Linux engineer Wedson Almeida Filho of Microsoft allows for “InPlaceModule” as a means of initializing Rust modules in-place with pinned memory.
This Rust in-place module support is for in turn allowing pinned types to be used within the Rust kernel modules without any extra allocations. This Rust InPlaceModule support is important for features like mutexes, spinlocks, driver registrations, and similar functionality.
This Rust InPlaceModule support is part of a larger patch series working through various device driver, PCI driver, and platform abstractions needed by forthcoming Rust kernel drivers such as the open-source NVIDIA “Nova” driver project out of Red Hat, among others.
Those wishing to learn more about the Rust in-place module support for the Linux kernel can see this patch queued up within Greg Kroah Hartman’s char-misc.git char-misc-next branch ahead of the upcoming Linux 6.13 merge window.