Message ID | 20180621143715.27176-1-richard.henderson@linaro.org |
---|---|
State | New |
Headers | show |
On 21 June 2018 at 15:37, Richard Henderson <richard.henderson@linaro.org> wrote: > Re-issuing the v2 pull request with the proper form. > > > r~ > > > The following changes since commit 42747d6abb5035473e5585fa17620c1e8983a70b: > > Merge remote-tracking branch 'remotes/edgar/tags/edgar/xilinx-next-2018-06-15.for-upstream' into staging (2018-06-15 17:28:37 +0100) > > are available in the Git repository at: > > https://github.com/rth7680/qemu.git tags/pull-tcg-20180615 > > for you to fetch changes up to 9f754620651d3432114f4bb89c7f12cbea814b3e: > > tcg: Reduce max TB opcode count (2018-06-15 09:39:53 -1000) > > ---------------------------------------------------------------- > TCG patch queue: > > Workaround macos assembler lossage. > Eliminate tb_lock. > Fix TB code generation overflow. > Applied, thanks. -- PMM
On 22 June 2018 at 09:58, Peter Maydell <peter.maydell@linaro.org> wrote: > On 21 June 2018 at 15:37, Richard Henderson > <richard.henderson@linaro.org> wrote: >> The following changes since commit 42747d6abb5035473e5585fa17620c1e8983a70b: >> >> Merge remote-tracking branch 'remotes/edgar/tags/edgar/xilinx-next-2018-06-15.for-upstream' into staging (2018-06-15 17:28:37 +0100) >> >> are available in the Git repository at: >> >> https://github.com/rth7680/qemu.git tags/pull-tcg-20180615 >> >> for you to fetch changes up to 9f754620651d3432114f4bb89c7f12cbea814b3e: >> >> tcg: Reduce max TB opcode count (2018-06-15 09:39:53 -1000) >> >> ---------------------------------------------------------------- >> TCG patch queue: >> >> Workaround macos assembler lossage. >> Eliminate tb_lock. >> Fix TB code generation overflow. >> > Applied, thanks. ...looks like it's broken builds with --disable-tcg, though. Travis builds with that config fail: /home/travis/build/qemu/qemu/accel/stubs/tcg-stub.c:24:6: error: no previous prototype for "tb_unlock" [-Werror=missing-prototypes] void tb_unlock(void) ^ cc1: all warnings being treated as errors (sample failing job log: https://api.travis-ci.org/v3/job/395399220/log.txt) Should just be a matter of deleting the stub function, I guess. thanks -- PMM
On 22 June 2018 at 13:46, Peter Maydell <peter.maydell@linaro.org> wrote: > On 22 June 2018 at 09:58, Peter Maydell <peter.maydell@linaro.org> wrote: >> On 21 June 2018 at 15:37, Richard Henderson >> <richard.henderson@linaro.org> wrote: >>> The following changes since commit 42747d6abb5035473e5585fa17620c1e8983a70b: >>> >>> Merge remote-tracking branch 'remotes/edgar/tags/edgar/xilinx-next-2018-06-15.for-upstream' into staging (2018-06-15 17:28:37 +0100) >>> >>> are available in the Git repository at: >>> >>> https://github.com/rth7680/qemu.git tags/pull-tcg-20180615 >>> >>> for you to fetch changes up to 9f754620651d3432114f4bb89c7f12cbea814b3e: >>> >>> tcg: Reduce max TB opcode count (2018-06-15 09:39:53 -1000) >>> >>> ---------------------------------------------------------------- >>> TCG patch queue: >>> >>> Workaround macos assembler lossage. >>> Eliminate tb_lock. >>> Fix TB code generation overflow. >>> >> Applied, thanks. > > ...looks like it's broken builds with --disable-tcg, though. > Travis builds with that config fail: > > /home/travis/build/qemu/qemu/accel/stubs/tcg-stub.c:24:6: error: no > previous prototype for "tb_unlock" [-Werror=missing-prototypes] > void tb_unlock(void) > ^ > cc1: all warnings being treated as errors > > (sample failing job log: https://api.travis-ci.org/v3/job/395399220/log.txt) > > Should just be a matter of deleting the stub function, I guess. Hmm, not quite that easy. After that the link fails: LINK x86_64-softmmu/qemu-system-x86_64 exec.o: In function `tlb_reset_dirty_range_all': /home/petmay01/linaro/qemu-from-laptop/qemu/exec.c:1334: undefined reference to `tlb_reset_dirty' exec.o: In function `memory_notdirty_write_complete': /home/petmay01/linaro/qemu-from-laptop/qemu/exec.c:2658: undefined reference to `page_collection_unlock' exec.o: In function `tcg_commit': /home/petmay01/linaro/qemu-from-laptop/qemu/exec.c:3052: undefined reference to `cpu_reloading_memory_map' cpus.o: In function `tcg_cpu_exec': /home/petmay01/linaro/qemu-from-laptop/qemu/cpus.c:1362: undefined reference to `cpu_exec' cpus.o: In function `qemu_tcg_rr_cpu_thread_fn': /home/petmay01/linaro/qemu-from-laptop/qemu/cpus.c:1401: undefined reference to `tcg_register_thread' /home/petmay01/linaro/qemu-from-laptop/qemu/cpus.c:1471: undefined reference to `cpu_exec_step_atomic' cpus.o: In function `qemu_tcg_cpu_thread_fn': /home/petmay01/linaro/qemu-from-laptop/qemu/cpus.c:1637: undefined reference to `tcg_register_thread' /home/petmay01/linaro/qemu-from-laptop/qemu/cpus.c:1673: undefined reference to `cpu_exec_step_atomic' cpus.o: In function `qemu_tcg_init_vcpu': /home/petmay01/linaro/qemu-from-laptop/qemu/cpus.c:1865: undefined reference to `tcg_region_init' /home/petmay01/linaro/qemu-from-laptop/qemu/cpus.c:1875: undefined reference to `parallel_cpus' Some of those are probably best handled with stub functions (eg tcg_register_thread()), but some of them might be better off handled by guarding functions with #ifndef CONFIG_TCG or moving them to source files in accel/tcg ? This is probably best fixed by somebody familiar with the commits in question... thanks -- PMM
On Fri, Jun 22, 2018 at 15:40:33 +0100, Peter Maydell wrote: (snip) > /home/petmay01/linaro/qemu-from-laptop/qemu/cpus.c:1637: undefined > reference to `tcg_register_thread' > /home/petmay01/linaro/qemu-from-laptop/qemu/cpus.c:1673: undefined > reference to `cpu_exec_step_atomic' > cpus.o: In function `qemu_tcg_init_vcpu': > /home/petmay01/linaro/qemu-from-laptop/qemu/cpus.c:1865: undefined > reference to `tcg_region_init' > /home/petmay01/linaro/qemu-from-laptop/qemu/cpus.c:1875: undefined > reference to `parallel_cpus' > > Some of those are probably best handled with stub functions > (eg tcg_register_thread()), but some of them might be better > off handled by guarding functions with #ifndef CONFIG_TCG > or moving them to source files in accel/tcg ? > > This is probably best fixed by somebody familiar with the > commits in question... Just sent a patch that fixes the --disable-tcg build for me, tested for x86_64-softmmu and i386-softmmu targets. However, I'm puzzled by the fact that I cannot replicate all of the link errors you report above. My build (tried with gcc 5.4.0 and 8.1.0) completes even though I don't see how some symbols are resolved (I don't see them in the final binary), e.g. tcg_register_thread(). Is the compiler somehow determining that it doesn't need those? Thanks, Emilio