Port-xen archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Call for testing: Xen 4.0



A couple of other notes:

=====
Since Xen 4.0 is "out" now, we probably want the xen-4.0-testing.hg trunk instead:

hg clone http://xenbits.xensource.com/xen-4.0-testing.hg

Or probably the release from: http://bits.xensource.com/oss-xen/release/4.0.0/xen-4.0.0.tar.gz
=====

=====
As Adam mentioned, it wants git installed also
=====

=====
It also wants sysutils/acpica-utils installed (the pkgsrc version is slightly older than the latest, I hacked my pkgsrc copy up to use the latest).

One gotcha: sysutils/acpica-utils installs the binary 'acpi-iasl'.  Xen looks for 'iasl'.  You can either change tools/firmware/hvmloader/acpi/Makefile or symlink it.
=====

=====
tools/blktap2 is enabled for NetBSD, however a lot of the files in that directory rely on strnlen(), which isn't supplied in NetBSD.  I tried linking them against the copy in xen/common/string.o, but that failed:

ld: vhd-util: hidden symbol `strnlen' in ../../../xen/common/string.o is referenced by DSO
ld: final link failed: Nonrepresentable section on output

I'm probably doing something stupid there.
=====

=====
PCI passthrough doesn't seem to work, even with sysutils/pciutils installed:

gmake[4]: Entering directory `/root/xen-4.0-testing.hg/tools/ioemu-remote/i386-dm'
../xen-hooks.mak:56: === pciutils-dev package not found - missing /usr/include/pci
../xen-hooks.mak:57: === PCI passthrough capability has been disabled
../xen-hooks.mak:56: === pciutils-dev package not found - missing /usr/include/pci
../xen-hooks.mak:57: === PCI passthrough capability has been disabled

I don't have VT-i anyways...
=====

=====
It looks for SDL (devel/SDL), but I'm not sure what having that enables? I'm guessing this is for people running X11 in their dom0.
=====

=====
The xc extension in tools/python blows up:

building 'xc' extension
gcc -DNDEBUG -O2 -O2 -pipe -w -march=k8 -DHAVE_DB_185_H -I/usr/include -I/usr/pkg/include -O2 -fomit-frame-pointer -m64 -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF .buildpy.d -fPIC -I../../tools/libxc -I../../tools/xenstore -I../../tools/include -Ixen/lowlevel/xc -I/usr/pkg/include/python2.6 -c xen/lowlevel/xc/xc.c -o build/temp.netbsd-5.0_STABLE-amd64-2.6/xen/lowlevel/xc/xc.o -fno-strict-aliasing -Werror
xen/lowlevel/xc/xc.c: In function 'pyxc_vcpu_setaffinity':
xen/lowlevel/xc/xc.c:253: error: too many arguments to function 'xc_vcpu_setaffinity'
xen/lowlevel/xc/xc.c: In function 'pyxc_vcpu_getinfo':
xen/lowlevel/xc/xc.c:402: error: too many arguments to function 'xc_vcpu_getaffinity'
xen/lowlevel/xc/xc.c: In function 'pyxc_hvm_build':
xen/lowlevel/xc/xc.c:948: error: 'HVM_MAX_VCPUS' undeclared (first use in this function)
xen/lowlevel/xc/xc.c:948: error: (Each undeclared identifier is reported only once
xen/lowlevel/xc/xc.c:948: error: for each function it appears in.)
xen/lowlevel/xc/xc.c:1001: error: 'struct hvm_info_table' has no member named 'vcpu_online'
xen/lowlevel/xc/xc.c: In function 'pyxc_physinfo':
xen/lowlevel/xc/xc.c:1195: error: 'xc_physinfo_t' has no member named 'max_node_id'
xen/lowlevel/xc/xc.c:1233: error: 'xc_physinfo_t' has no member named 'max_node_id'
xen/lowlevel/xc/xc.c: In function 'pyxc_xeninfo':
xen/lowlevel/xc/xc.c:1262: error: 'xen_commandline_t' undeclared (first use in this function)
xen/lowlevel/xc/xc.c:1262: error: expected ';' before 'xen_commandline'
xen/lowlevel/xc/xc.c:1284: error: 'XENVER_commandline' undeclared (first use in this function)
xen/lowlevel/xc/xc.c:1284: error: 'xen_commandline' undeclared (first use in this function)
error: command 'gcc' failed with exit status 1
gmake[3]: *** [buildpy] Error 1
=====

This, alas, is as far as I got tonight.

-Dustin

On Fri, Apr 9, 2010 at 3:39 PM, Dustin Marquess <dmarquess%gmail.com@localhost> wrote:
On Mon, Mar 8, 2010 at 2:17 PM, Adam Hamsik <haaaad%gmail.com@localhost> wrote:
Hi,

1) There is a problem during xen kernel link
rc/xen-unstable.hg/xen/Rules.mk -C arch/x86 /root/src/xen-unstable.hg/xen/xen
gmake[3]: Entering directory `/root/src/xen-unstable.hg/xen/arch/x86'
gmake -f /root/src/xen-unstable.hg/xen/Rules.mk -C /root/src/xen-unstable.hg/xen/arch/x86/boot built_in.o
gmake[4]: Entering directory `/root/src/xen-unstable.hg/xen/arch/x86/boot'
RELOC= gmake -f build32.mk reloc.S
gmake[5]: Entering directory `/root/src/xen-unstable.hg/xen/arch/x86/boot'
gcc  -O1 -fno-omit-frame-pointer -fno-optimize-sibling-calls -m32 -march=i686 -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement  -fno-stack-protector -Werror -fno-builtin -msoft-float -c reloc.c -o reloc.o
ld -melf_i386 -N -Ttext  -o reloc.lnk reloc.o
ld: invalid hex number `-o'
gmake[5]: *** [reloc.lnk] Error 1
gmake[5]: Leaving directory `/root/src/xen-unstable.hg/xen/arch/x86/boot'
gmake[4]: *** [reloc.S] Error 2
gmake[4]: Leaving directory `/root/src/xen-unstable.hg/xen/arch/x86/boot'
gmake[3]: *** [/root/src/xen-unstable.hg/xen/arch/x86/boot/built_in.o] Error 2
gmake[3]: Leaving directory `/root/src/xen-unstable.hg/xen/arch/x86'
gmake[2]: *** [/root/src/xen-unstable.hg/xen/xen] Error 2
gmake[2]: Leaving directory `/root/src/xen-unstable.hg/xen'
gmake[1]: *** [install] Error 2
gmake[1]: Leaving directory `/root/src/xen-unstable.hg/xen'

This problem is xen/arch/x86/boot/build32.mk calls ld with:

-Ttext $(RELOC) -o

RELOC is set in xen/arch/x86/boot/Makefile to $(BOOT_TRAMPOLINE), which is also set in that file:

BOOT_TRAMPOLINE := $(shell sed -n 's,^\#define[[:space:]]\+BOOT_TRAMPOLINE[[:space:]]\+,,p' $(BASEDIR)/include/asm-x86/config.h)

NetBSD's core 'sed' doesn't seem to like that.  Using gsed seems to work.

So there's 3 fixes:

1) Change sed to gsed and make gsed a requirement (seems icky)
2) Hard-code BOOT_TRAMPOLINE to 0x88000 (seems ickier)
3) Fix the sed invocation to make it core NetBSD sed friendly.  This seems like the right solution, but beyond my sed knowledge.  Any takers?

-Dustin
 



Home | Main Index | Thread Index | Old Index