qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Alex Bennée" <alex.bennee@linaro.org>
To: peter.maydell@linaro.org
Cc: "Luis Vilanova" <vilanova@imperial.ac.uk>,
	"Richard Henderson" <richard.henderson@linaro.org>,
	"Alex Bennée" <alex.bennee@linaro.org>,
	qemu-devel@nongnu.org, "Stefan Hajnoczi" <stefanha@redhat.com>
Subject: [PULL 17/28] docs: remove references to TCG tracing
Date: Wed,  9 Feb 2022 14:15:18 +0000	[thread overview]
Message-ID: <20220209141529.3418384-18-alex.bennee@linaro.org> (raw)
In-Reply-To: <20220209141529.3418384-1-alex.bennee@linaro.org>

Users wanting this sort of functionality should turn to TCG plugins
instead.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Cc: Luis Vilanova <vilanova@imperial.ac.uk>
Cc: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20220204204335.1689602-18-alex.bennee@linaro.org>

diff --git a/docs/about/removed-features.rst b/docs/about/removed-features.rst
index 4c4da20d0f..b0156e0f25 100644
--- a/docs/about/removed-features.rst
+++ b/docs/about/removed-features.rst
@@ -601,6 +601,19 @@ the upstream Linux kernel in 2018, and it has also been dropped from glibc, so
 there is no new Linux development taking place with this architecture. For
 running the old binaries, you can use older versions of QEMU.
 
