From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9A7C2385D82 for ; Thu, 6 Aug 2026 05:07:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.47 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785992843; cv=none; b=DatRC6Fyj9au9oyXjdOyHBPS8eItrb8jxwMRfoL9H/Uane6Nqm9rkzKlmv/bOtTWzzXr94qK893p3DcczhfEljRBrKO0WEwlgEzp7UsfQbWPl0ZxA8gULlYCcK9o7WdJHaS7igUsgLXJuUPv4qn5HG36WGz8dAB2HXSvoehSTB4= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785992843; c=relaxed/simple; bh=YySJq6hHiRI5ruUBjw9xY9PfrGu76MSyIUcHMeHoEug=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=uDK68R2NT3SjfpwNYiT5yhdbv9Xe86/1GrXHfoiwIQAvaVy6YBuYpgrIvK8Q4aEif8y6vzDqhsRCFXZA6FtQuVPVdjhc7wGtHZhpKzE9eu9N/5E7tuYdHCW2c/IH8FQKf/wyjmXyIs4Jcd9ZpzSwJbNFPTJ06/+BkEgQrGeMqBg= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=OBrgToE3; arc=none smtp.client-ip=209.85.128.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="OBrgToE3" Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-490cf322ed0so13721265e9.1 for ; Wed, 05 Aug 2026 22:07:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785992840; x=1786597640; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=Q9RiNZzQISUcjwGnzw0LWdiOOvRPI/zRy9W/nyk1gSQ=; b=OBrgToE3OgdgfJ+Tq9tGGmQE1Xmxfb3aHGKyhO73+ot8oVKwcNVlzeFquB+yB/Y9/f DRpd29DGV1f/tj6ZykqK6ot15yBHtGT5ZKDk88OwbbrU4i73FOSegW4Ff91GxujUqyQv U/VRdSsCQPM0CvsoPLE9zKgxbLZViHhU53kz4taQV4dgRzW96lZKJkqAOVgAiaaVoCfS ThdUKKBMLRwniKB/RkYDq/P795XOmdlnVlSUivvz6wXn3Q4qD1Auj04ylUx//KzE/TUK ukTRyFnlRAgnlYhvF1RZmSYUGxpjFXnURqhVNa+hPHqk7hmAnNMDetrIsZpI8MUQ2M/h w/fQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785992840; x=1786597640; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=Q9RiNZzQISUcjwGnzw0LWdiOOvRPI/zRy9W/nyk1gSQ=; b=UqE5T3GUT5EMSYLl3t0C4LtwL8KeF8KqFd7Zf3cfrALoGknd9bC2FTf1qJgPN6GCqY J5VngoQKrmrqx0DuRjx0htIv8ZaUfUb0K+pg1Q1hseQ6X8pJpnaHlYG9MJa+ikK33+uv IphxAySAYC0fjPShDNRcD0bI4YN+cAgHrSGEv1eNCoi0xQhJGJCF3tPK5bRw9eETn8gh JWH7q5cXDuRtDdOm3pkCBNOT/T+ZeJBg85ANxSrIdVhXclp1g0eFV04r5cAQdHLjhsIm fHeHkVMPsb0BL9lqEqhIB/yIJnvCSt4QUoxz352dhOwKC+uf0BSiB6n6KqBIv1103Hro TmSw== X-Forwarded-Encrypted: i=1; AHgh+Rpnp7RKXsTx2erqQdgeg+74CuSB8Sg/0t3jmJyadZUYu6kekha6CCLlSPI/2H9pMtj+QWS7tdowvgMj90E=@vger.kernel.org X-Gm-Message-State: AOJu0Yz5XbSr12UdaJMWxuNfuMnXjKvW13jcoxFMvxLWL/7FgiEscVbh aHwBPBH+qwAeRz9PKP/ZZiVywCQASh00lT09XQemsNDkkiR7fgTFzMvf X-Gm-Gg: AR+sD13k4pVkkm8LdSyz7rx1qATEIv1gb+0y6IxSJnxpBi5ixzMIoYh6GX5JSfcK3Ya ffhDgCD0t9lV2uc6EyRWOmWjRKy9iMbawVWFJBp1hyeALVQKp6vr7D+AlDAol40AXwD5WCRWhc3 fShdEgVcG6iRFGIfPqIQlRDWNERxNfEgIPKr+cRZJYAKpNhdgxHHWBvEQ7YCeMNYdvPVWJQbJ74 2hNdNwQh46kiLWKVSaVZSy9dUA3cQXrNLpfy0ZcUSBQHM+pmlkYpQHW1Lc3Gq04guW4IaIdXE9W mc+8iz8CJs4BzFPJaO+phE+BPVubgeVsEU9yX2mqMVJynrwQK+BUZk4gQwKceN3StmM7gasHYU+ TlXUVkIWw5KuGMBhzUjGkATka7u9upGV7Kg+ZKFoUQlJr3FLlVfUYrUzVEfcI1dVvW0BodNYCdU wfMgS8bzAhWvKAoELgSCygjDHqRLV+UxtCa4xPqxYhCuazVXZ4A5wAZzfIPSGw4EyFvzLdmgcgC Cni/GQwwXmgMRvM5JnBDdmeDZ1o8L4pbZHurjirKR/RO2E/ X-Received: by 2002:a05:600c:2142:b0:495:5858:8101 with SMTP id 5b1f17b1804b1-4994e7cbcbfmr122212915e9.15.1785992839612; Wed, 05 Aug 2026 22:07:19 -0700 (PDT) Received: from dohko.chello.ie (188-141-5-72.dynamic.upc.ie. [188.141.5.72]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4995420cb4esm32477045e9.2.2026.08.05.22.07.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Aug 2026 22:07:19 -0700 (PDT) From: David Carlier To: Steven Rostedt Cc: Masami Hiramatsu , Mathieu Desnoyers , linux-trace-kernel@vger.kernel.org, linux-kernel@vger.kernel.org, David Carlier Subject: [PATCH] tracing: Report TP_printk double dereference with pr_warn() Date: Thu, 6 Aug 2026 06:07:16 +0100 Message-ID: <20260806050716.16612-1-devnexen@gmail.com> X-Mailer: git-send-email 2.55.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit test_double_dereference() uses WARN_ONCE(), which is per-call-site. Only the first offending event in the kernel is ever reported, and the tree still has six: ice_{rx,tx}_dim_template, two hfi1 txq events, mtu3_ep and edma_log_io. Whichever registers first hides the rest, and it taints the kernel for what is a source-level mistake. Use pr_warn() instead, matching the "TRACE EVENT ERROR:" report that handle_dereference_arg() already emits for the same class of problem. All offenders are now listed on one boot. Fixes: b5cc230af5e5 ("tracing: Warn when an event dereferences a pointer in TP_printk()") Signed-off-by: David Carlier --- kernel/trace/trace_events.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c index a8590d2394e3..53f32752edc0 100644 --- a/kernel/trace/trace_events.c +++ b/kernel/trace/trace_events.c @@ -415,8 +415,8 @@ static void test_double_dereference(const char *str, int len, ptr += 5; for (; ptr < end; ptr++) { if (ptr[0] == '-' && ptr[1] == '>') { - WARN_ONCE(1, "Event %s has double dereference in TP_printk: %.*s\n", - trace_event_name(call), len, str); + pr_warn("TRACE EVENT ERROR: Event %s has double dereference in TP_printk: %.*s\n", + trace_event_name(call), len, str); return; } if (!isalnum(*ptr) && *ptr != '_') -- 2.55.0