Earlier quoted context omitted.
> You could simply write crash info to some NVRAM or something, and then do a reboot. Then you can recover it during the next boot. That works for some systems: those for which "some NVRAM or something" evaluates to a real device usable for that purpose. Not all Linux systems provide such a device. > But there is no need to let userspace processes continue to run, which is exactly what Linux does. Userspace processes…
Isn’t that exactly the reason behind microkernel’s supposed superiority?
“Rust is safe” is not some kind of absolute guarantee of code safety
521–530 of 542 posts
Re: “Rust is safe” is not some kind of absolute guarantee of code safety
#522Earlier quoted context omitted.
Rust doesn't have an official `#[never_panic]` annotation, but there's a variety of approaches folks use. Static analysis (Clippy) can get you pretty far. My favorite trick is to link a no_std binary with no panic handler, and see if it has a linker error. No linker error = no calls to panic handler = no panics. Note that Rust is easier to work with than C here, because although the C-like API isn't shy about panicki…
> Static analysis (Clippy) can get you pretty far. What's funny about this is that (while it's true!) it's exactly the argument that Rustaceans tend to reject out of hand when the subject is hardening C code with analysis tools (or instrumentation gadgets like ASAN/MSAN/fuzzing, which get a lot of the same bile). In fact when used well, my feeling is that extra-language tooling has largely eliminated the practical sa…
Re: “Rust is safe” is not some kind of absolute guarantee of code safety
#523Earlier quoted context omitted.
> Static analysis (Clippy) can get you pretty far. What's funny about this is that (while it's true!) it's exactly the argument that Rustaceans tend to reject out of hand when the subject is hardening C code with analysis tools (or instrumentation gadgets like ASAN/MSAN/fuzzing, which get a lot of the same bile). In fact when used well, my feeling is that extra-language tooling has largely eliminated the practical sa…
While C/C++ has been made much safer by sanitizers, fuzzing and lints, they are: - Only useful when actually being used, which is never the case. (Seriously, can we make at least ASAN the default?) - Often costly to always turn them on (e.g. MSAN). - Often requires restructuring or redesign to get the most out of them (especially fuzzing). Rust's memory safety guarantee does not suffer from first two points, and the…
Android helps a bit into that sense,
Re: “Rust is safe” is not some kind of absolute guarantee of code safety
#524Earlier quoted context omitted.
> Most code written in C is horribly unsafe. I think that is untrue. I worked at the Network Systems arm of Bell Labs for sixteen years, and we could demonstrate five-nines of uptime on complex systems written entirely in C. C is a rough tool, I will grant you that, and Rust is a welcome addition to the toolkit, but saying that most code written in C is horribly unsafe, does not make it true.
Perhaps I misunderstand, but I don't imagine most individuals or companies writing production C code to be on the same "level of competency" as a research company as prestigious as Bell Labs.
https://www.acsac.org/2002/papers/classic-multics.pdf
So not even back then.
Re: “Rust is safe” is not some kind of absolute guarantee of code safety
#525Re: “Rust is safe” is not some kind of absolute guarantee of code safety
#526Earlier quoted context omitted.
It’s crazy to think that advocating for reasonable, non-toxic people to work with receives this kind response. Inclusivity and non-hostile work environments should not be considered “perfect” and “all-inclusive”. They should be basic . The default . The lowest bar possible .
Just as many people have problems with this form of communication, many people find it hard to clearly express themselves in an environment where they're expected to put people's feelings above all else. What some might perceive as "hostile", others would simply call "honest". It's simply a matter of preference.
Re: “Rust is safe” is not some kind of absolute guarantee of code safety
#527Earlier quoted context omitted.
It’s crazy to think that advocating for reasonable, non-toxic people to work with receives this kind response. Inclusivity and non-hostile work environments should not be considered “perfect” and “all-inclusive”. They should be basic . The default . The lowest bar possible .
So an "inclusive" and "non-toxic work environment" should put fantasy above reality? There's nothing inherently toxic in Linus' message; he's making a technical point about how kernel code should be designed, to deal effectively with the sometimes complex and challenging reality of low-level systems.
Re: “Rust is safe” is not some kind of absolute guarantee of code safety
#528Earlier quoted context omitted.
So an "inclusive" and "non-toxic work environment" should put fantasy above reality? There's nothing inherently toxic in Linus' message; he's making a technical point about how kernel code should be designed, to deal effectively with the sometimes complex and challenging reality of low-level systems.
He is implying that his collaborators are kindergarteners who believe in Santa Claus. It's insulting.
Re: “Rust is safe” is not some kind of absolute guarantee of code safety
#529Earlier quoted context omitted.
> Static analysis (Clippy) can get you pretty far. What's funny about this is that (while it's true!) it's exactly the argument that Rustaceans tend to reject out of hand when the subject is hardening C code with analysis tools (or instrumentation gadgets like ASAN/MSAN/fuzzing, which get a lot of the same bile). In fact when used well, my feeling is that extra-language tooling has largely eliminated the practical sa…
Static analysis for C exists since 1979, date of lint's availability, the problem isn't lack of tooling, rather people actually using it.
Re: “Rust is safe” is not some kind of absolute guarantee of code safety
#530Is this related to the use of unsafe blocks and the inventor of Linux arguing with someone out of their depth about alleged undefined behavior?