Opened 11 years ago

Last modified 11 years ago

#9912 closed bug

virtio_pci causes jam quit, in Haiku x86_64 — at Version 10

Reported by: Luposian Owned by: korli
Priority: normal Milestone: R1
Component: - General Version: R1/Development
Keywords: Cc: xyzzy
Blocked By: Blocking:
Platform: x86-64

Description (last modified by diver)

The Jam goes along fine, until it gets to virtio_pci and then it spews out a few errors and stops. If you need a picture, I have one. I just need to upload it from my Windows system. I'm in Haiku x86_64 right now and Screenshot doesn't work and I can't pull the image out of Cox Email.

Change History (11)

by Luposian, 11 years ago

Attachment: vertio crash.JPG added

Vertio_pci crash

comment:1 by Luposian, 11 years ago

I just uploaded the vertio_pci crash image.

comment:2 by Luposian, 11 years ago

I downloaded hrev46016 of Haiku x86_64 from HaikuFiles and installed it (Sept. 4, 2013).

I then downloaded the buildtools and the haiku directory from the following paths:

Buildtools: git clone git://git.haiku-os.org/buildtools haiku/buildtools

Haiku: git clone git://git.haiku-os.org/haiku haiku/haiku

I then did this (all at separate prompts, but copy and pasting automatically does this for me, in Terminal):

cd haiku/buildtools/jam make ./jam0 install

Then this:

cd ../../haiku

And this:

./configure

And, finally, this:

jam -q haiku-image

And, after several minutes of compiling stuff, JAM gives me the following spew and stops:

MkDir1 generated/objects/haiku/x86_64/release/add-ons/kernel/busses/virtio C++ generated/objects/haiku/x86_64/release/add-ons/kernel/busses/virtio/virtio_pci.o src/add-ons/kernel/busses/virtio/virtio_pci.cpp: In function 'status_t init_bus(device_node*, void)': src/add-ons/kernel/busses/virtio/virtio_pci.cpp:410:11: warning: unused variable 'status' [-Wunused-variable] C++ generated/objects/haiku/x86_64/release/add-ons/kernel/busses/virtio/kernel_cpp.o Link generated/objects/haiku/x86_64/release/add-ons/kernel/busses/virtio/virtio_pci generated/objects/haiku/x86_64/release/add-ons/kernel/busses/virtio/virtio_pci.o: In function `uninit_bus(void*)': virtio_pci.cpp:(.text+0x46e): undefined reference to `operator delete[](void*)' generated/objects/haiku/x86_64/release/add-ons/kernel/busses/virtio/virtio_pci.o: In function `setup_interrupt(void*, unsigned short)': virtio_pci.cpp:(.text+0xa82): undefined reference to `operator new[](unsigned long, std::nothrow_t const&)' collect2: ld returned 1 exit status

rm -f "generated/objects/haiku/x86_64/release/add-ons/kernel/busses/virtio/virtio_pci" gcc -fno-strict-aliasing -fno-tree-vrp -Wno-array-bounds -Xlinker --no-undefined -nostdlib -Xlinker --no-undefined -Xlinker -soname="virtio_pci" -z max-page-size=0x1000 -o "generated/objects/haiku/x86_64/release/add-ons/kernel/busses/virtio/virtio_pci" "/boot/develop/abi/x86_64/gcc4/tools/gcc-4.6.2-haiku-120816/lib/gcc/x86_64-unknown-haiku/4.6.2/crtbegin.o" "generated/objects/haiku/x86_64/release/system/glue/haiku_version_glue.o" "generated/objects/haiku/x86_64/release/add-ons/kernel/busses/virtio/virtio_pci.o" "generated/objects/haiku/x86_64/release/add-ons/kernel/busses/virtio/kernel_cpp.o" \ "generated/objects/haiku/x86_64/release/system/kernel/kernel.so" "/boot/develop/abi/x86_64/gcc4/tools/gcc-4.6.2-haiku-120816/lib/gcc/x86_64-unknown-haiku/4.6.2/libgcc.a" "/boot/develop/abi/x86_64/gcc4/tools/gcc-4.6.2-haiku-120816/lib/gcc/x86_64-unknown-haiku/4.6.2/crtend.o" \

...failed Link generated/objects/haiku/x86_64/release/add-ons/kernel/busses/virtio/virtio_pci ...

BUILD FAILURE: ...failed updating 1 target(s)... ...skipped 2 target(s)... ...updated 644 target(s)... ~/haiku/haiku>

comment:3 by korli, 11 years ago

FWIW your buildtools are too old (gcc 4.6.2 vs 4.7.3).

comment:4 by diver, 11 years ago

Cc: xyzzy added

AFAIK we do not have gcc 4.7.3 package for x86-64 yet.

comment:5 by diver, 11 years ago

Version: R1/alpha4.1R1/Development

comment:6 by bonefish, 11 years ago

I believe the issue is that virtio_pci is not linked against $(HAIKU_KERNEL_LIBSUPC++).

Regarding gcc 4.7.3, Oliver has already built a respective HPKG for x86-64. Since we plan to merge in a few days, it's probably not worth investing the time to build an optional package.

comment:7 by Luposian, 11 years ago

The "Haiku x86_64 on Haiku x86_64" build broke quite awhile back. I was able to build Haiku x86_64 within my Haiku x86_64 no problem until then. What happened and why? If no one is doing what I'm doing (and they're all using Ubuntu or another environment to build Haiku x86_64), that explains why no one has complained or seen this problem. But is this a problem that was accidentally introduced (from the outside) to the build and no one noticed, or was this a problem that slipped in, due to code updates that made the x86_64 build no longer compatible within Haiku x86_64? Hope I'm making sense...

comment:8 by Luposian, 11 years ago

Oh, and speaking of which... what, exactly IS... "vertio_pci", anyways? "Virtual I/O PCI" or...? Never heard of it. Is it a recent addition? Or is it just one of those things that's been around a long time, but you never NOTICE it, unless something goes wonky like this? :-D

comment:9 by diver, 11 years ago

To learn more about virtio stuff take a look at http://wiki.libvirt.org/page/Virtio. If you absolutely need to compile it now and you can't wait until package management branch is merged you can simply comment out virtio_pci module in your local HaikuImage file and jam -q haiku-image.

BTW, you rarely need the following step if you build Haiku from within Haiku, as jam is almost always up to date:

cd haiku/buildtools/jam
make
./jam0 install

comment:10 by diver, 11 years ago

Description: modified (diff)
Owner: changed from nobody to korli
Status: newassigned
Summary: Vertio_pci causes Jam quit, in Haiku x86_64virtio_pci causes jam quit, in Haiku x86_64
Note: See TracTickets for help on using tickets.