Message ID | 1464343604-517-1-git-send-email-pbonzini@redhat.com |
---|---|
State | New |
Headers | show |
On 27 May 2016 at 11:06, Paolo Bonzini <pbonzini@redhat.com> wrote: > The following changes since commit b75536c9fa742f887304769d0608557bb8e3a27f: > > blockjob: Remove BlockJob.bs (2016-05-25 19:04:21 +0200) > > are available in the git repository at: > > git://github.com/bonzini/qemu.git tags/for-upstream > > for you to fetch changes up to 7052033834d4c2d7ade147cf5b045be6eaf07113: > > exec: hide mr->ram_addr from qemu_get_ram_ptr users (2016-05-27 11:55:23 +0200) > > ---------------------------------------------------------------- > * docs/atomics fixes and atomic_rcu_* optimization (Emilio) > * NBD bugfix (Eric) > * Memory fixes and cleanups (Paolo, Paul) > * scsi-block support for SCSI status, including persistent > reservations (Paolo) > * linuxboot support for fw_cfg DMA (Marc, Richard Jones) > * kvm_stat moves to the Linux repository > * SCSI bug fixes (Peter, Prasad) > * Killing qemu_char_get_next_serial, non-ARM parts (Xiaoqiang) Hi; this fails to build for w32: CC optionrom/linuxboot_dma.o Building optionrom/linuxboot_dma.img linuxboot_dma.o:linuxboot_dma.c:(.text+0x57): undefined reference to `load_kernel' thanks -- PMM
On 27 May 2016 at 13:53, Peter Maydell <peter.maydell@linaro.org> wrote: > On 27 May 2016 at 11:06, Paolo Bonzini <pbonzini@redhat.com> wrote: >> The following changes since commit b75536c9fa742f887304769d0608557bb8e3a27f: >> >> blockjob: Remove BlockJob.bs (2016-05-25 19:04:21 +0200) >> >> are available in the git repository at: >> >> git://github.com/bonzini/qemu.git tags/for-upstream >> >> for you to fetch changes up to 7052033834d4c2d7ade147cf5b045be6eaf07113: >> >> exec: hide mr->ram_addr from qemu_get_ram_ptr users (2016-05-27 11:55:23 +0200) >> >> ---------------------------------------------------------------- >> * docs/atomics fixes and atomic_rcu_* optimization (Emilio) >> * NBD bugfix (Eric) >> * Memory fixes and cleanups (Paolo, Paul) >> * scsi-block support for SCSI status, including persistent >> reservations (Paolo) >> * linuxboot support for fw_cfg DMA (Marc, Richard Jones) >> * kvm_stat moves to the Linux repository >> * SCSI bug fixes (Peter, Prasad) >> * Killing qemu_char_get_next_serial, non-ARM parts (Xiaoqiang) > > Hi; this fails to build for w32: > > CC optionrom/linuxboot_dma.o > Building optionrom/linuxboot_dma.img > linuxboot_dma.o:linuxboot_dma.c:(.text+0x57): undefined reference to > `load_kernel' With V=1: i686-w64-mingw32-ld -m i386pe -Ttext 0 -e _start -s -o linuxboot_dma.img linuxboot_dma.o linuxboot_dma.o:linuxboot_dma.c:(.text+0x57): undefined reference to `load_kernel' Building an image for the target using our host compiler seems like an odd choice, but the makefile obviously intends to support it since it has specific ifdef CONFIG_WIN32 code to adjust the linker command line. I suspect this is a mismatch between the symbol the native asm is using and the one that the C compiler wants: $ nm build/w32-new/pc-bios/optionrom/linuxboot_dma.o |grep load_kernel 000005dd T _load_kernel U load_kernel since name mangling rules are different for Linux and Windows ABIs. thanks -- PMM