Since a few weeks I’m running RELEASE on a custom kernel to use a patch that I made for a missing feature in the IPv6 stack (namely icmp_may_rst
).
But a few minutes ago I had the surprise to find that the Linuxulator was no longer working. Trying to run a Linux binary failed with the following error:
ELF binary type "0" not known. exec: test: Exec format error
Actually looking at kldstat
, the Linux kernel module wasn’t even loaded. Trying to load it manually gave me the following error:
link_elf_obj: symbol kern_sched_setscheduler undefined linker_load_file: Unsupported file type
OK so what is this sched_setscheduler
you are talking about? Well there you go!
Now the Linuxulator depends on that syscall, but for some reason the necessary option disappeared from my custom kernel configuration. All I had to do was to add it again and recompile:
options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
And now I can run Linux binaries again!