Message ID | 20200916142004.27429-1-cfontana@suse.de |
---|---|
Headers | show |
Series | QEMU cpus.c refactoring part2 | expand |
On 9/16/20 7:19 AM, Claudio Fontana wrote: > Motivation and higher level steps: > > https://lists.gnu.org/archive/html/qemu-devel/2020-05/msg04628.html > > Current state is mostly all reviewed, but I include here a few resolutions > of rebasing conflicts and a new patch to use current_machine instead of > qdev_get_machine in softmmu context. > > It's minor, but if additional reviewing is necessary, here is the whole series again. > > CI is all green, and also available at https://github.com/hw-claudio/qemu.git "cpus-refactoring" > > The following changes since commit 5a77bbb53b087f95dbba7ce30b02ac2d7b147a3a: > > iotests: Work around failing readlink -f (2020-09-15 18:19:26 +0200) > > are available in the Git repository at: > > https://github.com/hw-claudio/qemu.git > > for you to fetch changes up to f9ec667595537400a6bc0aaf094a5ca6bbaacf44: > > accel/tcg: use current_machine as it is always set for softmmu (2020-09-15 18:19:27 +0200) Queuing this to tcg-next, with Phil's suggested change to current_machine in the final patch. r~
On 18/09/20 21:00, Richard Henderson wrote: > On 9/16/20 7:19 AM, Claudio Fontana wrote: >> Motivation and higher level steps: >> >> https://lists.gnu.org/archive/html/qemu-devel/2020-05/msg04628.html >> >> Current state is mostly all reviewed, but I include here a few resolutions >> of rebasing conflicts and a new patch to use current_machine instead of >> qdev_get_machine in softmmu context. >> >> It's minor, but if additional reviewing is necessary, here is the whole series again. >> >> CI is all green, and also available at https://github.com/hw-claudio/qemu.git "cpus-refactoring" >> >> The following changes since commit 5a77bbb53b087f95dbba7ce30b02ac2d7b147a3a: >> >> iotests: Work around failing readlink -f (2020-09-15 18:19:26 +0200) >> >> are available in the Git repository at: >> >> https://github.com/hw-claudio/qemu.git >> >> for you to fetch changes up to f9ec667595537400a6bc0aaf094a5ca6bbaacf44: >> >> accel/tcg: use current_machine as it is always set for softmmu (2020-09-15 18:19:27 +0200) > > Queuing this to tcg-next, with Phil's suggested change to current_machine in > the final patch. This doesn't apply anymore, but I've fixed it up because I had it as a prerequisite for my next pull request. If you want, I can shepherd it too. Paolo
On 9/25/20 3:09 PM, Paolo Bonzini wrote: > On 18/09/20 21:00, Richard Henderson wrote: >> On 9/16/20 7:19 AM, Claudio Fontana wrote: >>> Motivation and higher level steps: >>> >>> https://lists.gnu.org/archive/html/qemu-devel/2020-05/msg04628.html >>> >>> Current state is mostly all reviewed, but I include here a few resolutions >>> of rebasing conflicts and a new patch to use current_machine instead of >>> qdev_get_machine in softmmu context. >>> >>> It's minor, but if additional reviewing is necessary, here is the whole series again. >>> >>> CI is all green, and also available at https://github.com/hw-claudio/qemu.git "cpus-refactoring" >>> >>> The following changes since commit 5a77bbb53b087f95dbba7ce30b02ac2d7b147a3a: >>> >>> iotests: Work around failing readlink -f (2020-09-15 18:19:26 +0200) >>> >>> are available in the Git repository at: >>> >>> https://github.com/hw-claudio/qemu.git >>> >>> for you to fetch changes up to f9ec667595537400a6bc0aaf094a5ca6bbaacf44: >>> >>> accel/tcg: use current_machine as it is always set for softmmu (2020-09-15 18:19:27 +0200) >> >> Queuing this to tcg-next, with Phil's suggested change to current_machine in >> the final patch. > > This doesn't apply anymore, but I've fixed it up because I had it as a > prerequisite for my next pull request. If you want, I can shepherd it too. > > Paolo > Hi, if it is helpful I just rebased on latest master and pushed to https://github.com/hw-claudio/qemu.git branch: "cpus-refactoring" The following changes since commit d4277402b5e4645e4c7706a3221f8acd3f1a50f7: tests: add missing genh dependency (2020-09-25 14:10:56 +0200) are available in the Git repository at: https://github.com/hw-claudio/qemu.git for you to fetch changes up to 4822a683c261c249e46d26cd65ff37cc1e1cfb94: accel/tcg: use current_machine as it is always set for softmmu (2020-09-25 17:34:07 +0200) ---------------------------------------------------------------- Claudio Fontana (17): cpu-timers, icount: new modules icount: rename functions to be consistent with the module name cpus: prepare new CpusAccel cpu accelerator interface cpus: extract out TCG-specific code to accel/tcg cpus: extract out qtest-specific code to accel/qtest cpus: extract out kvm-specific code to accel/kvm cpus: extract out hax-specific code to target/i386/ cpus: extract out whpx-specific code to target/i386/ cpus: extract out hvf-specific code to target/i386/hvf/ cpus: cleanup now unneeded includes cpus: remove checks for non-NULL cpus_accel cpus: add handle_interrupt to the CpusAccel interface hvf: remove hvf specific functions from global includes whpx: remove whpx specific functions from global includes hax: remove hax specific functions from global includes kvm: remove kvm specific functions from global includes accel/tcg: use current_machine as it is always set for softmmu MAINTAINERS | 5 +- accel/kvm/kvm-all.c | 14 +- accel/kvm/kvm-cpus.c | 88 +++ accel/kvm/kvm-cpus.h | 24 + accel/kvm/meson.build | 5 +- accel/meson.build | 2 +- accel/qtest/meson.build | 7 + accel/qtest/qtest-cpus.c | 91 +++ accel/qtest/qtest-cpus.h | 17 + accel/{ => qtest}/qtest.c | 13 +- accel/stubs/hax-stub.c | 10 - accel/stubs/hvf-stub.c | 30 - accel/stubs/kvm-stub.c | 23 - accel/stubs/meson.build | 2 - accel/stubs/whpx-stub.c | 47 -- accel/tcg/cpu-exec.c | 43 +- accel/tcg/meson.build | 2 +- accel/tcg/tcg-all.c | 42 +- accel/tcg/tcg-cpus.c | 579 ++++++++++++++ accel/tcg/tcg-cpus.h | 17 + accel/tcg/translate-all.c | 3 +- dma-helpers.c | 4 +- docs/replay.txt | 6 +- exec.c | 4 - hw/core/cpu.c | 14 +- hw/core/ptimer.c | 8 +- hw/i386/x86.c | 3 +- include/exec/cpu-all.h | 4 + include/exec/exec-all.h | 4 +- include/hw/core/cpu.h | 14 - include/qemu/timer.h | 24 +- include/sysemu/cpu-timers.h | 90 +++ include/sysemu/cpus.h | 50 +- include/sysemu/hax.h | 17 - include/sysemu/hvf.h | 8 - include/sysemu/hw_accel.h | 69 +- include/sysemu/kvm.h | 7 - include/sysemu/qtest.h | 2 + include/sysemu/replay.h | 4 +- include/sysemu/whpx.h | 19 - replay/replay.c | 6 +- softmmu/cpu-timers.c | 279 +++++++ softmmu/cpus.c | 1706 +++------------------------------------- softmmu/icount.c | 492 ++++++++++++ softmmu/meson.build | 10 +- softmmu/qtest.c | 34 +- softmmu/timers-state.h | 69 ++ softmmu/vl.c | 8 +- stubs/clock-warp.c | 7 - stubs/cpu-get-clock.c | 3 +- stubs/cpu-get-icount.c | 16 - stubs/cpu-synchronize-state.c | 9 + stubs/cpus-get-virtual-clock.c | 8 + stubs/icount.c | 45 ++ stubs/meson.build | 6 +- stubs/qemu-timer-notify-cb.c | 2 +- stubs/qtest.c | 5 + target/alpha/translate.c | 3 +- target/arm/helper.c | 7 +- target/i386/hax-all.c | 17 +- target/i386/hax-cpus.c | 84 ++ target/i386/hax-cpus.h | 33 + target/i386/hax-i386.h | 2 + target/i386/hax-mem.c | 2 +- target/i386/hax-posix.c | 13 +- target/i386/hax-windows.c | 22 +- target/i386/hax-windows.h | 2 + target/i386/hvf/hvf-cpus.c | 131 +++ target/i386/hvf/hvf-cpus.h | 25 + target/i386/hvf/hvf.c | 12 +- target/i386/hvf/meson.build | 1 + target/i386/hvf/x86hvf.c | 2 + target/i386/hvf/x86hvf.h | 1 - target/i386/meson.build | 14 +- target/i386/whpx-all.c | 13 +- target/i386/whpx-cpus.c | 96 +++ target/i386/whpx-cpus.h | 34 + target/riscv/csr.c | 8 +- tests/ptimer-test-stubs.c | 5 +- tests/test-timed-average.c | 2 +- util/main-loop.c | 12 +- util/qemu-timer.c | 14 +- 82 files changed, 2639 insertions(+), 2036 deletions(-) create mode 100644 accel/kvm/kvm-cpus.c create mode 100644 accel/kvm/kvm-cpus.h create mode 100644 accel/qtest/meson.build create mode 100644 accel/qtest/qtest-cpus.c create mode 100644 accel/qtest/qtest-cpus.h rename accel/{ => qtest}/qtest.c (81%) delete mode 100644 accel/stubs/hvf-stub.c delete mode 100644 accel/stubs/whpx-stub.c create mode 100644 accel/tcg/tcg-cpus.c create mode 100644 accel/tcg/tcg-cpus.h create mode 100644 include/sysemu/cpu-timers.h create mode 100644 softmmu/cpu-timers.c create mode 100644 softmmu/icount.c create mode 100644 softmmu/timers-state.h delete mode 100644 stubs/clock-warp.c delete mode 100644 stubs/cpu-get-icount.c create mode 100644 stubs/cpu-synchronize-state.c create mode 100644 stubs/cpus-get-virtual-clock.c create mode 100644 stubs/icount.c create mode 100644 target/i386/hax-cpus.c create mode 100644 target/i386/hax-cpus.h create mode 100644 target/i386/hvf/hvf-cpus.c create mode 100644 target/i386/hvf/hvf-cpus.h create mode 100644 target/i386/whpx-cpus.c create mode 100644 target/i386/whpx-cpus.h
On Fri, 25 Sep 2020 at 17:09, Claudio Fontana <cfontana@suse.de> wrote: > Hi, if it is helpful I just rebased on latest master and pushed to > > https://github.com/hw-claudio/qemu.git branch: "cpus-refactoring" > > The following changes since commit d4277402b5e4645e4c7706a3221f8acd3f1a50f7: > > tests: add missing genh dependency (2020-09-25 14:10:56 +0200) > > are available in the Git repository at: > > https://github.com/hw-claudio/qemu.git > > for you to fetch changes up to 4822a683c261c249e46d26cd65ff37cc1e1cfb94: Hi -- any chance you could not include the pull-request cover letter wording in your emails, please ? It causes my filters to put the email into my "pull requests to apply" folder... thanks -- PMM