From: "Philippe Mathieu-Daudé" <f4bug@amsat.org>
To: qemu-devel@nongnu.org
Cc: "Thomas Huth" <thuth@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@redhat.com>,
"Richard Henderson" <rth@twiddle.net>,
"Fam Zheng" <fam@euphon.net>,
"Claudio Fontana" <cfontana@suse.de>,
"Paolo Bonzini" <pbonzini@redhat.com>,
qemu-block@nongnu.org, "Alex Bennée" <alex.bennee@linaro.org>,
kvm@vger.kernel.org, "Laurent Vivier" <lvivier@redhat.com>,
qemu-arm@nongnu.org,
"Richard Henderson" <richard.henderson@linaro.org>,
"John Snow" <jsnow@redhat.com>,
"Peter Maydell" <peter.maydell@linaro.org>,
"Philippe Mathieu-Daudé" <f4bug@amsat.org>,
"Markus Armbruster" <armbru@redhat.com>
Subject: [PATCH v6 01/11] sysemu/tcg: Introduce tcg_builtin() helper
Date: Sun, 31 Jan 2021 12:50:12 +0100 [thread overview]
Message-ID: <20210131115022.242570-2-f4bug@amsat.org> (raw)
In-Reply-To: <20210131115022.242570-1-f4bug@amsat.org>
Modules are registered early with type_register_static().
We would like to call tcg_enabled() when registering QOM types,
but tcg_enabled() returns tcg_allowed which is a runtime property
initialized later (See commit 2f181fbd5a9 which introduced the
MachineInitPhase in "hw/qdev-core.h" representing the different
phases of machine initialization and commit 0427b6257e2 which
document the initialization order).
As we are only interested if the TCG accelerator is builtin,
regardless of being enabled, introduce the tcg_builtin() helper.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
Cc: Markus Armbruster <armbru@redhat.com>
---
include/sysemu/tcg.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/include/sysemu/tcg.h b/include/sysemu/tcg.h
index 00349fb18a7..6ac5c2ca89d 100644
--- a/include/sysemu/tcg.h
+++ b/include/sysemu/tcg.h
@@ -13,8 +13,10 @@ void tcg_exec_init(unsigned long tb_size, int splitwx);
#ifdef CONFIG_TCG
extern bool tcg_allowed;
#define tcg_enabled() (tcg_allowed)
+#define tcg_builtin() 1
#else
#define tcg_enabled() 0
+#define tcg_builtin() 0
#endif
#endif
--
2.26.2
next prev parent reply other threads:[~2021-01-31 11:50 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-31 11:50 [PATCH v6 00/11] Support disabling TCG on ARM (part 2) Philippe Mathieu-Daudé
2021-01-31 11:50 ` Philippe Mathieu-Daudé [this message]
2021-01-31 14:18 ` [PATCH v6 01/11] sysemu/tcg: Introduce tcg_builtin() helper Claudio Fontana
2021-01-31 15:23 ` Philippe Mathieu-Daudé
2021-02-01 14:29 ` Claudio Fontana
2021-01-31 11:50 ` [PATCH v6 02/11] exec: Restrict TCG specific headers Philippe Mathieu-Daudé
2021-01-31 14:19 ` Claudio Fontana
2021-02-01 13:24 ` Alex Bennée
2021-01-31 11:50 ` [PATCH v6 03/11] target/arm: Restrict ARMv4 cpus to TCG accel Philippe Mathieu-Daudé
2021-01-31 14:21 ` Claudio Fontana
2021-02-01 17:10 ` Alex Bennée
2021-03-04 11:55 ` Claudio Fontana
2021-03-04 19:25 ` Philippe Mathieu-Daudé
2021-01-31 11:50 ` [PATCH v6 04/11] target/arm: Restrict ARMv5 " Philippe Mathieu-Daudé
2021-01-31 14:22 ` Claudio Fontana
2021-01-31 11:50 ` [PATCH v6 05/11] target/arm: Restrict ARMv6 " Philippe Mathieu-Daudé
2021-01-31 14:29 ` Claudio Fontana
2021-02-01 17:18 ` Alex Bennée
2021-01-31 11:50 ` [PATCH v6 06/11] target/arm: Restrict ARMv7 R-profile " Philippe Mathieu-Daudé
2021-01-31 12:42 ` Philippe Mathieu-Daudé
2021-02-01 17:37 ` Alex Bennée
2021-01-31 14:29 ` Claudio Fontana
2021-01-31 11:50 ` [PATCH v6 07/11] target/arm: Restrict ARMv7 M-profile " Philippe Mathieu-Daudé
2021-01-31 14:30 ` Claudio Fontana
2021-01-31 11:50 ` [PATCH v6 08/11] target/arm: Make m_helper.c optional via CONFIG_ARM_V7M Philippe Mathieu-Daudé
2021-01-31 11:50 ` [PATCH v6 09/11] target/arm: Reorder meson.build rules Philippe Mathieu-Daudé
2021-01-31 11:50 ` [PATCH v6 10/11] target/arm: Do not build TCG objects when TCG is off Philippe Mathieu-Daudé
2021-01-31 11:50 ` [PATCH v6 11/11] .travis.yml: Add a KVM-only Aarch64 job Philippe Mathieu-Daudé
2021-01-31 11:57 ` Philippe Mathieu-Daudé
2021-01-31 14:40 ` [PATCH v6 00/11] Support disabling TCG on ARM (part 2) Claudio Fontana
2021-01-31 15:23 ` 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=20210131115022.242570-2-f4bug@amsat.org \
--to=f4bug@amsat.org \
--cc=alex.bennee@linaro.org \
--cc=armbru@redhat.com \
--cc=cfontana@suse.de \
--cc=fam@euphon.net \
--cc=jsnow@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=lvivier@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=philmd@redhat.com \
--cc=qemu-arm@nongnu.org \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=rth@twiddle.net \
--cc=thuth@redhat.com \
/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).