Pizlix: Memory Safe Linux from Scratch
Posted by nullbyte808 2 days ago
Comments
Comment by metadope 2 days ago
> You must have a /mnt/lfs partition mounted at /dev/sda4.
should say > You must have a /dev/sda4 partition mounted at /mnt/lfs.
Pedantic Sunday: Happy Hanukkah!Comment by pizlonator 6 hours ago
Comment by ndesaulniers 7 hours ago
Fil, you can compile the Linux kernel will clang+lld. `make LLVM=1` https://docs.kernel.org/kbuild/llvm.html
Comment by pizlonator 6 hours ago
So if I used clang, then I'd have three compilers (yolo-clang, gcc, fil-clang) instead of two (gcc, fil-clang).
Comment by ndesaulniers 6 hours ago
Does the fil-c runtime depend on specifics from glibc, or is it that LFS doesn't support building with musl?
> We need to retain the Yolo GCC for compiling the Linux kernel.
Probably can replace that with s/the Linux kernel/glibc/. glibc maintainers have started upstreaming patches for building glibc with clang, but not sure yet what's the latest on that (large) patch series.
Comment by pizlonator 6 hours ago
No. I could add a flag like that, but that would make my patch to clang larger, which would make rebasing to new clang versions harder.
So I'm choosing not to add such a flag. For now.
> Do you depend on glibc, or is it that LFS doesn't support building with musl?
I support both glibc and musl.
LFS is glibc-based.
Comment by ndesaulniers 6 hours ago
Comment by pizlonator 6 hours ago
Comment by jabedude 6 hours ago
Comment by pizlonator 6 hours ago
Comment by ndesaulniers 6 hours ago
Comment by pizlonator 6 hours ago
Comment by ndesaulniers 6 hours ago
Comment by pizlonator 6 hours ago
Sanitizers don't have to deal with:
- https://fil-c.org/safepoints
Oh and it's not clear if the current revision of the capability model would work with memory mapped IO: https://fil-c.org/invisicaps
Comment by ndesaulniers 5 hours ago
Maybe if I ask enough stupid questions, you'll get pissed and get the kernel to build/work with fil-c just to prove a stranger on the internet wrong. :P
Comment by pizlonator 1 hour ago
Nope
> Maybe if I ask enough stupid questions, you'll get pissed and get the kernel to build/work with fil-c just to prove a stranger on the internet wrong. :P
I love this attitude! :-)
Comment by CerryuDu 4 hours ago
At least in this article:
the term "classic C" is still used.
I don't expect for a moment that Fil-C might supplant normal C under normal circumstances. Calling normal C "yolo-C" is dishearteningly pompous. Just because you've invented a C environment with a different tradeoff, people not interested in it are not automatically irresponsible (which is what you are suggesting with "yolo", of course).
Comment by reactordev 4 hours ago
Comment by wmf 3 hours ago
Comment by pizlonator 1 hour ago
Comment by hulitu 19 hours ago
Any idea if it runs on real hardware ?
Comment by pizlonator 6 hours ago
The only thing standing in the way of it working on real HW is just making sure the kernel is configured properly for it. Like right now the kernel config file is the result of enabling those things that work on the virtual devices that HyperV and VMware provide.
The right answer is modular kernel and something like initramfs and modprobe or whatnot. That kind of work has nothing to do with Fil-C; it’s just distro engineering