From nobody Sat Nov 15 17:45:26 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1748801617; cv=none; d=zohomail.com; s=zohoarc; b=Qs36MExXSPOz596a0bdc72hs8yCDrnUkZWz7jfcduTBb0QiB1gJ4cr49Mp5JZVOI3q4Atrw4QdQZ8z9Ms/qNo2PzndLmofAaRManpc2Mri9/YX5nCHZrwm4SFk80k/G71fqtLeuiWyiT+zvYzEMTnCSnGojLekB8LNr442P9NYw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1748801617; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=F26xt53SD7/0sbTj2mZq8Jxx7blMqx6sb10y95AoeDI=; b=OcR8Fg7MtidjDLTnS+EKC0Ur9wSNQ2Ut72TibKC30KTZc5J9CgwjquHZ+pXcD/bDoUpQ2FThxQN71fX8RpIi9821L25La+TR+P+keFZr35U5zMjttemuqfxgmN84dHWWK1OdY07AXAMwAA4ZB6BaoogFLMTJ9n2mXny3yXMH9Zk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1748801617541918.2111052017858; Sun, 1 Jun 2025 11:13:37 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uLnAq-00020o-OZ; Sun, 01 Jun 2025 14:12:44 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uLnAo-00020G-Qq for qemu-devel@nongnu.org; Sun, 01 Jun 2025 14:12:42 -0400 Received: from mail-pf1-x42a.google.com ([2607:f8b0:4864:20::42a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uLnAm-0002oT-Vg for qemu-devel@nongnu.org; Sun, 01 Jun 2025 14:12:42 -0400 Received: by mail-pf1-x42a.google.com with SMTP id d2e1a72fcca58-742af848148so2321613b3a.1 for ; Sun, 01 Jun 2025 11:12:40 -0700 (PDT) Received: from ubuntu.. ([49.207.58.139]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-747afed4bafsm6189191b3a.79.2025.06.01.11.12.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 01 Jun 2025 11:12:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1748801559; x=1749406359; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=F26xt53SD7/0sbTj2mZq8Jxx7blMqx6sb10y95AoeDI=; b=TnZ8EFU5INqjOsgEsnX8pej+pxw0hQoxMzv4RD6dEXxHt+a1pA1HPhxtJuUm3Vbhjj gI15W2OHy7E/A/FPf+wIzPKa3t/Wc7JYA5JTV7B2ig0oy7nS+m9xK1vSB8A4lylhBmGX kQZKiTcbBE+QbA71t0CiAfqq/o/GEdPH68T2a+jYzB/iBIBG8HKAyFLFpflgE7I9Bdb2 /T7HbhpUtm2wkjIjwZSomG4hk9ukav1nY+9DlR92u1huWJiS1ajRfYsKN0qFgSzzORiR C8vA4TBpPSmC2jH0fXDPs3RVF92yZnfz5nD1KGfU3Epxhxq+wJKNeH1manhMSj5coJWz BCrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748801559; x=1749406359; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=F26xt53SD7/0sbTj2mZq8Jxx7blMqx6sb10y95AoeDI=; b=G325E7YQcFwgTR+H+dwgpF3vmJeQ6AgP+P3A4KHG4QXWw4nIHq1US1OMo7H4MbPRvQ 9fN7W28OT1b4LgcsMIrr2ozrD7Q9bnDCV7t1QsozLkK81zyTlX1zQp8LHhCOkhGxwpeO IGVyA2wAPoxj4lsHCpV5Dt/VX7zRsrD7ZT3W+ci2a9USN0slwuAgAXYGYKO7CQMhLaa1 lPSCmULSJyeFGqcH+00Dj/umsPZPA2qvnKrKfK/L6JxEn1JIktOM/+0JYhbSAShdL2tP j4BB+CuIY3X8wY1jqdNxHiOfgHg//Vg4/rAUm2JEXWJzifsK+b9QLFUy5cx72pj5y8M+ tPLQ== X-Gm-Message-State: AOJu0YyJrE/eyzjpVW9ZMYyA+e1jQUk3HbSdzc1+gcG/L825Eb5gVxVd ishpztNGk9w9J89AGhYOIAzkVeSc5+4y86eMLBop1/G04yYQwJuk1wvTEtPtxwJw38AmjA== X-Gm-Gg: ASbGncs3DjIU9O1G8giAF0AL4jqZnplsM18aMI7AZ7tCGFJLD683Klpn5MvKeAuKS4q TljbrZ386gT5KN9xttgMSEWI0lAgHrvOq4+nLLenRu7TqjZfKRnxppIsbzuG6lSv1ipa1VMwGZ3 Gq5YGMkctaDFL5gu7qqtlDGM4MW8xCBG3HlOOnxirqnfUezalSVxii70AFmrmTpFNrpQzf1jgm6 1mdBIffe0OwUpxj/EApPuzDte/wx2t4TBa9jlTUR7CkK/DovK70whEOLeBB2YKEQdAn6kNg+D2x Y+DVVFAjuqteaKZqjk1tCJqdBCj/rk0euQJumh/P6R80sJt7aipfIoNpk2ooreCxHxgofjvy X-Google-Smtp-Source: AGHT+IEARA6o8RXWdPby4uob9Hz1e7h4596ZzlNaG4nb3dimZZjdSEFafMqNoSoUTOjfIdqSl/W5tg== X-Received: by 2002:a05:6a00:4b13:b0:73f:ff25:90b3 with SMTP id d2e1a72fcca58-747d1ae2c64mr8818577b3a.24.1748801559076; Sun, 01 Jun 2025 11:12:39 -0700 (PDT) From: Tanish Desai To: qemu-devel@nongnu.org Cc: Stefan Hajnoczi , pbonzini@redhat.com, Mads Ynddal , Tanish Desai Subject: [PATCH 1/3] trace/syslog: seperate cold paths of tracing functions Date: Sun, 1 Jun 2025 18:12:29 +0000 Message-Id: <20250601181231.3461-2-tanishdesai37@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250601181231.3461-1-tanishdesai37@gmail.com> References: <20250601181231.3461-1-tanishdesai37@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::42a; envelope-from=tanishdesai37@gmail.com; helo=mail-pf1-x42a.google.com X-Spam_score_int: -17 X-Spam_score: -1.8 X-Spam_bar: - X-Spam_report: (-1.8 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham 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: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1748801618800116600 Content-Type: text/plain; charset="utf-8" inline: move hot paths from .c to .h for better performance Moved frequently used hot paths from the .c file to the .h file to enable i= nlining and improve performance. This approach is inspired by past QEMU optimizatio= ns, where performance-critical code was inlined based on profiling results. Signed-off-by: Tanish Desai --- scripts/tracetool/backend/syslog.py | 36 +++++++++++++++++++++++------ 1 file changed, 29 insertions(+), 7 deletions(-) diff --git a/scripts/tracetool/backend/syslog.py b/scripts/tracetool/backen= d/syslog.py index 012970f6cc..52b8ff65ea 100644 --- a/scripts/tracetool/backend/syslog.py +++ b/scripts/tracetool/backend/syslog.py @@ -21,8 +21,12 @@ =20 =20 def generate_h_begin(events, group): - out('#include ', - '') + out('#include ') + for event in events: + out('void _syslog_%(api)s(%(args)s);', + api=3Devent.api(), + args=3Devent.args) + out('') =20 =20 def generate_h(event, group): @@ -37,17 +41,35 @@ def generate_h(event, group): cond =3D "trace_event_get_state(%s)" % ("TRACE_" + event.name.uppe= r()) =20 out(' if (%(cond)s) {', - '#line %(event_lineno)d "%(event_filename)s"', - ' syslog(LOG_INFO, "%(name)s " %(fmt)s %(argnames)s);', - '#line %(out_next_lineno)d "%(out_filename)s"', + ' _syslog_%(api)s(%(args)s);', ' }', cond=3Dcond, event_lineno=3Devent.lineno, event_filename=3Dos.path.relpath(event.filename), name=3Devent.name, fmt=3Devent.fmt.rstrip("\n"), - argnames=3Dargnames) - + argnames=3Dargnames, + api=3Devent.api(), + args=3D", ".join(event.args.names())) + + +def generate_c(event, group): + argnames =3D ", ".join(event.args.names()) + if len(event.args) > 0: + argnames =3D ", " + argnames + out('void _syslog_%(api)s(%(args)s){', + ' #line %(event_lineno)d "%(event_filename)s"', + ' syslog(LOG_INFO, "%(name)s " %(fmt)s %(argnames)s);', + ' #line %(out_next_lineno)d "%(out_filename)s"', + '}', + '', + event_lineno=3Devent.lineno, + event_filename=3Dos.path.relpath(event.filename), + name=3Devent.name, + fmt=3Devent.fmt.rstrip("\n"), + argnames=3Dargnames, + api=3Devent.api(), + args=3Devent.args) =20 =20 def generate_h_backend_dstate(event, group): out(' trace_event_get_state_dynamic_by_id(%(event_id)s) || \\', --=20 2.34.1 From nobody Sat Nov 15 17:45:26 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1748801631; cv=none; d=zohomail.com; s=zohoarc; b=C8NB/Z5kl1HvN6UM1GG1JP3VZPOObp+HW1slLmvnBwbKrWQyjU9HZqAIij4eziG72cjken8K2psk4x7odbqsAlf047B61kFpQWmiQbpwE2M67P8PYrVqb9qaICdwDq4leKDXiogDSP1Gzi9kOWVqDeL12ca89WlsC7GgiCoUCNs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1748801631; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=HtMYrVMuloYt3Yjr4sNHWX4khJZ7APlMmjLEKIR4VtI=; b=ktek9MmNJGz4avgpsvwlEzrI5zinOQWy3Du80JQmLIXi2ZjtIk2rijSDfKp/5HHM4uvrnreZZumaPV3wp6st5vH0IIWdGe/iAnVqXNp/WO0cwxvLRQhW+kHV8KVqaq1TjdrOZylzBzI7WdbVrTS9bAx+mQz+X4WggA13RQWoKDk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1748801631330768.0857491803997; Sun, 1 Jun 2025 11:13:51 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uLnAt-00021G-1x; Sun, 01 Jun 2025 14:12:47 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uLnAr-00020q-7v for qemu-devel@nongnu.org; Sun, 01 Jun 2025 14:12:45 -0400 Received: from mail-pf1-x431.google.com ([2607:f8b0:4864:20::431]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uLnAp-0002oi-LD for qemu-devel@nongnu.org; Sun, 01 Jun 2025 14:12:44 -0400 Received: by mail-pf1-x431.google.com with SMTP id d2e1a72fcca58-747d59045a0so555944b3a.1 for ; Sun, 01 Jun 2025 11:12:43 -0700 (PDT) Received: from ubuntu.. ([49.207.58.139]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-747afed4bafsm6189191b3a.79.2025.06.01.11.12.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 01 Jun 2025 11:12:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1748801562; x=1749406362; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=HtMYrVMuloYt3Yjr4sNHWX4khJZ7APlMmjLEKIR4VtI=; b=IOnfxPpguI6wquYtky79KLaXwrHFDy137NJebL1Hms2H4H0NqUCG2oRzQo8fsM40Be 0TDhITaTtMZXCZcJAwm6lQ6htiGNJVNdJlVndxwYpjZS0QYTsEuEUZDNwzOwDBUk448H 7CA/t1t70P0lVSUUwmosz8X8cdabPanB2DPlYmpjxCetGbRGeYXcQA1NQU2irC7+B7o5 Ngoxt3PcBB1iOfrw1fRrbgM1rUu6/qshXFHTM/3gI2HJvcvZQly6LwJ+v+ZGr01XLFqc weiQAxm0GRPZJhnBPqdG8xUTMOaSQ7AOLNtZgrlA2EbCueobhPZfLt7OpLLXIQX4PVWJ uUNg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748801562; x=1749406362; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HtMYrVMuloYt3Yjr4sNHWX4khJZ7APlMmjLEKIR4VtI=; b=KSBLd8rCI7TgdhnhekDfEkDfM3+vFmiI6tUHnyuPQzVxvU40qsPPUvUfgH/i59Me5o v4vvoHh7o3L5f9yAFrNSLEuavtxdx92+V5FmmiilCrlRh90d8xZb5j/LxrWc+reBJB1B Ce/AqU2QMjDXukIhhRjWb4LPGkwoS1W5IiXBKb+kZ/LlOwbrN9JH8PNiSAifVmjWjkuw pByvJhW6CcwIqgiVJlhLx26G7qSNK+B5qbhNDYBC31CE/kNydaVkXk0KHBvR88O87mPH BkUmahmJ/zlZlS2GFbxlaE/gTvGEDnf442AjNWv5QyUmlQvY+B/yYUkNedWQy6792xC5 +ujw== X-Gm-Message-State: AOJu0YxFWGSc76FHSPrEUHXY4vwUvLS2rN8vhyzWZEkDlo14u34+q0/B O2YOz3Ba64ow5uemGcpWjqWpOIeLuK6aIiXH2lQi8zQq62b3+Q1G86Zed13g0zO7P7KsKg== X-Gm-Gg: ASbGncsyduZowIKP+8naxl4+VPePNahfHyPHq9Fgm753bz28gm/vvku8o8NwjL8ZRiA bTNzMVo+Bgwy0JuqNFvbpv1VnGff0KLW7ZX8CBYfqDYGYE+OX87YccOFeohT3NwAyWForoytehW dgu9CrtWU11yhSXLyZcetYRakNI3xFxKYc+FbyuwDfbBbAs/h/paW6eBj++cKkSoBobE8azr9nD i/60YbouD2mqV5K2x1x1aVBKbzC/ddbXabjnAE0FIc6jTtDIbBJ/1jpsJDWInpC8YDFPo9wrVO1 sUb67jbpENnA+aqNb/7ZNOyA/jAE9z7HLl66SUBtkkcb/5W58PYkqBiUR2OeSw== X-Google-Smtp-Source: AGHT+IFoygaaqRZY4MpjSkbKv3SZzU7WJHNsxEBnkzkXypS3wGU5cUJeSySRFnUb0pFpWfG7age/tA== X-Received: by 2002:a05:6a20:7344:b0:1f5:7c6f:6c8b with SMTP id adf61e73a8af0-21adff5ae5bmr15141189637.10.1748801561586; Sun, 01 Jun 2025 11:12:41 -0700 (PDT) From: Tanish Desai To: qemu-devel@nongnu.org Cc: Stefan Hajnoczi , pbonzini@redhat.com, Mads Ynddal , Tanish Desai Subject: [PATCH 2/3] trace/ftrace: seperate cold paths of tracing functions Date: Sun, 1 Jun 2025 18:12:30 +0000 Message-Id: <20250601181231.3461-3-tanishdesai37@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250601181231.3461-1-tanishdesai37@gmail.com> References: <20250601181231.3461-1-tanishdesai37@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::431; envelope-from=tanishdesai37@gmail.com; helo=mail-pf1-x431.google.com X-Spam_score_int: -17 X-Spam_score: -1.8 X-Spam_bar: - X-Spam_report: (-1.8 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham 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: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1748801633340116600 Content-Type: text/plain; charset="utf-8" Moved rarely used (cold) code from the header file to the C file to avoid unnecessary inlining and reduce binary size. This improves code organization and follows good practices for managing cold paths. Signed-off-by: Tanish Desai --- scripts/tracetool/backend/ftrace.py | 44 +++++++++++++++++++++-------- 1 file changed, 32 insertions(+), 12 deletions(-) diff --git a/scripts/tracetool/backend/ftrace.py b/scripts/tracetool/backen= d/ftrace.py index baed2ae61c..c9717d7b42 100644 --- a/scripts/tracetool/backend/ftrace.py +++ b/scripts/tracetool/backend/ftrace.py @@ -23,6 +23,10 @@ def generate_h_begin(events, group): out('#include "trace/ftrace.h"', '') + for event in events: + out('void _ftrace_%(api)s(%(args)s);', + api=3Devent.api(), + args=3Devent.args) =20 =20 def generate_h(event, group): @@ -30,26 +34,42 @@ def generate_h(event, group): if len(event.args) > 0: argnames =3D ", " + argnames =20 - out(' {', + out(' if (trace_event_get_state(%(event_id)s)) {', + ' _ftrace_%(api)s(%(args)s);', + ' }', + name=3Devent.name, + args=3D", ".join(event.args.names()), + event_id=3D"TRACE_" + event.name.upper(), + event_lineno=3Devent.lineno, + event_filename=3Dos.path.relpath(event.filename), + fmt=3Devent.fmt.rstrip("\n"), + argnames=3Dargnames, + api=3Devent.api() + ) + + +def generate_c(event, group): + argnames =3D ", ".join(event.args.names()) + if len(event.args) > 0: + argnames =3D ", " + argnames + out('void _ftrace_%(api)s(%(args)s){', ' char ftrace_buf[MAX_TRACE_STRLEN];', ' int unused __attribute__ ((unused));', ' int trlen;', - ' if (trace_event_get_state(%(event_id)s)) {', '#line %(event_lineno)d "%(event_filename)s"', - ' trlen =3D snprintf(ftrace_buf, MAX_TRACE_STRLEN,', - ' "%(name)s " %(fmt)s "\\n" %(argnames= )s);', + ' trlen =3D snprintf(ftrace_buf, MAX_TRACE_STRLEN,', '#line %(out_next_lineno)d "%(out_filename)s"', - ' trlen =3D MIN(trlen, MAX_TRACE_STRLEN - 1);', - ' unused =3D write(trace_marker_fd, ftrace_buf, trlen);= ', - ' }', - ' }', - name=3Devent.name, - args=3Devent.args, - event_id=3D"TRACE_" + event.name.upper(), + ' "%(name)s " %(fmt)s "\\n" %(argnames)s);', + ' trlen =3D MIN(trlen, MAX_TRACE_STRLEN - 1);', + ' unused =3D write(trace_marker_fd, ftrace_buf, trlen);', + '}', event_lineno=3Devent.lineno, event_filename=3Dos.path.relpath(event.filename), + name=3Devent.name, fmt=3Devent.fmt.rstrip("\n"), - argnames=3Dargnames) + argnames=3Dargnames, + api=3Devent.api(), + args=3Devent.args) =20 =20 def generate_h_backend_dstate(event, group): --=20 2.34.1 From nobody Sat Nov 15 17:45:26 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1748801632; cv=none; d=zohomail.com; s=zohoarc; b=G7GpjLzsrCen8vIaLYpgOpWNN6go2FPfWFEfgyblW9r1bFWZ1pmWQYDmFFIywSu3aaPS0BhXB1nYpkmMpm3RFijAfKN8qpdI5j2svrgmt3E2oI5Sl6WYYF9ziV9G8YOkEMURQoZTW4Hi8jdlOTNNXNv1f0e1pttduOueu+ZOfYs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1748801632; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=3WBLhmVUNFmmWr7iWGyD+QREshlRfuZn9YAw+EwxcsE=; b=mSuMRvFqhv7Rhy3zmSt9lx2bBdqqkxEJwpS5yTZXNH3q5Oz9K4kkc3tJCki45EOO1EMje2d/avfVWPGdF8scT7bA5jbK01xczZocFfJHgbZYVfyVBtKhfpDFv6999MweKUtWFNpf5ORsTbWg4HuVYfy+oT+K/O/GZIGsZtGR6NY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1748801632150328.65215017905587; Sun, 1 Jun 2025 11:13:52 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uLnAu-00021Y-QN; Sun, 01 Jun 2025 14:12:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uLnAt-00021I-CU for qemu-devel@nongnu.org; Sun, 01 Jun 2025 14:12:47 -0400 Received: from mail-pf1-x42f.google.com ([2607:f8b0:4864:20::42f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uLnAr-0002ow-RA for qemu-devel@nongnu.org; Sun, 01 Jun 2025 14:12:47 -0400 Received: by mail-pf1-x42f.google.com with SMTP id d2e1a72fcca58-742c9563fd9so2935045b3a.3 for ; Sun, 01 Jun 2025 11:12:45 -0700 (PDT) Received: from ubuntu.. ([49.207.58.139]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-747afed4bafsm6189191b3a.79.2025.06.01.11.12.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 01 Jun 2025 11:12:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1748801564; x=1749406364; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=3WBLhmVUNFmmWr7iWGyD+QREshlRfuZn9YAw+EwxcsE=; b=lpMXUTP+2r/dBFp6QuWzwZK895DPgXVBXaT7Eb+nKjdcqZI3WCYWbrZoFrH/50KJ2U G++tfRcBZEIWPLwPKbPttThbf+63AQ5128LHql1yVCQeEWORs9wLkutW1Prs+WcP5ka7 2/VjmGRRumdJPf+7HPTeDn1Ftedtd6JJvaVYIUxdlpeX8aC4c04uJjvSbn+Qin64T1oa 1A2afBg04AOt3yVL9ydrDDiNy8gtvlzHMnR3Srsr/RjfdDljHz4j8p4kXEE8HRNfC6jc kvON1cqhE9NqFEX+k4DbVzqXac+U7P3JDfRooiPEZTIy+f7KyDl/Ofh1yJIclap+Ld+U eCFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748801564; x=1749406364; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3WBLhmVUNFmmWr7iWGyD+QREshlRfuZn9YAw+EwxcsE=; b=bq62lItsJyFBR4fDlX/eL1hjDeJLDwVrGyzOq/VzKk4+2FQYIUmyUVnnc9QN34JG+y aUDBaeGCiVoF8IMv3+89E3K3LeUO3WaEAEq4LGBwCd0I+GfJyfcIpnJI7eid5u3xtqYF 2kQ/r+tAV7Ws5P9NaqRozBDIDw5WEan9guzxmCgvunTHA153kbq43Zip2ACn5sjDiPbK 8hYWqRkZ8AJOcVbS982pnKLaNW2x84Kcz8uKmzRhvJ7RX+ZuwCgdRarDAegjy/m9nDq1 32cS/LuBPsQYC3gx/FzUyjcTubBigXCYIpcuazlFBqgv9Nb+pHicg8DsysrJh7OjRuJ1 VdrQ== X-Gm-Message-State: AOJu0YxhnF70Pb3ID2owbNu1fxE2VDXT3DMZW2fvVpLZzCahkIkuWgGv I4tkNUr//NDpu38Ii/Q/jPdUsPCtD2p1p4XvcYJdobXMmmRlI5WMVFg5IH/zmVEp6pZM4w== X-Gm-Gg: ASbGncvphJViFHAZv0GbI48HLCNcai+BQYHIQNDeksru6zzlthGEblg/lDpt9uU6Bno y8eSHmXi2xJBigXsSB4SnIf1UJzDjhZQn9tsGaFVHUM6B6NFz+hUuzGIkx9athj+QsBlGEBPjtB Ma6kHPDoQnrolnFSnRrCEn9ozRO0bTYCN6epsv/qFxOtXx2ctlr97DGjd/28mJFZP3qi8Fd+l1d pt/xSoOZSb9wr3Zsj63o5pKcmy4JhuHGRi8HssxoXO0NkDMQBQE3NWV0GxGhrXTyFAeInf4PxwT x1NEsiitFoU+gImVe5+7G4eA9zc9+iDaDXYTXyAa5EXvTRYks2mO5Qa38G/7Zw== X-Google-Smtp-Source: AGHT+IGJ8LcEKExYmpW+rhMh2S/WK9qeFiecSO5i3z+vg1zitqHFCfw5LMF1q134xtjoCedPAGbqDQ== X-Received: by 2002:a05:6a00:a27:b0:736:5438:ccc with SMTP id d2e1a72fcca58-747c1a83bd3mr13717140b3a.9.1748801563981; Sun, 01 Jun 2025 11:12:43 -0700 (PDT) From: Tanish Desai To: qemu-devel@nongnu.org Cc: Stefan Hajnoczi , pbonzini@redhat.com, Mads Ynddal , Tanish Desai Subject: [PATCH 3/3] trace/log: seperate cold path of tracing functions Date: Sun, 1 Jun 2025 18:12:31 +0000 Message-Id: <20250601181231.3461-4-tanishdesai37@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250601181231.3461-1-tanishdesai37@gmail.com> References: <20250601181231.3461-1-tanishdesai37@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::42f; envelope-from=tanishdesai37@gmail.com; helo=mail-pf1-x42f.google.com X-Spam_score_int: -17 X-Spam_score: -1.8 X-Spam_bar: - X-Spam_report: (-1.8 / 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, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham 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: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1748801633348116600 Content-Type: text/plain; charset="utf-8" Moved frequently used hot paths from the .c file to the .h file to enable i= nlining and improve performance. This approach is inspired by past QEMU optimizatio= ns, where performance-critical code was inlined based on profiling results. Signed-off-by: Tanish Desai --- scripts/tracetool/backend/log.py | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/scripts/tracetool/backend/log.py b/scripts/tracetool/backend/l= og.py index de27b7e62e..ca53747950 100644 --- a/scripts/tracetool/backend/log.py +++ b/scripts/tracetool/backend/log.py @@ -24,6 +24,10 @@ def generate_h_begin(events, group): out('#include "qemu/log-for-trace.h"', '#include "qemu/error-report.h"', '') + for event in events: + out('void _log_%(api)s(%(args)s);', + api=3Devent.api(), + args=3Devent.args) =20 =20 def generate_h(event, group): @@ -38,6 +42,22 @@ def generate_h(event, group): cond =3D "trace_event_get_state(%s)" % ("TRACE_" + event.name.uppe= r()) =20 out(' if (%(cond)s && qemu_loglevel_mask(LOG_TRACE)) {', + ' _log_%(api)s(%(args)s);', + ' }', + cond=3Dcond, + event_lineno=3Devent.lineno, + event_filename=3Dos.path.relpath(event.filename), + name=3Devent.name, + fmt=3Devent.fmt.rstrip("\n"), + argnames=3Dargnames, + args =3D ", ".join(event.args.names()), + api=3Devent.api()) + +def generate_c(event, group): + argnames =3D ", ".join(event.args.names()) + if len(event.args) > 0: + argnames =3D ", " + argnames + out('void _log_%(api)s(%(args)s){', ' if (message_with_timestamp) {', ' struct timeval _now;', ' gettimeofday(&_now, NULL);', @@ -53,12 +73,14 @@ def generate_h(event, group): '#line %(out_next_lineno)d "%(out_filename)s"', ' }', ' }', - cond=3Dcond, event_lineno=3Devent.lineno, event_filename=3Dos.path.relpath(event.filename), name=3Devent.name, fmt=3Devent.fmt.rstrip("\n"), - argnames=3Dargnames) + argnames=3Dargnames, + args=3Devent.args, + api=3Devent.api() + ) =20 =20 def generate_h_backend_dstate(event, group): --=20 2.34.1