There is a master-x86_64 GNU Mach branch. As of 2012-11-20, it only supports the Xen platform for now.

What is left for initial support (32-on-64) is

  • adding 64bit boot support from grub
  • implement 32/64 RPC compatibility for RPCs served by kernel.


For pure 64bit support, we need to

  • add 64bit definitions in binutils
  • add 64bit definitions in gcc
  • implement 64bit variants of code in glibc/sysdeps/mach/i386 and glibc/sysdeps/mach/hurd/i386
  • implement 64bit variants of code in libpthread/sysdeps/i386, libpthread/sysdeps/mach/i386, libpthread/sysdeps/mach/hurd/i386
  • fetch from Linux 64bit variant of code in ./pfinet/linux-src/arch/i386 and ./pfinet/linux-src/include/asm-i386
  • define the mig ABI
  • bootstrap a distrib, e.g. Debian hurd-amd64 (see )

IRC, freenode, #hurd, 2011-10-16

<youpi> it'd be really good to have a 64bit kernel, no need to care about
  addressing space :)
<braunr> yes a 64 bits kernel would be nice
<braunr> i guess it wouldn't be too hard to have a special mach kernel for
  64 bits processors, but 32 bits userland only
<youpi> well, it means tinkering with mig

mig portable rpc declarations.

IRC, freenode, #hurd, 2012-10-03

<braunr> youpi: just so you know in case you try the master-x86_64 with
<braunr> youpi:
<youpi> ok, thx
<braunr> the squeeze version is fine but i had to patch the wheezy/sid one
<youpi> I actually hadn't hoped to boot into 64bit directly from grub
<braunr> youpi: there is code in viengoos that could be reused
<braunr> i've been thinking about it for a time now
<youpi> ok
<braunr> the two easiest ways are 1/ the viengoos one (a -m32 object file
  converted with objcopy as an embedded loader)
<braunr> and 2/ establishing an identity mapping using 4x1 GB large pages
  and switching to long mode, then jumping to c code to complete the
<braunr> i think i'll go the second way with x15, so you'll have the two :)

IRC, freenode, #hurd, 2013-07-02

In context of mondriaan memory protection.

<xscript> BTW, it's not like I have an infinite amount of time for this,
  but having 64-bit support would be valuable for me, so I might contribute
  that back if it's not a too monumental task
<xscript> I saw some discussions about 32bit apps on top of 64bit mach, but
  I'd like a full 64bit system
<xscript> any clues?
<xscript> I suppose the compiler support is all there already
<xscript> is MIG (and mach) the only piece missing?
<braunr> the problem is the interfaces themselves
<braunr> type widths
<braunr> as passed between userspace and kernel

IRC, OFTC, #debian-hurd, 2013-10-05

<dharc> and what about 64 bit support, almost done?
<youpi> kernel part is done
<youpi> MIG 32/64 trnaslation missing

mig portable rpc declarations.