initial amd64 support for rumprun/hw

  • From: Antti Kantee <pooka@xxxxxx>
  • To: rumpkernel-users <rumpkernel-users@xxxxxxxxxxxxx>
  • Date: Wed, 10 Jun 2015 22:00:53 +0000

Hi,

There's now amd64 support for rumprun/hw. The main motivation was making it easier to document the build for newcomers, since now you no longer need "-- -F ACLFLAGS=-m32" to produce a working system. I guess some rare folks might want to run piggyprograms as unikernels, but if not, sticking with 32bit is the sensible thing to do (unless you get a kick out of wasting memory, of course, I don't judge).

Aaaaanyhooooo,

There are two, hmmh, caveats.

The first is that I completely punted with interrupt routing, so all peripheral interrupts are squashed to 1 level. I'm not sure this is a huge problem in a system with typically 1-2 interrupt sources, but if someone wants to fix it properly, knock yourself out.

The second one is more curious. For whatever reason, tls data does not get loaded. It's present in the baked binary (verified by hexdump), but if you examine the contents of the memory location even right at the kernel entry point before anyone has had a change to stompstomp, the contents are all zeros. tls/bss works just fine. Needless to say, this little issue makes the tls test fail. The good news is that it's the only failing test.

enjoy, or something

Other related posts: