Rust-Written Stateless Codec Drivers Make A Lot Of Sense
When it comes to making use of the Rust programming language within the Linux kernel, one of the areas where it makes a lot of sense is for the video codec drivers given the amount of unknown/untrusted data submitted by user-space for video processing and it being a wide attack surface for bad actors. With the memory safety features of Rust this can be a big benefit to such drivers and Collabora is currently experimenting with a virtual codec driver Rust implementation to prove the concept.
Daniel Almeida with Collabora plead the case for Rust stateless codec drivers in V4L2 at the FOSDEM conference this past weekend in Brussels. He's been working on Rust bindings for the V4L2 kernel code and as an initial proving grounds for the benefits of Rust in this space he's been working toward bringing the VISL virtual codec driver from C to Rust.
The VISL virtual driver as-is is beneficial for working on new user-space features, fixing user-space bugs, testing, and prototyping new codec APIs. This virtual stateless decoder driver should also be rather simple in writing a Rust implementation compared to a real and complex hardware driver.
Those wanting to learn more about this effort on getting Rust code happening within Linux's V4L2/codec space can see the FOSDEM presentation for more details.
Daniel Almeida with Collabora plead the case for Rust stateless codec drivers in V4L2 at the FOSDEM conference this past weekend in Brussels. He's been working on Rust bindings for the V4L2 kernel code and as an initial proving grounds for the benefits of Rust in this space he's been working toward bringing the VISL virtual codec driver from C to Rust.
The VISL virtual driver as-is is beneficial for working on new user-space features, fixing user-space bugs, testing, and prototyping new codec APIs. This virtual stateless decoder driver should also be rather simple in writing a Rust implementation compared to a real and complex hardware driver.
Those wanting to learn more about this effort on getting Rust code happening within Linux's V4L2/codec space can see the FOSDEM presentation for more details.
31 Comments