AMD64 support updates
Matthew Dillon
dillon at apollo.backplane.com
Wed Apr 1 18:19:33 PDT 2009
I fixed the %fs issue and implemented the signal code. I also
implemented the Elf_* type changes Jordan pointed out to me.
Dynamic binaries still seg-fault, but now they all seg-fault
very consistently so the remaining issues are probably something
related to ELF relocation by the RTLD.
Currently the kernel is coded to kprintf the fault address and the
instruction address when a user program seg-faults, to help us figure
out what's wrong.
---
NOTE: Issues with /usr/src/test/amd64. The Makefile will build the
64 bit image and set up and run qemu, etc. However, the boot code is
built by the cross compiler and the result does not work. To fix
this you can use the following sequence after you have constructed
the image:
cd /usr/src/test/amd64
make mount
pushd /usr/src/sys/boot
make clean
make obj
make
make install DESTDIR=$QEMUDIR/root
popd
i.e. you build and install native-build boot code, which is 32 bits but
which is perfectly capable of booting a 64 bit kernel.
I would like to get the boot code to properly compile in the
cross development environment.
-Matt
More information about the Kernel
mailing list