From patchwork Tue Feb 1 18:20:41 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 538966 Delivered-To: patch@linaro.org Received: by 2002:ac0:f7d2:0:0:0:0:0 with SMTP id i18csp1100042imr; Tue, 1 Feb 2022 13:59:30 -0800 (PST) X-Google-Smtp-Source: ABdhPJwkounZ93+mgu7xOIF2PgurGSIdrpe8qVihxZ0Cp7D7tn3Fgkj8wET561kyu2q35HWGJPE9 X-Received: by 2002:a25:bac6:: with SMTP id a6mr39611782ybk.221.1643752770065; Tue, 01 Feb 2022 13:59:30 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643752770; cv=none; d=google.com; s=arc-20160816; b=iUlS1+/2CgGA13/Gqu+dVTgO+LKkDl0G9u4wvui8KCxo/E3nXLlaNHH7nukWjBGa4m SQwy10C0U+kvqkVqVVHMi+2qm/DiR5tpbxHZ7TmDm6Y41QN9ioz6zVzWpwlYIvMCQfym 7PUF8fNH+cHOIy4KhYqUjs88jSsYLhFWaVfgADjxJ6LhoX1vCgN3M6GqTVDXJTHr6ht4 X2IoPmKH0n3NKgxN12qxrPncTE0IPxTohHogJpLjmntWdPCv3jR2SGwJqAhWb0/6DOxg hYha/LBwGk4qkBml/m6P5f0F038KOBwkz3V55vYvfLAxXYtt50jxGgf7XdZcP2m/ho+h bcWw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=RF5y4dzhS8bG68f7NLy4ZRBD5ccx4mYs0zSlmwkW1WI=; b=XMHynHTLnwhVXecDEpc6nTHCXoFND6nTZxwAYs83xYQZQ5ThEhKErckp2krhLV79tJ shj7HA3q6iiPR6tJ/BQDtQH/VxZ29xWljGoChkG2qSsloqXeHb3jvOmdWTWmK4kbZzPS xyb5/13SiStRq1N4jIBmFUusF32QhzfG+Y8spBJZhPoB1U5n4rP12xSUA18FYbDPWz/v r3jOf0azOr6kqnmsFOHhDOy7H+RmBth5QUgCbGYH4m1AAZBJnvvf1X9peScaWtyLXSAd mUeBL0MIVm47ZUC3LfksOlrWSzgyaExEgd9BJMQIeZIFvePVhfSsTNg9KQHkR+zgGn3Q zYRg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=xyxrSKhN; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id x8si6707703ybu.681.2022.02.01.13.59.29 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 01 Feb 2022 13:59:30 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=xyxrSKhN; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:41868 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nF1BR-0004Bz-Hz for patch@linaro.org; Tue, 01 Feb 2022 16:59:29 -0500 Received: from eggs.gnu.org ([209.51.188.92]:44278) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nExnX-0008Cq-4k for qemu-devel@nongnu.org; Tue, 01 Feb 2022 13:22:36 -0500 Received: from [2a00:1450:4864:20::62c] (port=44713 helo=mail-ej1-x62c.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nExmZ-0000fL-Pt for qemu-devel@nongnu.org; Tue, 01 Feb 2022 13:21:41 -0500 Received: by mail-ej1-x62c.google.com with SMTP id ka4so56675180ejc.11 for ; Tue, 01 Feb 2022 10:21:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=RF5y4dzhS8bG68f7NLy4ZRBD5ccx4mYs0zSlmwkW1WI=; b=xyxrSKhNUyh+NMnKYYa2suYiu4kaXxRCx32UlgYvL3T3D3YdmjYzC7bKujkhU/2nav DQQJjnFHAqPWKxCTR0O6LAGYx7VINMB4KA4TSszadOeb3ymeWwpLo+A7tEONbRQ33baU dQJrVvLNs6c4m4PgCrKDrIymQGljTThhgFYaHPKtfLxEBtCpVbpsZg1ABnRc3nk2LROs 3RqP88ZrZJ10KuchBsOtB465kPMFCsw9Q6EFC+a9QvwRsvsLuQj8raHjfr7CHktY2Txq n9hnjdhzuNIg/fsyvdRyJMsqzK5Z4lOUETMI2m5O2PFdh24Q4a2CLDXlp1QOXa0a1GFI 39eQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=RF5y4dzhS8bG68f7NLy4ZRBD5ccx4mYs0zSlmwkW1WI=; b=ezNORb95UM/QVpkpi+uXbplvA4a1gKGPL392IxS7r2eQvSpNs6kyIUVewb2Dt4RIEP 3wmyJdRLbMMdqcsM5FGkYRpz86cDFdnMBPBArlpDE19qdry/Q0ZjkGr9AnAXuvsm9Rmk o0I356oPFd1X6K4tLsU3PyCrdo8M+3dcPWf7mI2rmiDsg4CpSai2aFvrYThTOYkyK5db 1BIGM5Pu6YwR/yoM8TwaJeMmU4SHYH/g5Ggw19oP+7+OjV0Hv7RMknHqxHN7Mn3+EZJB hCo46lRmFw+U9+ni9NifuRawKGZllvP9Pq/Mw1ks3NxZHgc0137KfPFLhaElVH44qLCJ ESVQ== X-Gm-Message-State: AOAM532DFIliWBeqK6OFINEK1llDWXAEzkYfXlNmB7d68GqiXNLzgJ/9 lPjJnUiUwpVkko+d+z4psH1evw== X-Received: by 2002:a17:907:1623:: with SMTP id hb35mr22011728ejc.209.1643739674758; Tue, 01 Feb 2022 10:21:14 -0800 (PST) Received: from zen.linaroharston ([51.148.130.216]) by smtp.gmail.com with ESMTPSA id ry6sm6601713ejc.45.2022.02.01.10.20.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 01 Feb 2022 10:21:08 -0800 (PST) Received: from zen.lan (localhost [127.0.0.1]) by zen.linaroharston (Postfix) with ESMTP id 391C01FFC8; Tue, 1 Feb 2022 18:20:52 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Subject: [PATCH v2 16/25] docs: remove references to TCG tracing Date: Tue, 1 Feb 2022 18:20:41 +0000 Message-Id: <20220201182050.15087-17-alex.bennee@linaro.org> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20220201182050.15087-1-alex.bennee@linaro.org> References: <20220201182050.15087-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a00:1450:4864:20::62c (failed) Received-SPF: pass client-ip=2a00:1450:4864:20::62c; envelope-from=alex.bennee@linaro.org; helo=mail-ej1-x62c.google.com X-Spam_score_int: -12 X-Spam_score: -1.3 X-Spam_bar: - X-Spam_report: (-1.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, PDS_HP_HELO_NORDNS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: fam@euphon.net, berrange@redhat.com, stefanha@redhat.com, crosa@redhat.com, Richard Henderson , aaron@os.amperecomputing.com, robhenry@microsoft.com, f4bug@amsat.org, Luis Vilanova , mahmoudabdalghany@outlook.com, minyihh@uci.edu, cota@braap.org, Luke.Craig@ll.mit.edu, pbonzini@redhat.com, kuhn.chenqun@huawei.com, ma.mandourr@gmail.com, =?utf-8?q?Alex_Benn=C3=A9e?= , aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Users wanting this sort of functionality should turn to TCG plugins instead. Signed-off-by: Alex Bennée Reviewed-by: Richard Henderson Cc: Luis Vilanova Cc: Stefan Hajnoczi Message-Id: <20220124201608.604599-14-alex.bennee@linaro.org> --- docs/about/removed-features.rst | 13 +++++ docs/devel/tracing.rst | 85 --------------------------------- 2 files changed, 13 insertions(+), 85 deletions(-) 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: -"_trans" to trace the event at translation time, and -"_exec" to trace the event at execution time. - -Instead of using these two events, you should instead use the function -"trace__tcg" during translation (TCG code generation). This function -will automatically call "trace__trans", and will generate the -necessary TCG code to call "trace__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__tcg" will gracefully forward -them to the "_trans" and "_exec" events. Since TCG values -are not known at translation time, these are ignored by the "_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