The LKM post mentions binary size improvements.<p>One issues I have had with Rust applications is the huge binary size (yes, I know this has improved a bit lately). Is there a good comparison between kernel C and kernel Rust code in this regard?
Do I understand it correctly that upgrading to a new rust version is mostly implementing new best practices and new features, instead of needing to "fix" your code, as rust is backwards compatible?<p>I've only used rust nightly for my own projects and didn't give too much thought about rust versions
So this is a huge tangent but couldn't most of the uses of the non_null!() macro in this diff just be (safe!) pointer comparisons or subtractions, without the unsafe{} logic to convert a pointer value to a reference just for the purposes of comparison or subtraction? <a href="https://lore.kernel.org/lkml/20240217002717.57507-1-ojeda@kernel.org/" rel="nofollow">https://lore.kernel.org/lkml/20240217002717.57507-1-ojeda@ke...</a>
My wishlist would include gradually refactoring core in Rust and formal verification a-la seL4 to prove correctness. There's no point to refactor churn from one language religion to another for low entropy, core code without improvements in assurance that it's also provably bug-free, race-free, and secure while also being as fast or possibly faster.