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