φ(・・*)ゞ ウーン
ppt.cのコンパイル通したけどホントにこれで動くのかは別の話(´・ω・`)
やったのはFreeBSDスタイルのpci_alloc_msi()とpci_alloc_msix()をDragonFlyの方式に合わせてみたのと、msi、msixの構造体をちょっと変えてvoidポインタを使っていたcookie変数をlwkt_serialize_tにした程度。
次はvdev.cだけどこれ直すのは簡単そう。
-------------------------------------------------------------- >>> Kernel build for BHYVE started on Tue Jul 10 00:21:54 JST 2012 -------------------------------------------------------------- ===> BHYVE cd /usr/src/sys/config; PATH=/usr/obj/usr/src/ctools_x86_64_x86_64/usr/sbin:/usr/obj/usr/src/ctools_x86_64_x86_64/usr/bin:/usr/obj/usr/src/ctools_x86_64_x86_64/bin:/usr/obj/usr/src/ctools_x86_64_x86_64/usr/games:/usr/obj/usr/src/btools_x86_64/usr/sbin:/usr/obj/usr/src/btools_x86_64/usr/bin:/usr/obj/usr/src/btools_x86_64/bin:/usr/obj/usr/src/btools_x86_64/usr/games:/usr/pkg/bin config -d /usr/obj/usr/src/sys/BHYVE /usr/src/sys/config/BHYVE Kernel build directory is /usr/obj/usr/src/sys/BHYVE cd /usr/obj/usr/src/sys/BHYVE; MAKEOBJDIRPREFIX=/usr/obj/usr/src/world_x86_64 OBJTREE=/usr/obj MACHINE_ARCH=x86_64 MACHINE=x86_64 MACHINE_PLATFORM=pc64 OBJFORMAT_PATH=/usr/obj/usr/src/ctools_x86_64_x86_64 HOST_CCVER=gcc44 CCVER=gcc44 BINUTILSVER=binutils221 DESTDIR=/usr/obj/usr/src/world_x86_64 INSTALL="sh /usr/src/tools/install.sh" PATH=/usr/obj/usr/src/ctools_x86_64_x86_64/usr/sbin:/usr/obj/usr/src/ctools_x86_64_x86_64/usr/bin:/usr/obj/usr/src/ctools_x86_64_x86_64/bin:/usr/obj/usr/src/ctools_x86_64_x86_64/usr/games:/usr/obj/usr/src/btools_x86_64/usr/sbin:/usr/obj/usr/src/btools_x86_64/usr/bin:/usr/obj/usr/src/btools_x86_64/bin:/usr/obj/usr/src/btools_x86_64/usr/games:/usr/pkg/bin make KERNEL=kernel all cc -c -O -pipe -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wold-style-definition -std=c99 -Wold-style-declaration -g -nostdinc -I. -Iinclude -I/usr/src/sys -I/usr/src/sys/../include -I/usr/obj/usr/src/sys/BHYVE -I"/usr/src/sys/dev/acpica5" -I"/usr/src/sys/contrib/dev/acpica-unix/include" -I/usr/src/sys/dev/netif/ath/hal -I/usr/src/sys/dev/netif/ath/hal/ath_hal -D_KERNEL -include opt_global.h -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -fno-common -ffreestanding -mpreferred-stack-boundary=4 -fno-stack-protector -mcmodel=kernel -mno-red-zone -mfpmath=387 -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -mno-ssse3 -mno-sse4.1 -mno-sse4.2 -mno-sse4 -mno-sse4a -mno-sse5 -mno-abm -mno-aes -mno-avx -mno-pclmul -mno-popcnt -msoft-float -fno-asynchronous-unwind-tables -fno-omit-frame-pointer /usr/src/sys/platform/pc64/vmm/io/ppt.c -Werror cc -c -O -pipe -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wold-style-definition -std=c99 -Wold-style-declaration -g -nostdinc -I. -Iinclude -I/usr/src/sys -I/usr/src/sys/../include -I/usr/obj/usr/src/sys/BHYVE -I"/usr/src/sys/dev/acpica5" -I"/usr/src/sys/contrib/dev/acpica-unix/include" -I/usr/src/sys/dev/netif/ath/hal -I/usr/src/sys/dev/netif/ath/hal/ath_hal -D_KERNEL -include opt_global.h -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -fno-common -ffreestanding -mpreferred-stack-boundary=4 -fno-stack-protector -mcmodel=kernel -mno-red-zone -mfpmath=387 -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -mno-ssse3 -mno-sse4.1 -mno-sse4.2 -mno-sse4 -mno-sse4a -mno-sse5 -mno-abm -mno-aes -mno-avx -mno-pclmul -mno-popcnt -msoft-float -fno-asynchronous-unwind-tables -fno-omit-frame-pointer /usr/src/sys/platform/pc64/vmm/io/vdev.c -Werror /usr/src/sys/platform/pc64/vmm/io/vdev.c:30: error: expected declaration specifiers or '...' before string constant cc1: warnings being treated as errors /usr/src/sys/platform/pc64/vmm/io/vdev.c:30: error: data definition has no type or storage class /usr/src/sys/platform/pc64/vmm/io/vdev.c:30: error: type defaults to 'int' in declaration of '__FBSDID' /usr/src/sys/platform/pc64/vmm/io/vdev.c:30: error: function declaration isn't a prototype /usr/src/sys/platform/pc64/vmm/io/vdev.c: In function 'vdev_system_event': /usr/src/sys/platform/pc64/vmm/io/vdev.c:87: error: implicit declaration of function 'printf' /usr/src/sys/platform/pc64/vmm/io/vdev.c:87: error: nested extern declaration of 'printf' /usr/src/sys/platform/pc64/vmm/io/vdev.c: In function 'vdev_vm_cleanup': /usr/src/sys/platform/pc64/vmm/io/vdev.c:131: error: implicit declaration of function 'free' /usr/src/sys/platform/pc64/vmm/io/vdev.c:131: error: nested extern declaration of 'free' /usr/src/sys/platform/pc64/vmm/io/vdev.c: In function 'vdev_register': /usr/src/sys/platform/pc64/vmm/io/vdev.c:140: error: implicit declaration of function 'malloc' /usr/src/sys/platform/pc64/vmm/io/vdev.c:140: error: nested extern declaration of 'malloc' /usr/src/sys/platform/pc64/vmm/io/vdev.c:140: error: assignment makes pointer from integer without a cast /usr/src/sys/platform/pc64/vmm/io/vdev.c: In function 'vdev_register_region': /usr/src/sys/platform/pc64/vmm/io/vdev.c:207: error: assignment makes pointer from integer without a cast *** Error code 1 Stop in /usr/obj/usr/src/sys/BHYVE. *** Error code 1 Stop in /usr/src. *** Error code 1 Stop in /usr/src.