3 ms·
You need to pass syscall.x32=y on the kernel cmdline for Debian packaged kernels. https://wiki.debian.org/X32Port https://wiki.debian.org/X32Port But, maybe s
by sillystuff 2y ago
You need to pass syscall.x32=y on the kernel cmdline for Debian packaged kernels.
https://wiki.debian.org/X32Port https://wiki.debian.org/X32Port
But, maybe support has gone away recently, too since upstream apparently was interested in removing support?
https://www.phoronix.com/news/Linux-Potentially-Drops-x32 https://www.phoronix.com/news/Linux-Potentially-Drops-x32
- LegionMammal978 2y agoAs far as I'm aware, kernel-side support hasn't budged an inch since all those articles came out. The bigger annoyance is that you'll either have to compile a special libc or define your own raw-syscall wrappers.
- sillystuff 2y agoIt has been several years since I played with x32, but Debian had pretty good support. Not every package built for amd64 was also built for x32, but most server stuff was there. It has been a long time, but I was using x32 containers on an amd64 host (both Debian), and things worked fine without having to build anything from source. After moving to a different VPS provider who was less stingy with RAM in their base offering, I just simplified and used straight amd64. While I didn't try adding x32 as an additional arch with Debian's multi-arch, I'm pretty confident, it would "just work" just as adding i386 as an additional arch does.
- LegionMammal978 2y agoPerhaps. I was just trying it on Ubuntu, and found that while I can add x32 as an architecture on dpkg, there aren't any x32 versions of libc6 and other basic libraries. The odd part is, I distinctly recall playing with x32 assembly quite recently on Ubuntu with no special configuration, but now it seems like it's no longer enabled in the kernel by default. Maybe it was disabled with 24.04.
- jcelerier 2y agoOn debian libc6-x32 is definitely there: https://packages.debian.org/search?keywords=libc6-x32 https://packages.debian.org/search?keywords=libc6-x32