Received: by 2002:a05:6602:2086:0:0:0:0 with SMTP id a6csp4435052ioa; Wed, 27 Apr 2022 03:56:53 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwIl75uD8WzLg4TZg9zRchi1VXoyLaioHjHBQX5r/sdX+BRgGdhfEqzhH9RXZuHJ37+Kd2q X-Received: by 2002:a17:90a:1c08:b0:1cd:474a:a4f8 with SMTP id s8-20020a17090a1c0800b001cd474aa4f8mr32080061pjs.82.1651057013560; Wed, 27 Apr 2022 03:56:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1651057013; cv=none; d=google.com; s=arc-20160816; b=mgN0GCZ+DXyjskdz7qBDFkr0aDWXw+3EMjpp6Onmj2wCvphrxLn43TAjCfLs3xZaUg piJXMcFiQ4D0+E/HbNlwteE6fiWyoaauvEndHSnzQd8qnjPRBEq93b5HRbX/AZeTaXdi nX3QIxoXA8eMzUSx17DzsXBHug3I3ft1MJUzQOaz7Y3j+r2reB1BLQh0zM7tKIjZ4xjB Mx4hSqUNHoXVgJ256a7xiw3OKFDURl9hHR/waqpun+yOSV9AU0t68K8zjz2qPLs01z79 rgm/bFv1mfp0p5eY2IpFqgOYNwFIGi+5HbHxoKMpqWtKUxyKPsXrQLHZ43TNWsie881D x8ww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=ySzlB6tXOPVy+37qbpLMuvIMsJehd7DhqfwR3n4hS1Y=; b=YkNgxf2LISOd25Jke07wwFeExwtYPXU+UA/qEbaJrIv1aH0Pq7jk+YtHFeX5Cce1BY zKB/RCdDBwyjeOvdPQeL750g1CYfXUjNwXyzPbuMBqwsAc7p2yWLSeF1s+kEehM/pieD O1/zAZAt5qBZWa63FnhtFghd00OPBTuQJypRvVnQ+ISJxChfuhyZfdsDCNzxvPIJZmA8 9IjKU+R/a/7M+ltT8ogz/E15BrIYqNdpmwdC1Ez51YsqGVvcs+eWfn32L80lCIpOLcVG 5t7jIo2lzBtEd8W4+3DhbM2Jt8pslpr8RBsb0SB0TSAng3f3MBtoyLjvHseNQycM6E8T piMw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=LDubHCOz; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [23.128.96.19]) by mx.google.com with ESMTPS id pg12-20020a17090b1e0c00b001da320c076esi1861179pjb.3.2022.04.27.03.56.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 27 Apr 2022 03:56:53 -0700 (PDT) Received-SPF: softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) client-ip=23.128.96.19; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=LDubHCOz; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id BFF182E4EC4; Wed, 27 Apr 2022 03:03:33 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346326AbiDZIyn (ORCPT + 99 others); Tue, 26 Apr 2022 04:54:43 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59330 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345414AbiDZIlE (ORCPT ); Tue, 26 Apr 2022 04:41:04 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B40E015780E; Tue, 26 Apr 2022 01:32:55 -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 50BAC61805; Tue, 26 Apr 2022 08:32:55 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5BBFEC385A4; Tue, 26 Apr 2022 08:32:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1650961974; bh=vNZER2TKts6PtC4AE54x+Z+1WLkWB0I3R9Zd8FGTmt8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=LDubHCOzJBEVqkhGD1VukO/zuO0a89V+0Dt1L+Gj9ppIVTA4clCScKBcoGrzTDoZA pJXoivhm+lX13LPUoJzUpBQ+A33J7E6NO8n2P7MtWUUpAGZ3COfQk1MQb9oi+79ruy t+D719WGKtnza7CVQvL6l6tSBsH3wX9CbKdyyut0= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Tom Zanussi , Daniel Bristot de Oliveira , "Steven Rostedt (Google)" Subject: [PATCH 5.10 03/86] tracing: Dump stacktrace trigger to the corresponding instance Date: Tue, 26 Apr 2022 10:20:31 +0200 Message-Id: <20220426081741.304298513@linuxfoundation.org> X-Mailer: git-send-email 2.36.0 In-Reply-To: <20220426081741.202366502@linuxfoundation.org> References: <20220426081741.202366502@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.5 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE 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 From: Daniel Bristot de Oliveira commit ce33c845b030c9cf768370c951bc699470b09fa7 upstream. The stacktrace event trigger is not dumping the stacktrace to the instance where it was enabled, but to the global "instance." Use the private_data, pointing to the trigger file, to figure out the corresponding trace instance, and use it in the trigger action, like snapshot_trigger does. Link: https://lkml.kernel.org/r/afbb0b4f18ba92c276865bc97204d438473f4ebc.1645396236.git.bristot@kernel.org Cc: stable@vger.kernel.org Fixes: ae63b31e4d0e2 ("tracing: Separate out trace events from global variables") Reviewed-by: Tom Zanussi Tested-by: Tom Zanussi Signed-off-by: Daniel Bristot de Oliveira Signed-off-by: Steven Rostedt (Google) Signed-off-by: Greg Kroah-Hartman --- kernel/trace/trace_events_trigger.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) --- a/kernel/trace/trace_events_trigger.c +++ b/kernel/trace/trace_events_trigger.c @@ -1219,7 +1219,14 @@ static void stacktrace_trigger(struct event_trigger_data *data, void *rec, struct ring_buffer_event *event) { - trace_dump_stack(STACK_SKIP); + struct trace_event_file *file = data->private_data; + unsigned long flags; + + if (file) { + local_save_flags(flags); + __trace_stack(file->tr, flags, STACK_SKIP, preempt_count()); + } else + trace_dump_stack(STACK_SKIP); } static void