Microsoft Engineer Ports EXT2 File-System Driver To Rust
Back in late 2023 were Rust abstractions for the Linux kernel's Virtual File-System (VFS) code. Those patches by Microsoft engineer Wedson Almeida Filho have now seen a second iteration posted... In addition to various improvements to the Rust VFS bindings, the new patches bring a work-in-progress EXT2 Rust file-system driver.
With the original "request for comments" on the Rust VFS abstractions last October, there were two file-system implementations as users of the abstractions: Tarfs and PuzzleFS. PuzzleFS is a file-system for containers and Tarfs is a file-system based on Tar files. Now with the RFC v2 patches posted today, there is also now a work-in-progress EXT2 Rust driver for exercising the Rust abstractions.
Yes, it's EXT2 and not EXT4. While EXT2 originates from the 90's and doesn't see much real-world Linux use on modern systems, implementing EXT2 in Rust is an easier starting point than going for EXT4. Microsoft engineer Wedson Almeida Filho is responsible for this Rust-written basic EXT2 driver currently focusing on read-only support. Yes, Microsoft has been doing a lot for Rust in the Linux kernel. The EXT2 Rust driver in its current basic form is just under 600 lines of Rust code while useful for exercising the new Rust interfaces.
The updated Rust VFS bindings continue to initially cater to read-only file-system needs. The new patches out today add iomap support, drop the buffer heads, and implement other features. See the Rust VFS v2 (RFC) abstraction patches for more details on this latest Rust Linux endeavor.
With the original "request for comments" on the Rust VFS abstractions last October, there were two file-system implementations as users of the abstractions: Tarfs and PuzzleFS. PuzzleFS is a file-system for containers and Tarfs is a file-system based on Tar files. Now with the RFC v2 patches posted today, there is also now a work-in-progress EXT2 Rust driver for exercising the Rust abstractions.
Yes, it's EXT2 and not EXT4. While EXT2 originates from the 90's and doesn't see much real-world Linux use on modern systems, implementing EXT2 in Rust is an easier starting point than going for EXT4. Microsoft engineer Wedson Almeida Filho is responsible for this Rust-written basic EXT2 driver currently focusing on read-only support. Yes, Microsoft has been doing a lot for Rust in the Linux kernel. The EXT2 Rust driver in its current basic form is just under 600 lines of Rust code while useful for exercising the new Rust interfaces.
The updated Rust VFS bindings continue to initially cater to read-only file-system needs. The new patches out today add iomap support, drop the buffer heads, and implement other features. See the Rust VFS v2 (RFC) abstraction patches for more details on this latest Rust Linux endeavor.
49 Comments