From: "Philippe Mathieu-Daudé" <f4bug@amsat.org>
To: qemu-devel@nongnu.org
Cc: "Richard Henderson" <richard.henderson@linaro.org>,
"Philippe Mathieu-Daudé" <f4bug@amsat.org>
Subject: [PATCH v5 00/31] accel: Move has_work() from SysemuCPUOps to AccelOpsClass
Date: Mon, 20 Sep 2021 23:44:16 +0200 [thread overview]
Message-ID: <20210920214447.2998623-1-f4bug@amsat.org> (raw)
Missing review:
- 0001-target-arm-Implement-arm_v7m_cpu_has_work.patch
- 0005-sysemu-Introduce-AccelOpsClass-has_work.patch
- 0008-accel-tcg-Implement-AccelOpsClass-has_work-as-stub.patch
- 0010-target-arm-Restrict-has_work-handler-to-sysemu-and-T.patch
- 0012-target-cris-Restrict-has_work-handler-to-sysemu.patch
Hi,
CPU has_work() is a per-accelerator handler. This series
- explicit the KVM / WHPX implementations
- moves TCG implementations in AccelOpsClass
- explicit missing implementations (returning 'false').
Since v4:
- Implement arm_v7m_cpu_has_work() (new patch)
- Assert has_work() handlers are set, don't use default value
- Fix ARM v7M and cris CPUs
- Reset R-b tags on modified patches
Since v3:
- Remove pointless CONFIG_TCG uses (rth)
- Rework PPC patches, still using indirection
Since v2:
- Full rewrite, no more RFC.
$ git backport-diff v3..v4
[----] : patches are identical
[####] : number of functional differences between upstream/downstream patch
[down] : patch is downstream-only
The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively
001/31:[down] 'target/arm: Implement arm_v7m_cpu_has_work()'
002/31:[----] [--] 'accel/tcg: Restrict cpu_handle_halt() to sysemu'
003/31:[----] [--] 'hw/core: Restrict cpu_has_work() to sysemu'
004/31:[----] [--] 'hw/core: Un-inline cpu_has_work()'
005/31:[0006] [FC] 'sysemu: Introduce AccelOpsClass::has_work()'
006/31:[----] [--] 'accel/kvm: Implement AccelOpsClass::has_work()'
007/31:[----] [--] 'accel/whpx: Implement AccelOpsClass::has_work()'
008/31:[0004] [FC] 'accel/tcg: Implement AccelOpsClass::has_work() as stub'
009/31:[----] [--] 'target/alpha: Restrict has_work() handler to sysemu'
010/31:[0002] [FC] 'target/arm: Restrict has_work() handler to sysemu and TCG'
011/31:[----] [--] 'target/avr: Restrict has_work() handler to sysemu'
012/31:[0001] [FC] 'target/cris: Restrict has_work() handler to sysemu'
013/31:[----] [--] 'target/hexagon: Remove unused has_work() handler'
014/31:[----] [--] 'target/hppa: Restrict has_work() handler to sysemu'
015/31:[----] [--] 'target/i386: Restrict has_work() handler to sysemu and TCG'
016/31:[----] [--] 'target/m68k: Restrict has_work() handler to sysemu'
017/31:[----] [--] 'target/microblaze: Restrict has_work() handler to sysemu'
018/31:[----] [--] 'target/mips: Restrict has_work() handler to sysemu and TCG'
019/31:[----] [--] 'target/nios2: Restrict has_work() handler to sysemu'
020/31:[----] [--] 'target/openrisc: Restrict has_work() handler to sysemu'
021/31:[----] [--] 'target/ppc: Introduce PowerPCCPUClass::has_work()'
022/31:[----] [--] 'target/ppc: Restrict has_work() handlers to sysemu and TCG'
023/31:[----] [--] 'target/riscv: Restrict has_work() handler to sysemu and TCG'
024/31:[----] [--] 'target/rx: Restrict has_work() handler to sysemu'
025/31:[----] [--] 'target/s390x: Restrict has_work() handler to sysemu and TCG'
026/31:[----] [--] 'target/sh4: Restrict has_work() handler to sysemu'
027/31:[----] [--] 'target/sparc: Remove pointless use of CONFIG_TCG definition'
028/31:[----] [--] 'target/sparc: Restrict has_work() handler to sysemu'
029/31:[----] [--] 'target/tricore: Restrict has_work() handler to sysemu'
030/31:[----] [--] 'target/xtensa: Restrict has_work() handler to sysemu'
031/31:[0006] [FC] 'accel: Add missing AccelOpsClass::has_work() and drop SysemuCPUOps one'
Philippe Mathieu-Daudé (31):
target/arm: Implement arm_v7m_cpu_has_work()
accel/tcg: Restrict cpu_handle_halt() to sysemu
hw/core: Restrict cpu_has_work() to sysemu
hw/core: Un-inline cpu_has_work()
sysemu: Introduce AccelOpsClass::has_work()
accel/kvm: Implement AccelOpsClass::has_work()
accel/whpx: Implement AccelOpsClass::has_work()
accel/tcg: Implement AccelOpsClass::has_work() as stub
target/alpha: Restrict has_work() handler to sysemu
target/arm: Restrict has_work() handler to sysemu and TCG
target/avr: Restrict has_work() handler to sysemu
target/cris: Restrict has_work() handler to sysemu
target/hexagon: Remove unused has_work() handler
target/hppa: Restrict has_work() handler to sysemu
target/i386: Restrict has_work() handler to sysemu and TCG
target/m68k: Restrict has_work() handler to sysemu
target/microblaze: Restrict has_work() handler to sysemu
target/mips: Restrict has_work() handler to sysemu and TCG
target/nios2: Restrict has_work() handler to sysemu
target/openrisc: Restrict has_work() handler to sysemu
target/ppc: Introduce PowerPCCPUClass::has_work()
target/ppc: Restrict has_work() handlers to sysemu and TCG
target/riscv: Restrict has_work() handler to sysemu and TCG
target/rx: Restrict has_work() handler to sysemu
target/s390x: Restrict has_work() handler to sysemu and TCG
target/sh4: Restrict has_work() handler to sysemu
target/sparc: Remove pointless use of CONFIG_TCG definition
target/sparc: Restrict has_work() handler to sysemu
target/tricore: Restrict has_work() handler to sysemu
target/xtensa: Restrict has_work() handler to sysemu
accel: Add missing AccelOpsClass::has_work() and drop SysemuCPUOps one
include/hw/core/cpu.h | 28 +++++++++--------------
include/hw/core/tcg-cpu-ops.h | 4 ++++
include/sysemu/accel-ops.h | 5 +++++
target/ppc/cpu-qom.h | 3 +++
accel/hvf/hvf-accel-ops.c | 6 +++++
accel/kvm/kvm-accel-ops.c | 6 +++++
accel/qtest/qtest.c | 6 +++++
accel/tcg/cpu-exec.c | 6 +++--
accel/tcg/tcg-accel-ops.c | 10 +++++++++
accel/xen/xen-all.c | 6 +++++
hw/core/cpu-common.c | 6 -----
softmmu/cpus.c | 10 ++++++---
target/alpha/cpu.c | 4 +++-
target/arm/cpu.c | 7 ++++--
target/arm/cpu_tcg.c | 6 +++++
target/avr/cpu.c | 2 +-
target/cris/cpu.c | 5 ++++-
target/hexagon/cpu.c | 6 -----
target/hppa/cpu.c | 4 +++-
target/i386/cpu.c | 6 -----
target/i386/hax/hax-accel-ops.c | 6 +++++
target/i386/nvmm/nvmm-accel-ops.c | 6 +++++
target/i386/tcg/tcg-cpu.c | 8 ++++++-
target/i386/whpx/whpx-accel-ops.c | 6 +++++
target/m68k/cpu.c | 4 +++-
target/microblaze/cpu.c | 8 +++----
target/mips/cpu.c | 4 +++-
target/nios2/cpu.c | 4 +++-
target/openrisc/cpu.c | 4 +++-
target/ppc/cpu_init.c | 37 ++++++++++++++++++++++---------
target/riscv/cpu.c | 8 +++----
target/rx/cpu.c | 4 +++-
target/s390x/cpu.c | 4 +++-
target/sh4/cpu.c | 5 +++--
target/sparc/cpu.c | 6 ++---
target/tricore/cpu.c | 6 ++++-
target/xtensa/cpu.c | 14 ++++++------
37 files changed, 184 insertions(+), 86 deletions(-)
--
2.31.1
next reply other threads:[~2021-09-20 22:04 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-20 21:44 Philippe Mathieu-Daudé [this message]
2021-09-20 21:44 ` [PATCH v5 01/31] target/arm: Implement arm_v7m_cpu_has_work() Philippe Mathieu-Daudé
2021-09-21 9:34 ` Peter Maydell
2021-09-21 9:45 ` Philippe Mathieu-Daudé
2021-09-23 17:17 ` Philippe Mathieu-Daudé
2021-09-23 18:01 ` Peter Maydell
2021-09-23 18:06 ` Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 02/31] accel/tcg: Restrict cpu_handle_halt() to sysemu Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 03/31] hw/core: Restrict cpu_has_work() " Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 04/31] hw/core: Un-inline cpu_has_work() Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 05/31] sysemu: Introduce AccelOpsClass::has_work() Philippe Mathieu-Daudé
2021-09-20 21:58 ` Richard Henderson
2021-09-23 17:17 ` Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 06/31] accel/kvm: Implement AccelOpsClass::has_work() Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 07/31] accel/whpx: " Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 08/31] accel/tcg: Implement AccelOpsClass::has_work() as stub Philippe Mathieu-Daudé
2021-09-20 22:01 ` Richard Henderson
2021-09-23 17:18 ` Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 09/31] target/alpha: Restrict has_work() handler to sysemu Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 10/31] target/arm: Restrict has_work() handler to sysemu and TCG Philippe Mathieu-Daudé
2021-09-20 22:03 ` Richard Henderson
2021-09-20 21:44 ` [PATCH v5 11/31] target/avr: Restrict has_work() handler to sysemu Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 12/31] target/cris: " Philippe Mathieu-Daudé
2021-09-20 21:50 ` Richard Henderson
2021-09-20 21:44 ` [PATCH v5 13/31] target/hexagon: Remove unused has_work() handler Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 14/31] target/hppa: Restrict has_work() handler to sysemu Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 15/31] target/i386: Restrict has_work() handler to sysemu and TCG Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 16/31] target/m68k: Restrict has_work() handler to sysemu Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 17/31] target/microblaze: " Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 18/31] target/mips: Restrict has_work() handler to sysemu and TCG Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 19/31] target/nios2: Restrict has_work() handler to sysemu Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 20/31] target/openrisc: " Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 21/31] target/ppc: Introduce PowerPCCPUClass::has_work() Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 22/31] target/ppc: Restrict has_work() handlers to sysemu and TCG Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 23/31] target/riscv: Restrict has_work() handler " Philippe Mathieu-Daudé
2021-09-24 6:41 ` Alistair Francis
2021-09-20 21:44 ` [PATCH v5 24/31] target/rx: Restrict has_work() handler to sysemu Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 25/31] target/s390x: Restrict has_work() handler to sysemu and TCG Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 26/31] target/sh4: Restrict has_work() handler to sysemu Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 27/31] target/sparc: Remove pointless use of CONFIG_TCG definition Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 28/31] target/sparc: Restrict has_work() handler to sysemu Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 29/31] target/tricore: " Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 30/31] target/xtensa: " Philippe Mathieu-Daudé
2021-09-20 21:44 ` [PATCH v5 31/31] accel: Add missing AccelOpsClass::has_work() and drop SysemuCPUOps one Philippe Mathieu-Daudé
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210920214447.2998623-1-f4bug@amsat.org \
--to=f4bug@amsat.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).