default-configs/arm-softmmu.mak | 3 -- meson.build | 8 +++- target/arm/cpu.h | 12 ------ accel/stubs/tcg-stub.c | 5 +++ target/arm/cpu_tcg.c | 4 +- target/arm/helper.c | 7 ---- target/arm/m_helper-stub.c | 73 +++++++++++++++++++++++++++++++++ .travis.yml | 35 ++++++++++++++++ hw/arm/Kconfig | 32 +++++++++++++++ target/arm/Kconfig | 4 ++ target/arm/meson.build | 40 +++++++++++------- 11 files changed, 184 insertions(+), 39 deletions(-) create mode 100644 target/arm/m_helper-stub.c create mode 100644 target/arm/Kconfig
Cover from Samuel Ortiz from (part 1) [1]:
This patchset allows for building and running ARM targets with TCG
disabled. [...]
The rationale behind this work comes from the NEMU project where we're
trying to only support x86 and ARM 64-bit architectures, without
including the TCG code base. We can only do so if we can build and run
ARM binaries with TCG disabled.
v4 almost 2 years later... [2]:
- Rebased on Meson
- Addressed Richard review comments
- Addressed Claudio review comments
v3 almost 18 months later [3]:
- Rebased
- Addressed Thomas review comments
- Added Travis-CI job to keep building --disable-tcg on ARM
v2 [4]:
- Addressed review comments from Richard and Thomas from v1 [1]
Regards,
Phil.
[1]: https://lists.gnu.org/archive/html/qemu-devel/2018-11/msg02451.html
[2]: https://www.mail-archive.com/qemu-devel@nongnu.org/msg689168.html
[3]: https://www.mail-archive.com/qemu-devel@nongnu.org/msg641796.html
[4]: https://lists.gnu.org/archive/html/qemu-devel/2019-08/msg05003.html
Green CI:
- https://cirrus-ci.com/build/4572961761918976
- https://gitlab.com/philmd/qemu/-/pipelines/196047779
- https://travis-ci.org/github/philmd/qemu/builds/731370972
Based-on: <20200929125609.1088330-1-philmd@redhat.com>
"hw/arm: Restrict APEI tables generation to the 'virt' machine"
https://www.mail-archive.com/qemu-devel@nongnu.org/msg745792.html
Philippe Mathieu-Daudé (10):
accel/tcg: Add stub for cpu_loop_exit()
meson: Allow optional target/${ARCH}/Kconfig
target/arm: Select SEMIHOSTING if TCG is available
target/arm: Restrict ARMv4 cpus to TCG accel
target/arm: Restrict ARMv5 cpus to TCG accel
target/arm: Restrict ARMv6 cpus to TCG accel
target/arm: Restrict ARMv7 R-profile cpus to TCG accel
target/arm: Restrict ARMv7 M-profile cpus to TCG accel
target/arm: Reorder meson.build rules
.travis.yml: Add a KVM-only Aarch64 job
Samuel Ortiz (1):
target/arm: Do not build TCG objects when TCG is off
Thomas Huth (1):
target/arm: Make m_helper.c optional via CONFIG_ARM_V7M
default-configs/arm-softmmu.mak | 3 --
meson.build | 8 +++-
target/arm/cpu.h | 12 ------
accel/stubs/tcg-stub.c | 5 +++
target/arm/cpu_tcg.c | 4 +-
target/arm/helper.c | 7 ----
target/arm/m_helper-stub.c | 73 +++++++++++++++++++++++++++++++++
.travis.yml | 35 ++++++++++++++++
hw/arm/Kconfig | 32 +++++++++++++++
target/arm/Kconfig | 4 ++
target/arm/meson.build | 40 +++++++++++-------
11 files changed, 184 insertions(+), 39 deletions(-)
create mode 100644 target/arm/m_helper-stub.c
create mode 100644 target/arm/Kconfig
--
2.26.2
On Wed, 30 Sep 2020 00:43:43 +0200
Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
> Cover from Samuel Ortiz from (part 1) [1]:
>
> This patchset allows for building and running ARM targets with TCG
> disabled. [...]
>
> The rationale behind this work comes from the NEMU project where we're
> trying to only support x86 and ARM 64-bit architectures, without
> including the TCG code base. We can only do so if we can build and run
> ARM binaries with TCG disabled.
I don't recall exact reason but TCG variant is used by bios-tables-test
to test arm/virt so it will probably break that
(it has something to do with how KVM uses CPU/GIC, which was making
ACPI tables not stable (i.e. depend on host), so comparison with master
tables was failing)
>
> v4 almost 2 years later... [2]:
> - Rebased on Meson
> - Addressed Richard review comments
> - Addressed Claudio review comments
>
> v3 almost 18 months later [3]:
> - Rebased
> - Addressed Thomas review comments
> - Added Travis-CI job to keep building --disable-tcg on ARM
>
> v2 [4]:
> - Addressed review comments from Richard and Thomas from v1 [1]
>
> Regards,
>
> Phil.
>
> [1]: https://lists.gnu.org/archive/html/qemu-devel/2018-11/msg02451.html
> [2]: https://www.mail-archive.com/qemu-devel@nongnu.org/msg689168.html
> [3]: https://www.mail-archive.com/qemu-devel@nongnu.org/msg641796.html
> [4]: https://lists.gnu.org/archive/html/qemu-devel/2019-08/msg05003.html
>
> Green CI:
> - https://cirrus-ci.com/build/4572961761918976
> - https://gitlab.com/philmd/qemu/-/pipelines/196047779
> - https://travis-ci.org/github/philmd/qemu/builds/731370972
>
> Based-on: <20200929125609.1088330-1-philmd@redhat.com>
> "hw/arm: Restrict APEI tables generation to the 'virt' machine"
> https://www.mail-archive.com/qemu-devel@nongnu.org/msg745792.html
>
> Philippe Mathieu-Daudé (10):
> accel/tcg: Add stub for cpu_loop_exit()
> meson: Allow optional target/${ARCH}/Kconfig
> target/arm: Select SEMIHOSTING if TCG is available
> target/arm: Restrict ARMv4 cpus to TCG accel
> target/arm: Restrict ARMv5 cpus to TCG accel
> target/arm: Restrict ARMv6 cpus to TCG accel
> target/arm: Restrict ARMv7 R-profile cpus to TCG accel
> target/arm: Restrict ARMv7 M-profile cpus to TCG accel
> target/arm: Reorder meson.build rules
> .travis.yml: Add a KVM-only Aarch64 job
>
> Samuel Ortiz (1):
> target/arm: Do not build TCG objects when TCG is off
>
> Thomas Huth (1):
> target/arm: Make m_helper.c optional via CONFIG_ARM_V7M
>
> default-configs/arm-softmmu.mak | 3 --
> meson.build | 8 +++-
> target/arm/cpu.h | 12 ------
> accel/stubs/tcg-stub.c | 5 +++
> target/arm/cpu_tcg.c | 4 +-
> target/arm/helper.c | 7 ----
> target/arm/m_helper-stub.c | 73 +++++++++++++++++++++++++++++++++
> .travis.yml | 35 ++++++++++++++++
> hw/arm/Kconfig | 32 +++++++++++++++
> target/arm/Kconfig | 4 ++
> target/arm/meson.build | 40 +++++++++++-------
> 11 files changed, 184 insertions(+), 39 deletions(-)
> create mode 100644 target/arm/m_helper-stub.c
> create mode 100644 target/arm/Kconfig
>
On 9/30/20 9:58 AM, Igor Mammedov wrote:
> On Wed, 30 Sep 2020 00:43:43 +0200
> Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
>
>> Cover from Samuel Ortiz from (part 1) [1]:
>>
>> This patchset allows for building and running ARM targets with TCG
>> disabled. [...]
>>
>> The rationale behind this work comes from the NEMU project where we're
>> trying to only support x86 and ARM 64-bit architectures, without
>> including the TCG code base. We can only do so if we can build and run
>> ARM binaries with TCG disabled.
>
> I don't recall exact reason but TCG variant is used by bios-tables-test
> to test arm/virt so it will probably break that
> (it has something to do with how KVM uses CPU/GIC, which was making
> ACPI tables not stable (i.e. depend on host), so comparison with master
> tables was failing)
Not a problem, we can restrict bios-tables-test to TCG.
I don't expect the KVM-only build being able to run many
of our current tests, as most of them expect TCG.
I'll have a look at restricting the TCG-dependent tests
after this series get accepted.
>
>>
>> v4 almost 2 years later... [2]:
>> - Rebased on Meson
>> - Addressed Richard review comments
>> - Addressed Claudio review comments
>>
>> v3 almost 18 months later [3]:
>> - Rebased
>> - Addressed Thomas review comments
>> - Added Travis-CI job to keep building --disable-tcg on ARM
>>
>> v2 [4]:
>> - Addressed review comments from Richard and Thomas from v1 [1]
>>
>> Regards,
>>
>> Phil.
>>
>> [1]: https://lists.gnu.org/archive/html/qemu-devel/2018-11/msg02451.html
>> [2]: https://www.mail-archive.com/qemu-devel@nongnu.org/msg689168.html
>> [3]: https://www.mail-archive.com/qemu-devel@nongnu.org/msg641796.html
>> [4]: https://lists.gnu.org/archive/html/qemu-devel/2019-08/msg05003.html
>>
>> Green CI:
>> - https://cirrus-ci.com/build/4572961761918976
>> - https://gitlab.com/philmd/qemu/-/pipelines/196047779
>> - https://travis-ci.org/github/philmd/qemu/builds/731370972
>>
>> Based-on: <20200929125609.1088330-1-philmd@redhat.com>
>> "hw/arm: Restrict APEI tables generation to the 'virt' machine"
>> https://www.mail-archive.com/qemu-devel@nongnu.org/msg745792.html
>>
>> Philippe Mathieu-Daudé (10):
>> accel/tcg: Add stub for cpu_loop_exit()
>> meson: Allow optional target/${ARCH}/Kconfig
>> target/arm: Select SEMIHOSTING if TCG is available
>> target/arm: Restrict ARMv4 cpus to TCG accel
>> target/arm: Restrict ARMv5 cpus to TCG accel
>> target/arm: Restrict ARMv6 cpus to TCG accel
>> target/arm: Restrict ARMv7 R-profile cpus to TCG accel
>> target/arm: Restrict ARMv7 M-profile cpus to TCG accel
>> target/arm: Reorder meson.build rules
>> .travis.yml: Add a KVM-only Aarch64 job
>>
>> Samuel Ortiz (1):
>> target/arm: Do not build TCG objects when TCG is off
>>
>> Thomas Huth (1):
>> target/arm: Make m_helper.c optional via CONFIG_ARM_V7M
>>
>> default-configs/arm-softmmu.mak | 3 --
>> meson.build | 8 +++-
>> target/arm/cpu.h | 12 ------
>> accel/stubs/tcg-stub.c | 5 +++
>> target/arm/cpu_tcg.c | 4 +-
>> target/arm/helper.c | 7 ----
>> target/arm/m_helper-stub.c | 73 +++++++++++++++++++++++++++++++++
>> .travis.yml | 35 ++++++++++++++++
>> hw/arm/Kconfig | 32 +++++++++++++++
>> target/arm/Kconfig | 4 ++
>> target/arm/meson.build | 40 +++++++++++-------
>> 11 files changed, 184 insertions(+), 39 deletions(-)
>> create mode 100644 target/arm/m_helper-stub.c
>> create mode 100644 target/arm/Kconfig
>>
>
Philippe Mathieu-Daudé <philmd@redhat.com> writes:
> Cover from Samuel Ortiz from (part 1) [1]:
>
> This patchset allows for building and running ARM targets with TCG
> disabled. [...]
>
> The rationale behind this work comes from the NEMU project where we're
> trying to only support x86 and ARM 64-bit architectures, without
> including the TCG code base. We can only do so if we can build and run
> ARM binaries with TCG disabled.
>
> v4 almost 2 years later... [2]:
> - Rebased on Meson
> - Addressed Richard review comments
> - Addressed Claudio review comments
Have you re-based recently because I was having a look but ran into
merge conflicts. I'd like to get the merged at some point because I ran
into similar issues with the Xen only build without TCG.
>
> v3 almost 18 months later [3]:
> - Rebased
> - Addressed Thomas review comments
> - Added Travis-CI job to keep building --disable-tcg on ARM
>
> v2 [4]:
> - Addressed review comments from Richard and Thomas from v1 [1]
>
> Regards,
>
> Phil.
>
> [1]: https://lists.gnu.org/archive/html/qemu-devel/2018-11/msg02451.html
> [2]: https://www.mail-archive.com/qemu-devel@nongnu.org/msg689168.html
> [3]: https://www.mail-archive.com/qemu-devel@nongnu.org/msg641796.html
> [4]: https://lists.gnu.org/archive/html/qemu-devel/2019-08/msg05003.html
>
> Green CI:
> - https://cirrus-ci.com/build/4572961761918976
> - https://gitlab.com/philmd/qemu/-/pipelines/196047779
> - https://travis-ci.org/github/philmd/qemu/builds/731370972
>
> Based-on: <20200929125609.1088330-1-philmd@redhat.com>
> "hw/arm: Restrict APEI tables generation to the 'virt' machine"
> https://www.mail-archive.com/qemu-devel@nongnu.org/msg745792.html
>
> Philippe Mathieu-Daudé (10):
> accel/tcg: Add stub for cpu_loop_exit()
> meson: Allow optional target/${ARCH}/Kconfig
> target/arm: Select SEMIHOSTING if TCG is available
> target/arm: Restrict ARMv4 cpus to TCG accel
> target/arm: Restrict ARMv5 cpus to TCG accel
> target/arm: Restrict ARMv6 cpus to TCG accel
> target/arm: Restrict ARMv7 R-profile cpus to TCG accel
> target/arm: Restrict ARMv7 M-profile cpus to TCG accel
> target/arm: Reorder meson.build rules
> .travis.yml: Add a KVM-only Aarch64 job
>
> Samuel Ortiz (1):
> target/arm: Do not build TCG objects when TCG is off
>
> Thomas Huth (1):
> target/arm: Make m_helper.c optional via CONFIG_ARM_V7M
>
> default-configs/arm-softmmu.mak | 3 --
> meson.build | 8 +++-
> target/arm/cpu.h | 12 ------
> accel/stubs/tcg-stub.c | 5 +++
> target/arm/cpu_tcg.c | 4 +-
> target/arm/helper.c | 7 ----
> target/arm/m_helper-stub.c | 73 +++++++++++++++++++++++++++++++++
> .travis.yml | 35 ++++++++++++++++
> hw/arm/Kconfig | 32 +++++++++++++++
> target/arm/Kconfig | 4 ++
> target/arm/meson.build | 40 +++++++++++-------
> 11 files changed, 184 insertions(+), 39 deletions(-)
> create mode 100644 target/arm/m_helper-stub.c
> create mode 100644 target/arm/Kconfig
--
Alex Bennée
Hi Alex, On 1/28/21 1:41 AM, Alex Bennée wrote: > Philippe Mathieu-Daudé <philmd@redhat.com> writes: > >> Cover from Samuel Ortiz from (part 1) [1]: >> >> This patchset allows for building and running ARM targets with TCG >> disabled. [...] >> >> The rationale behind this work comes from the NEMU project where we're >> trying to only support x86 and ARM 64-bit architectures, without >> including the TCG code base. We can only do so if we can build and run >> ARM binaries with TCG disabled. >> >> v4 almost 2 years later... [2]: >> - Rebased on Meson >> - Addressed Richard review comments >> - Addressed Claudio review comments > > Have you re-based recently because I was having a look but ran into > merge conflicts. I'd like to get the merged at some point because I ran > into similar issues with the Xen only build without TCG. I addressed most of this review comments locally. Since Claudio's accelerator series was getting more attention (and is bigger) I was waiting it gets merged first. He just respun v14: https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg07171.html
Philippe Mathieu-Daudé <philmd@redhat.com> writes: > Hi Alex, > > On 1/28/21 1:41 AM, Alex Bennée wrote: >> Philippe Mathieu-Daudé <philmd@redhat.com> writes: >> >>> Cover from Samuel Ortiz from (part 1) [1]: >>> >>> This patchset allows for building and running ARM targets with TCG >>> disabled. [...] >>> >>> The rationale behind this work comes from the NEMU project where we're >>> trying to only support x86 and ARM 64-bit architectures, without >>> including the TCG code base. We can only do so if we can build and run >>> ARM binaries with TCG disabled. >>> >>> v4 almost 2 years later... [2]: >>> - Rebased on Meson >>> - Addressed Richard review comments >>> - Addressed Claudio review comments >> >> Have you re-based recently because I was having a look but ran into >> merge conflicts. I'd like to get the merged at some point because I ran >> into similar issues with the Xen only build without TCG. > > I addressed most of this review comments locally. Since Claudio's > accelerator series was getting more attention (and is bigger) I was > waiting it gets merged first. He just respun v14: > https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg07171.html OK I'll have a look at Claudio's first ;-) -- Alex Bennée
© 2016 - 2026 Red Hat, Inc.