From patchwork Fri Feb 4 20:43:26 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: 539899 Delivered-To: patch@linaro.org Received: by 2002:ac0:f7d2:0:0:0:0:0 with SMTP id i18csp3583102imr; Fri, 4 Feb 2022 13:18:51 -0800 (PST) X-Google-Smtp-Source: ABdhPJzicHwkzQrdi1tvSxd6Cj/dM6mk3fKmg7+rWEvwxp+Sl5jM+NSAtSdxAlw7Ck/zuQgOuZHf X-Received: by 2002:a0d:fb06:: with SMTP id l6mr960822ywf.44.1644009531683; Fri, 04 Feb 2022 13:18:51 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1644009531; cv=none; d=google.com; s=arc-20160816; b=GJy8IxsiMFJG99mLObgowNr/XFaHBlIdIerdaFpIFCiSDtIca0jw+0D0CR8RFIlyuK /dk0J8lxA3KhB3COz3LXq4I4FHV+HbM2zXrZV1P5MEJ1KliVgM78vPkCApjptf25SlJ3 78UGptjHUnL9ie7J2LnCntLzRU+C/odinfww491jI7ePiBWVk5ZdZwFXh4LfQ6vXzwjA I4l513l6QX9NQwmIbBCY1n+dD0HCm1ReeTuSy58SCUqNJfMEPmkwMZdcRj+XxCqIGqJv BXfzvj2Fjq+v6QllBvxEeQZSReeY2hfP3pESiy8BAZMMsF8VNSgw0NZmiuBN6iSLkSEc HwPQ== 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=rwZz5OEZQym+2K93qdPO8hDZDMvm5zmGnd0YJ+E+Fkon+E7YEG5SogdCSEio5U2wDq ailOVKxmCPoK0V9PrP1Zg8Fq/VjSmPAgMgRKncZ7yPmy+97hBkwhmdZ+/mbtnB78Faqb I2W9WfyxkaVq6HXBjw+SQhmKx7hcByg4UBYGUasEFWVp2AdnVMLz2w0h6nR0odTSkkPC 2Zj8UMm4pszGSc5THhHKbsw0EsOemkUsF568LQPMoVCKGIsdyAl37b42u7Zdt0LGhB0O G/tJ1s7dXHk/PFxGqtnCl5rU76k5/fF6Y/yEtAkV2cuWIqrglsaJQ+snP0HCua2i5iL4 mWlw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=ZcPU6nkR; 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 u197si2496682ywu.36.2022.02.04.13.18.51 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 04 Feb 2022 13:18:51 -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=ZcPU6nkR; 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]:60418 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nG5yl-00030m-3i for patch@linaro.org; Fri, 04 Feb 2022 16:18:51 -0500 Received: from eggs.gnu.org ([209.51.188.92]:52744) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nG5Wc-0000Ah-53 for qemu-devel@nongnu.org; Fri, 04 Feb 2022 15:49:46 -0500 Received: from [2a00:1450:4864:20::332] (port=38580 helo=mail-wm1-x332.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nG5WM-0008A0-CQ for qemu-devel@nongnu.org; Fri, 04 Feb 2022 15:49:45 -0500 Received: by mail-wm1-x332.google.com with SMTP id o30-20020a05600c511e00b0034f4c3186f4so10202839wms.3 for ; Fri, 04 Feb 2022 12:49:23 -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=ZcPU6nkRILyMXl/MEFbqzJw9PVRYUGoCq0W8XF8Yq4FxOH5WlKqsIGhqwXXraGgi1I Eu9ZokwiB0MM0OIsRYOtQCerM9vg2DroCz14rKLFmJzK/rgPwYSCM5NDgHGHxgI5Iw09 bk+Xw4K3Gx7d0N4qaiKAb4lNbyPXah4QGrEmWqIOSk0P05H9II+FefMQaHKb1bGpe5k1 n0aGImS9S0BYK8YKSBTiMGNhy1qesWQOD4pFGCUFmm08X6CB79Yg2aY/I5EFMR4j+ozF VLWYU72r032EZfHBYrpfCAFnPUU/pSmbJjA15d5R2mi8UJoOcO4+eZ+JYQPcV6OOTHhS sjAw== 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=sHr+x4Fq4a8NY5TpXOWnfEY2INLWenPEuvqF9ro06rbJheJMdiqjQrlgOrAORFhpfO BYNmaiTGAL2Zhk0ODgYVIiNpel7eOg/6IxQk6d6hBfI6afwaQ1cXtO72BtQWYripTpGR oyByj2yrBwDhBTAUAFr8Jq62OZrohIgir82x3kmzumpFAGdAavzYqkxC7kDFcoe31tjW ru56y5JS0dg4zJ3dTcv9PCxlSBlhqz69wQoGJUGlgtvhbrOm0Ym6WOqLUabw7u0xYGes jEGqnwLCAeZKNc3YCQgc0ziw/2iHgrRTvFyhY6FCDmQcwnLhQsRoByHYwiV5NGE1bPHP 97/Q== X-Gm-Message-State: AOAM532H870iIPOx3z8ZmsNgbOndENxDIro6F0kMHWeB2asX/fkIEmh3 MqrVCcYtfKnbVpuEZzlgzzq3/g== X-Received: by 2002:a05:600c:8a9:: with SMTP id l41mr423230wmp.51.1644007762235; Fri, 04 Feb 2022 12:49:22 -0800 (PST) Received: from zen.linaroharston ([51.148.130.216]) by smtp.gmail.com with ESMTPSA id j13sm2944100wrw.116.2022.02.04.12.49.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Feb 2022 12:49:17 -0800 (PST) Received: from zen.lan (localhost [127.0.0.1]) by zen.linaroharston (Postfix) with ESMTP id B86911FFC9; Fri, 4 Feb 2022 20:43:36 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: richard.henderson@linaro.org, qemu-devel@nongnu.org Subject: [PATCH v3 17/26] docs: remove references to TCG tracing Date: Fri, 4 Feb 2022 20:43:26 +0000 Message-Id: <20220204204335.1689602-18-alex.bennee@linaro.org> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20220204204335.1689602-1-alex.bennee@linaro.org> References: <20220204204335.1689602-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a00:1450:4864:20::332 (failed) Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=alex.bennee@linaro.org; helo=mail-wm1-x332.google.com X-Spam_score_int: -8 X-Spam_score: -0.9 X-Spam_bar: / X-Spam_report: (-0.9 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=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, Luke.Craig@ll.mit.edu, kuhn.chenqun@huawei.com, f4bug@amsat.org, robhenry@microsoft.com, aaron@os.amperecomputing.com, Luis Vilanova , mahmoudabdalghany@outlook.com, minyihh@uci.edu, cota@braap.org, stefanha@redhat.com, crosa@redhat.com, pbonzini@redhat.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