+TCG introspection features
+--------------------------
+
+TCG trace-events (since 6.2)
+''''''''''''''''''''''''''''
+
+The ability to add new TCG trace points had bit rotted and as the
+feature can be replicated with TCG plugins it was removed. If
+any user is currently using this feature and needs help with
+converting to using TCG plugins they should contact the qemu-devel
+mailing list.
+
+
 System emulator devices
 -----------------------
 
diff --git a/docs/devel/tracing.rst b/docs/devel/tracing.rst
index 4290ac42ee..ec9a687cfd 100644
--- a/docs/devel/tracing.rst
+++ b/docs/devel/tracing.rst
@@ -413,88 +413,3 @@ disabled, this check will have no performance impact.
         return ptr;
     }
 
-"tcg"
------
-
-Guest code generated by TCG can be traced by defining an event with the "tcg"
-event property. Internally, this property generates two events:
-"<eventname>_trans" to trace the event at translation time, and
-"<eventname>_exec" to trace the event at execution time.
-
-Instead of using these two events, you should instead use the function
-"trace_<eventname>_tcg" during translation (TCG code generation). This function
-will automatically call "trace_<eventname>_trans", and will generate the
-necessary TCG code to call "trace_<eventname>_exec" during guest code execution.
-
-Events with the "tcg" property can be declared in the "trace-events" file with a
-mix of native and TCG types, and "trace_<eventname>_tcg" will gracefully forward
-them to the "<eventname>_trans" and "<eventname>_exec" events. Since TCG values
-are not known at translation time, these are ignored by the "<eventname>_trans"
-event. Because of this, the entry in the "trace-events" file needs two printing
-formats (separated by a comma)::
-
-    tcg foo(uint8_t a1, TCGv_i32 a2) "a1=%d", "a1=%d a2=%d"
-
-For example::
-
-    #include "trace-tcg.h"
-    
-    void some_disassembly_func (...)
-    {
-        uint8_t a1 = ...;
-        TCGv_i32 a2 = ...;
-        trace_foo_tcg(a1, a2);
-    }
-
-This will immediately call::
-
-    void trace_foo_trans(uint8_t a1);
-
-and will generate the TCG code to call::
-
-    void trace_foo(uint8_t a1, uint32_t a2);
-
-"vcpu"
-------
-
-Identifies events that trace vCPU-specific information. It implicitly adds a
-"CPUState*" argument, and extends the tracing print format to show the vCPU
-information. If used together with the "tcg" property, it adds a second
-"TCGv_env" argument that must point to the per-target global TCG register that
-points to the vCPU when guest code is executed (usually the "cpu_env" variable).
-
-The "tcg" and "vcpu" properties are currently only honored in the root
-./trace-events file.
-
-The following example events::
-
-    foo(uint32_t a) "a=%x"
-    vcpu bar(uint32_t a) "a=%x"
-    tcg vcpu baz(uint32_t a) "a=%x", "a=%x"
-
-Can be used as::
-
-    #include "trace-tcg.h"
-    
-    CPUArchState *env;
-    TCGv_ptr cpu_env;
-    
-    void some_disassembly_func(...)
-    {
-        /* trace emitted at this point */
-        trace_foo(0xd1);
-        /* trace emitted at this point */
-        trace_bar(env_cpu(env), 0xd2);
-        /* trace emitted at this point (env) and when guest code is executed (cpu_env) */
-        trace_baz_tcg(env_cpu(env), cpu_env, 0xd3);
-    }
-
-If the translating vCPU has address 0xc1 and code is later executed by vCPU
-0xc2, this would be an example output::
-
-    // at guest code translation
-    foo a=0xd1
-    bar cpu=0xc1 a=0xd2
-    baz_trans cpu=0xc1 a=0xd3
-    // at guest code execution
-    baz_exec cpu=0xc2 a=0xd3
-- 
2.30.2



  parent reply	other threads:[~2022-02-09 15:17 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-09 14:15 [PULL 00/28] testing and plugin updates Alex Bennée
2022-02-09 14:15 ` [PULL 01/28] tests/Makefile.include: clean-up old code Alex Bennée
2022-02-09 14:15 ` [PULL 02/28] tests/qtest: enable more vhost-user tests by default Alex Bennée
2022-02-09 14:15 ` [PULL 03/28] Makefile: also remove .gcno files when cleaning Alex Bennée
2022-02-09 14:15 ` [PULL 04/28] .gitignore: add .gcov pattern Alex Bennée
2022-02-09 14:15 ` [PULL 05/28] MAINTAINERS: Cover lcitool submodule with build test / automation Alex Bennée
2022-02-09 14:15 ` [PULL 06/28] gitmodules: Correct libvirt-ci submodule URL Alex Bennée
2022-02-09 14:15 ` [PULL 07/28] tests/lcitool: Include local qemu.yml when refreshing cirrus-ci files Alex Bennée
2022-02-09 14:15 ` [PULL 08/28] drop libxml2 checks since libxml is not actually used (for parallels) Alex Bennée
2022-02-09 14:15 ` [PULL 09/28] tests/lcitool: Refresh submodule and remove libxml2 Alex Bennée
2022-02-09 14:15 ` [PULL 10/28] tests: Manually remove libxml2 on MSYS2 runners Alex Bennée
2022-02-09 14:15 ` [PULL 11/28] tests/lcitool: Install libibumad to cover RDMA on Debian based distros Alex Bennée
2022-02-09 14:15 ` [PULL 12/28] docs/devel: mention our .editorconfig Alex Bennée
2022-02-09 14:15 ` [PULL 13/28] gitlab: fall back to commit hash in qemu-setup filename Alex Bennée
2022-02-09 14:15 ` [PULL 14/28] tests/lcitool: Allow lcitool-refresh in out-of-tree builds, too Alex Bennée
2022-02-09 14:15 ` [PULL 15/28] tests: Update CentOS 8 container to CentOS Stream 8 Alex Bennée
2022-02-15  7:49   ` Philippe Mathieu-Daudé via
2022-02-09 14:15 ` [PULL 16/28] tests/tcg/sh4: disable another unreliable test Alex Bennée
2022-02-09 14:15 ` Alex Bennée [this message]
2022-02-09 14:15 ` [PULL 18/28] tracing: remove TCG memory access tracing Alex Bennée
2022-02-09 14:15 ` [PULL 19/28] tracing: remove the trace-tcg includes from the build Alex Bennée
2022-02-09 14:15 ` [PULL 20/28] tracing: excise the tcg related from tracetool Alex Bennée
2022-02-09 14:15 ` [PULL 21/28] plugins: add helper functions for coverage plugins Alex Bennée
2022-02-09 14:15 ` [PULL 22/28] contrib/plugins: add a drcov plugin Alex Bennée
2022-02-09 14:15 ` [PULL 23/28] tests/plugin: allow libinsn.so per-CPU counts Alex Bennée
2022-02-09 14:15 ` [PULL 24/28] tests/plugins: add instruction matching to libinsn.so Alex Bennée
2022-02-09 14:15 ` [PULL 25/28] target/i386: use CPU_LOG_INT for IRQ servicing Alex Bennée
2022-02-09 14:15 ` [PULL 26/28] plugins: move reset of plugin data to tb_start Alex Bennée
2022-02-09 14:15 ` [PULL 27/28] linux-user: Remove the deprecated ppc64abi32 target Alex Bennée
2022-02-09 14:15 ` [PULL 28/28] include/exec: fix softmmu version of TARGET_ABI_FMT_lx Alex Bennée
2022-02-12 22:03 ` [PULL 00/28] testing and plugin updates Peter Maydell

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=20220209141529.3418384-18-alex.bennee@linaro.org \
    --to=alex.bennee@linaro.org \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=stefanha@redhat.com \
    --cc=vilanova@imperial.ac.uk \
    /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).