On Sun, Jun 22, 2025 at 12:39 AM Viacheslav Dubeyko <Slava.Dubeyko@xxxxxxx> wrote: > > I completely see your point. I think we are going in circles. Yes, we understand the engineering value of taking small steps and replacing small bits each time. That is not the issue -- we haven't argued anything against that. If you are talking about replacing code that is local/private to HFS and that does not have any other users (like a custom data structure), then it may or may not be a good idea, depending on what is it and how you do it. It is hard to say without knowing more or seeing an example. But if you are talking about using C APIs shared with others, then it is different, because the goal of the project is to provide safe abstractions for modules to use, rather than have every module call C directly (or have everyone reimplement their own abstractions internally, and possibly unsoundly). Those "abstractions" are not about reimplementing existing C code, but about allowing Rust callers to use the existing C code _safely_. That is a big part of the reason for using Rust in the kernel, and why we are asking you to take a look at the existing abstractions and the VFS ones. Now, there can be exceptions, as usual in the kernel, and we can discuss them, of course. But that is the general principle. Cheers, Miguel