From patchwork Wed Apr 5 13:58:14 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 79688 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp354616vqo; Wed, 5 Apr 2023 07:34:49 -0700 (PDT) X-Google-Smtp-Source: AKy350ZSKxNwi4ohd1vO3BlzM+HzsKaC+h+DjTH5iNgztQA1kXOOy8rdwmktxfnWTKi8WemrbgEA X-Received: by 2002:a17:902:f68a:b0:1a2:8866:e8a4 with SMTP id l10-20020a170902f68a00b001a28866e8a4mr8176215plg.1.1680705289665; Wed, 05 Apr 2023 07:34:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680705289; cv=none; d=google.com; s=arc-20160816; b=Mo7DeoNw4NGhc7wGYcknJA98PaanyOXovBDoTPGLDlWSVLIf1AfVOwIGyIknQeAlAd g61/ltmh1JShfj6pxg9V6CxRVir38o7NReXG1R3UX+aLgJS9GZgVZ+3JegPIYMpXeqk5 MTQj+z8/aOkpIzdN2flOw9qWwIr4z96EYRksYwb/oMJeOWtrGliB26yZE0CkXNdauTjP z2SwziXnDblAGrhRDo2b3HTd/TuRVTOq83CxEAtGUJno29LT/FIAMsaMXZzDxOXaghJ1 QEyaKLyjYW1pJA3QLB0Gi+oVVJXnRKVOCeDtjWvoT+iV+xWBKlxeG8YtIqlNJWrhU1ha XtfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:references:subject:cc:to:from:date :user-agent:message-id; bh=dJQu5FWNzjA/ZKXLGpSHPdmCiPfLaMnY8MX1T+ZcJqA=; b=xVgdSCPgZ46SdxeYnxCW5ch6d5H1cYfogUcZSyHoqdtnv9UygA+ew5VN0NigUHuy+7 g/faZEDxiX0DI6oTYwdDHRd0DE4Hl6xlDoFlEHKSb0763jH5GlO7Av/C9iuVV5jNsqnF WBrJyCjM12Y418FHhlZ4NZF1RnZAZTn2ChT+fS0YRGUt/fpbr9eY3NU0E0AGTtXuXQ4J 4COS2CWEaxmQdxY4FYHtfWmvd/x9Ce4Oqq5CuOP7HC1Smz0cPb2mQWoAJ9isCTtm/Zeo /Im+YmWuMnGzoN8UXpnpshcdWeRn7AS9K6bb2oXPZr3CqQvDqv5jFnpi72HM4Y+3Ap5j 9W5Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id jj12-20020a170903048c00b001a19f187e90si12255906plb.331.2023.04.05.07.34.35; Wed, 05 Apr 2023 07:34:49 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238526AbjDEO1P (ORCPT + 99 others); Wed, 5 Apr 2023 10:27:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56754 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238116AbjDEO1J (ORCPT ); Wed, 5 Apr 2023 10:27:09 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B07584C20; Wed, 5 Apr 2023 07:26:56 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 414CA62304; Wed, 5 Apr 2023 14:26:56 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B52F6C433D2; Wed, 5 Apr 2023 14:26:55 +0000 (UTC) Received: from rostedt by gandalf with local (Exim 4.96) (envelope-from ) id 1pk46A-000qjG-2Y; Wed, 05 Apr 2023 10:26:54 -0400 Message-ID: <20230405142654.612405137@goodmis.org> User-Agent: quilt/0.66 Date: Wed, 05 Apr 2023 09:58:14 -0400 From: Steven Rostedt To: linux-kernel@vger.kernel.org Cc: Masami Hiramatsu , Mark Rutland , Andrew Morton , stable@vger.kernel.org, Ross Zwisler Subject: [for-linus][PATCH 1/3] tracing: Have tracing_snapshot_instance_cond() write errors to the appropriate instance References: <20230405135813.735507007@goodmis.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.0 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762347229357688791?= X-GMAIL-MSGID: =?utf-8?q?1762347229357688791?= From: "Steven Rostedt (Google)" If a trace instance has a failure with its snapshot code, the error message is to be written to that instance's buffer. But currently, the message is written to the top level buffer. Worse yet, it may also disable the top level buffer and not the instance that had the issue. Link: https://lkml.kernel.org/r/20230405022341.688730321@goodmis.org Cc: stable@vger.kernel.org Cc: Masami Hiramatsu Cc: Mark Rutland Cc: Andrew Morton Cc: Ross Zwisler Fixes: 2824f50332486 ("tracing: Make the snapshot trigger work with instances") Signed-off-by: Steven Rostedt (Google) --- kernel/trace/trace.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index 937e9676dfd4..ed1d1093f5e9 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -1149,22 +1149,22 @@ static void tracing_snapshot_instance_cond(struct trace_array *tr, unsigned long flags; if (in_nmi()) { - internal_trace_puts("*** SNAPSHOT CALLED FROM NMI CONTEXT ***\n"); - internal_trace_puts("*** snapshot is being ignored ***\n"); + trace_array_puts(tr, "*** SNAPSHOT CALLED FROM NMI CONTEXT ***\n"); + trace_array_puts(tr, "*** snapshot is being ignored ***\n"); return; } if (!tr->allocated_snapshot) { - internal_trace_puts("*** SNAPSHOT NOT ALLOCATED ***\n"); - internal_trace_puts("*** stopping trace here! ***\n"); - tracing_off(); + trace_array_puts(tr, "*** SNAPSHOT NOT ALLOCATED ***\n"); + trace_array_puts(tr, "*** stopping trace here! ***\n"); + tracer_tracing_off(tr); return; } /* Note, snapshot can not be used when the tracer uses it */ if (tracer->use_max_tr) { - internal_trace_puts("*** LATENCY TRACER ACTIVE ***\n"); - internal_trace_puts("*** Can not use snapshot (sorry) ***\n"); + trace_array_puts(tr, "*** LATENCY TRACER ACTIVE ***\n"); + trace_array_puts(tr, "*** Can not use snapshot (sorry) ***\n"); return; } From patchwork Wed Apr 5 13:58:15 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 79704 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp358896vqo; Wed, 5 Apr 2023 07:41:10 -0700 (PDT) X-Google-Smtp-Source: AKy350Z2ve6T1QqTB8fhloZbDEjoI5LwErQ7oFFsH7w+DNrIgcTMrkqYHc314lv9rA5cxuKyL1pP X-Received: by 2002:a17:906:ce41:b0:944:394:93f7 with SMTP id se1-20020a170906ce4100b00944039493f7mr2852402ejb.61.1680705670099; Wed, 05 Apr 2023 07:41:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680705670; cv=none; d=google.com; s=arc-20160816; b=gtTbA0rqc1MkUPjjenGCKMuHjiyq+1CUGX61hK+E65mDC2kzjADutSCVRhUwKrZIht rXggVldivQm7cw3grd4gvkUj9iQezCHd760aF6mYZtWKmlZCYb4wYGLkvlSIBvsnscdM Sl6ZCXahLK79R5RdhVukiWeF17/OkIOgJp4Yz0A3N2mjCHtVRz4rULMe0W7JL1J4Z+aS xAb5r+ZwZGfwYoFW4V9qCt/6R5F797mlfIWdvjomcpy3fuJVYmHUAaN81zeP8RZpgpVG HjbMqsXiy+dL22Jre3f6sPdAbDZM/9ho7RBPDon5IvXkGzEZ347SsT5PLoJPMIpJRgew sfZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:references:subject:cc:to:from:date :user-agent:message-id; bh=7q3TZ+m0F0wuqhxwF0ZY6Oq0IFcp/vTigJAui8KXEfc=; b=pA3Ix7tace2ErFEgAHaiX0KSC1wIEYp2C8ge4qlVjrEWuVj+lk9WGNFdQrjsi+KoFb hFpzDK0JYfGMmS7cE0YdbE6snbk/lr64y/NRtvtef1oAN6um1Y5lba1xZbIrcLCRPkRt Va+jy0O4rR5rf65ucUWQpoyClM4AIIL1yFyQ1Kg2dEJQD59LKRVOIyENhgoyqV9aICPI 46/UX7xnMlBYZMQrkR59W5ECbTSVQg3BR7ajbCNpMhZV0sqau8ZSd1XiLkS7GP/JO0AY F62ZW2kWcqMqdZ+iAhosy9dSWCYh4X+/GdYHVHDkSs0h/9iXlUZKyx+BkTg8t+A65/bp NTcA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id bm11-20020a170906c04b00b0092043425e1bsi881886ejb.714.2023.04.05.07.40.45; Wed, 05 Apr 2023 07:41:10 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238545AbjDEO1R (ORCPT + 99 others); Wed, 5 Apr 2023 10:27:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58330 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238496AbjDEO1J (ORCPT ); Wed, 5 Apr 2023 10:27:09 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 16A84E7B; Wed, 5 Apr 2023 07:26:57 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 95592625AC; Wed, 5 Apr 2023 14:26:56 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0D56DC433A0; Wed, 5 Apr 2023 14:26:56 +0000 (UTC) Received: from rostedt by gandalf with local (Exim 4.96) (envelope-from ) id 1pk46A-000qk7-3D; Wed, 05 Apr 2023 10:26:55 -0400 Message-ID: <20230405142654.813714541@goodmis.org> User-Agent: quilt/0.66 Date: Wed, 05 Apr 2023 09:58:15 -0400 From: Steven Rostedt To: linux-kernel@vger.kernel.org Cc: Masami Hiramatsu , Mark Rutland , Andrew Morton , stable@vger.kernel.org, Ross Zwisler Subject: [for-linus][PATCH 2/3] tracing: Fix ftrace_boot_snapshot command line logic References: <20230405135813.735507007@goodmis.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.0 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762347628578993140?= X-GMAIL-MSGID: =?utf-8?q?1762347628578993140?= From: "Steven Rostedt (Google)" The kernel command line ftrace_boot_snapshot by itself is supposed to trigger a snapshot at the end of boot up of the main top level trace buffer. A ftrace_boot_snapshot=foo will do the same for an instance called foo that was created by trace_instance=foo,... The logic was broken where if ftrace_boot_snapshot was by itself, it would trigger a snapshot for all instances that had tracing enabled, regardless if it asked for a snapshot or not. When a snapshot is requested for a buffer, the buffer's tr->allocated_snapshot is set to true. Use that to know if a trace buffer wants a snapshot at boot up or not. Since the top level buffer is part of the ftrace_trace_arrays list, there's no reason to treat it differently than the other buffers. Just iterate the list if ftrace_boot_snapshot was specified. Link: https://lkml.kernel.org/r/20230405022341.895334039@goodmis.org Cc: stable@vger.kernel.org Cc: Masami Hiramatsu Cc: Mark Rutland Cc: Andrew Morton Cc: Ross Zwisler Fixes: 9c1c251d670bc ("tracing: Allow boot instances to have snapshot buffers") Signed-off-by: Steven Rostedt (Google) --- kernel/trace/trace.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index ed1d1093f5e9..4686473b8497 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -10393,19 +10393,20 @@ __init static int tracer_alloc_buffers(void) void __init ftrace_boot_snapshot(void) { +#ifdef CONFIG_TRACER_MAX_TRACE struct trace_array *tr; - if (snapshot_at_boot) { - tracing_snapshot(); - internal_trace_puts("** Boot snapshot taken **\n"); - } + if (!snapshot_at_boot) + return; list_for_each_entry(tr, &ftrace_trace_arrays, list) { - if (tr == &global_trace) + if (!tr->allocated_snapshot) continue; - trace_array_puts(tr, "** Boot snapshot taken **\n"); + tracing_snapshot_instance(tr); + trace_array_puts(tr, "** Boot snapshot taken **\n"); } +#endif } void __init early_trace_init(void) From patchwork Wed Apr 5 13:58:16 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 79707 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp359278vqo; Wed, 5 Apr 2023 07:41:46 -0700 (PDT) X-Google-Smtp-Source: AKy350YXTW3gwRqoQ0r7cLBO/6nvyqT2cyFiytTfx7NYePG7dktInP8aKsPeESIls5JUomZr3UsT X-Received: by 2002:a17:906:9702:b0:90b:53f6:fd8b with SMTP id k2-20020a170906970200b0090b53f6fd8bmr3164261ejx.31.1680705705920; Wed, 05 Apr 2023 07:41:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680705705; cv=none; d=google.com; s=arc-20160816; b=loFyzDNz4dvngarTH8cB6SYl/XdcMMCPhM7CmcPqKVDsLxD2RrC4Ut+cD5yt1hPDMS Iemd0kak8h+m62oJO5lzNPjnD4z/c31NUBmjzSLzFHeof26AWU7ocxlfpAY0v1B/4yJI aZGKF1CPBI1JZMV0zTljNd14ie/iD+o0VQr9dRpA8COrCn9DSB+PWPMlEbreTwHVSs8G AYNDGt0DBVqT5dnB8b08XBwIUlxFGrJzb5KoFZrP14EdK1hvxtCy6bVcsdtHWDmYmUqW e4QVLwixLFZVo7YhG5yYeR8kxRJQfexNBn7+pVkmNceaus2FHIRI0JwvqyaC5r3ofl7P YwjA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:references:subject:cc:to:from:date :user-agent:message-id; bh=+zB4HYxJyo+cVfK8Fjme6xtEdDVNLQHLqiMuGU8/Bzo=; b=ZWQJ8YLA1/x/8LgZeO1tRJABChEzEsYjI6rlz88iMmDS/5fjJfwPKdXlJMMbyQPB3i 6D+FHIGqrRzG/MErDLJsZtxM1nJkIBTk4sMjuYdtihY5+b6ws2q+UuS0b1oluK+DOzWW QYSM8uqg6NVs+EfjDLBv7QIEoi5cYN7TSalSj4cMouUf44KDNf5dQN6DNk37Y0pj1h6A KLAJtyb40a2qLVCRj8fS9T5t4cGL3tPPZsSzCD8EC1TwziIdcrifkh19fr5pLvtWZrbi WAJuKd3c3n7mSxKn+/CfxaK80zRyYTMUTLqTV26DNkuO7EzY3bi3O70vy4shTXJCo/Yg CmBg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id wy12-20020a170906fe0c00b00948130c7e35si1161642ejb.167.2023.04.05.07.41.21; Wed, 05 Apr 2023 07:41:45 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238577AbjDEO1X (ORCPT + 99 others); Wed, 5 Apr 2023 10:27:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57526 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238471AbjDEO1K (ORCPT ); Wed, 5 Apr 2023 10:27:10 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3658E4EFD; Wed, 5 Apr 2023 07:26:58 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id C0B916277C; Wed, 5 Apr 2023 14:26:57 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 37AD3C433D2; Wed, 5 Apr 2023 14:26:57 +0000 (UTC) Received: from rostedt by gandalf with local (Exim 4.96) (envelope-from ) id 1pk46B-000qkf-0e; Wed, 05 Apr 2023 10:26:55 -0400 Message-ID: <20230405142655.019084805@goodmis.org> User-Agent: quilt/0.66 Date: Wed, 05 Apr 2023 09:58:16 -0400 From: Steven Rostedt To: linux-kernel@vger.kernel.org Cc: Masami Hiramatsu , Mark Rutland , Andrew Morton , stable@vger.kernel.org, Thorsten Leemhuis , Ulf Hansson , Eric Biggers , Mirsad Goran Todorovac Subject: [for-linus][PATCH 3/3] tracing: Free error logs of tracing instances References: <20230405135813.735507007@goodmis.org> MIME-Version: 1.0 X-Spam-Status: No, score=-4.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, RCVD_IN_DNSWL_HI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762347665931907029?= X-GMAIL-MSGID: =?utf-8?q?1762347665931907029?= From: "Steven Rostedt (Google)" When a tracing instance is removed, the error messages that hold errors that occurred in the instance needs to be freed. The following reports a memory leak: # cd /sys/kernel/tracing # mkdir instances/foo # echo 'hist:keys=x' > instances/foo/events/sched/sched_switch/trigger # cat instances/foo/error_log [ 117.404795] hist:sched:sched_switch: error: Couldn't find field Command: hist:keys=x ^ # rmdir instances/foo Then check for memory leaks: # echo scan > /sys/kernel/debug/kmemleak # cat /sys/kernel/debug/kmemleak unreferenced object 0xffff88810d8ec700 (size 192): comm "bash", pid 869, jiffies 4294950577 (age 215.752s) hex dump (first 32 bytes): 60 dd 68 61 81 88 ff ff 60 dd 68 61 81 88 ff ff `.ha....`.ha.... a0 30 8c 83 ff ff ff ff 26 00 0a 00 00 00 00 00 .0......&....... backtrace: [<00000000dae26536>] kmalloc_trace+0x2a/0xa0 [<00000000b2938940>] tracing_log_err+0x277/0x2e0 [<000000004a0e1b07>] parse_atom+0x966/0xb40 [<0000000023b24337>] parse_expr+0x5f3/0xdb0 [<00000000594ad074>] event_hist_trigger_parse+0x27f8/0x3560 [<00000000293a9645>] trigger_process_regex+0x135/0x1a0 [<000000005c22b4f2>] event_trigger_write+0x87/0xf0 [<000000002cadc509>] vfs_write+0x162/0x670 [<0000000059c3b9be>] ksys_write+0xca/0x170 [<00000000f1cddc00>] do_syscall_64+0x3e/0xc0 [<00000000868ac68c>] entry_SYSCALL_64_after_hwframe+0x72/0xdc unreferenced object 0xffff888170c35a00 (size 32): comm "bash", pid 869, jiffies 4294950577 (age 215.752s) hex dump (first 32 bytes): 0a 20 20 43 6f 6d 6d 61 6e 64 3a 20 68 69 73 74 . Command: hist 3a 6b 65 79 73 3d 78 0a 00 00 00 00 00 00 00 00 :keys=x......... backtrace: [<000000006a747de5>] __kmalloc+0x4d/0x160 [<000000000039df5f>] tracing_log_err+0x29b/0x2e0 [<000000004a0e1b07>] parse_atom+0x966/0xb40 [<0000000023b24337>] parse_expr+0x5f3/0xdb0 [<00000000594ad074>] event_hist_trigger_parse+0x27f8/0x3560 [<00000000293a9645>] trigger_process_regex+0x135/0x1a0 [<000000005c22b4f2>] event_trigger_write+0x87/0xf0 [<000000002cadc509>] vfs_write+0x162/0x670 [<0000000059c3b9be>] ksys_write+0xca/0x170 [<00000000f1cddc00>] do_syscall_64+0x3e/0xc0 [<00000000868ac68c>] entry_SYSCALL_64_after_hwframe+0x72/0xdc The problem is that the error log needs to be freed when the instance is removed. Link: https://lore.kernel.org/lkml/76134d9f-a5ba-6a0d-37b3-28310b4a1e91@alu.unizg.hr/ Link: https://lore.kernel.org/linux-trace-kernel/20230404194504.5790b95f@gandalf.local.home Cc: stable@vger.kernel.org Cc: Masami Hiramatsu Cc: Andrew Morton Cc: Mark Rutland Cc: Thorsten Leemhuis Cc: Ulf Hansson Cc: Eric Biggers Fixes: 2f754e771b1a6 ("tracing: Have the error logs show up in the proper instances") Reported-by: Mirsad Goran Todorovac Tested-by: Mirsad Todorovac Signed-off-by: Steven Rostedt (Google) --- kernel/trace/trace.c | 1 + 1 file changed, 1 insertion(+) diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index 4686473b8497..36a6037823cd 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -9516,6 +9516,7 @@ static int __remove_instance(struct trace_array *tr) tracefs_remove(tr->dir); free_percpu(tr->last_func_repeats); free_trace_buffers(tr); + clear_tracing_err_log(tr); for (i = 0; i < tr->nr_topts; i++) { kfree(tr->topts[i].topts);