From patchwork Thu Nov 24 14:47:53 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 25587 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp3440574wrr; Thu, 24 Nov 2022 06:50:15 -0800 (PST) X-Google-Smtp-Source: AA0mqf7gUXq+LN5CmRb972b07ekG9+D5lEUymiM4Oa9U9oLb8VhIYw06PKpBlcy1FNbY2Jb42HWv X-Received: by 2002:a63:5f95:0:b0:477:bca5:f4a7 with SMTP id t143-20020a635f95000000b00477bca5f4a7mr6572494pgb.546.1669301415368; Thu, 24 Nov 2022 06:50:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669301415; cv=none; d=google.com; s=arc-20160816; b=CdstwiZwU+myiJir6slmv5Ik7BotRm9Q6hy5Tf8yUxSmKKvNkNWVKc1hZ2DrVQxdD+ 0w6UyCv3jFjGEOda/geQG+LwxmnNBCWYlxbRc1HwTJdA04okzgpK41GHwFD5KmWSSjtT OMujqccVp+A4OWMk4aFjS2EOTOgBxrjhrdgsPlYffQbCJEchpxhWp0YVlrG/b7z/73PG g+7CTGKN/IndNASysY1ReMsYeScCGq1ekzTVpd7/SJHfNGBfD1aZOKw24wg5bi8sWwO6 C7MfVewC/r+WTiSsuVmMgcDI05XruuEGjuj356C/bwIR/0J9Neg/+D5D5mQl6qla7Ghh pMJQ== 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=GdS74DYdu+mizAcftPUEA7jRItXoTCnjBLmGGlsty9U=; b=OSe6HmqA8jzG6oBvFrNFYKQ+KJn4WqYVMSpqZk0YZ5MGsJ9aZsdhnsZHF5AeCYSX1G slK0XNs1Dt05yLNkBqfn2Z33lXmJZjcnVERZvg0rKfyD2zxqK9YqHv7oDwwVWnfhOdcr OFtikS54qbSq/8nzzJW5JnNZ1CtNjStqhW9jHiQQDoTKUpLn8Tii3o3nrfBvZA741bmv yK1YeR3MJ163hvc5l3qOXiiyDPdmrOPXUGTAI0Cmn4KGKi3gsPaqfsgexfSuLmevGfZZ 0Uaf0/lGYWUm9RGi8PV3jeSpxMo+wAPa8gxWdG3Heuh4fmvYaLAOQp8tB0SGp0uX39cR dFbQ== 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 i18-20020a170902c95200b001884ba97a0fsi1312598pla.567.2022.11.24.06.50.02; Thu, 24 Nov 2022 06:50:15 -0800 (PST) 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 S229586AbiKXOs1 (ORCPT + 99 others); Thu, 24 Nov 2022 09:48:27 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52324 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229455AbiKXOs0 (ORCPT ); Thu, 24 Nov 2022 09:48:26 -0500 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B6214E0685 for ; Thu, 24 Nov 2022 06:48:25 -0800 (PST) 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 410D662187 for ; Thu, 24 Nov 2022 14:48:25 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9D421C433D7; Thu, 24 Nov 2022 14:48:24 +0000 (UTC) Received: from rostedt by gandalf.local.home with local (Exim 4.96) (envelope-from ) id 1oyDWZ-001Wqz-2M; Thu, 24 Nov 2022 09:48:23 -0500 Message-ID: <20221124144823.607266108@goodmis.org> User-Agent: quilt/0.66 Date: Thu, 24 Nov 2022 09:47:53 -0500 From: Steven Rostedt To: linux-kernel@vger.kernel.org Cc: Masami Hiramatsu , Andrew Morton , Colin Ian King Subject: [for-linus][PATCH 1/6] tracing/hist: add in missing * in comment blocks References: <20221124144752.427194398@goodmis.org> MIME-Version: 1.0 X-Spam-Status: No, score=-6.7 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,RCVD_IN_DNSWL_HI,SPF_HELO_NONE,SPF_PASS autolearn=ham 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?1750389400718362874?= X-GMAIL-MSGID: =?utf-8?q?1750389400718362874?= From: Colin Ian King There are a couple of missing * in comment blocks. Fix these. Cleans up two clang warnings: kernel/trace/trace_events_hist.c:986: warning: bad line: kernel/trace/trace_events_hist.c:3229: warning: bad line: Link: https://lkml.kernel.org/r/20221020133019.1547587-1-colin.i.king@gmail.com Signed-off-by: Colin Ian King Acked-by: Masami Hiramatsu (Google) Signed-off-by: Steven Rostedt (Google) --- kernel/trace/trace_events_hist.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/trace/trace_events_hist.c b/kernel/trace/trace_events_hist.c index 48465f7e97b4..087c19548049 100644 --- a/kernel/trace/trace_events_hist.c +++ b/kernel/trace/trace_events_hist.c @@ -983,7 +983,7 @@ static struct hist_field *find_any_var_ref(struct hist_trigger_data *hist_data, * A trigger can define one or more variables. If any one of them is * currently referenced by any other trigger, this function will * determine that. - + * * Typically used to determine whether or not a trigger can be removed * - if there are any references to a trigger's variables, it cannot. * @@ -3226,7 +3226,7 @@ static struct field_var *create_field_var(struct hist_trigger_data *hist_data, * events. However, for convenience, users are allowed to directly * specify an event field in an action, which will be automatically * converted into a variable on their behalf. - + * * This function creates a field variable with the name var_name on * the hist trigger currently being defined on the target event. If * subsys_name and event_name are specified, this function simply From patchwork Thu Nov 24 14:47:54 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 25588 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp3440624wrr; Thu, 24 Nov 2022 06:50:19 -0800 (PST) X-Google-Smtp-Source: AA0mqf6B+7JViYpzGKV7ZQH9NjW+S7SygmVsWwRchXh7o9DINRmZNgLxUowlfDpfkWU2osWCQuYI X-Received: by 2002:aa7:8d01:0:b0:562:83c1:59e0 with SMTP id j1-20020aa78d01000000b0056283c159e0mr35781076pfe.34.1669301419562; Thu, 24 Nov 2022 06:50:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669301419; cv=none; d=google.com; s=arc-20160816; b=q44ycuyKC10Xo1zFlYPtvyWEHjMdKeo+rSXnsGR2CZyyfkZef5wvY+VwTzJOvtL1Jn RiL8SDeIK1INsZSgSXmf50pCRTGjPzJijrO0MfpZJZ+oBX0/W5G7KqzLwjttCiSysCCz 26w0/O87h5mHfC558m0kp/l0y1mBDUBJvQaeOU22JsUMQgJEqAU3flppddMw6FMzLh7V ajPCDYJSp5RpMTEAg+1hk+bd3xvsctlez29WjRDBpB0IX86d3UOFm6tIhEyYwpjzR3yK t4fgDffwSvGo5cfu2JG+vMb5ZTFXJ9DMxuyckxAHOYcOjT3+PsgJc5kBSifNWvhDt1HW iBqw== 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=H4kZGluh5VGON/5yb0tow+Dk7qlvYz4koEqTi+a2+Mk=; b=gfgsztU8VMER6HxzFaRrtsqxprOWLsuouis8EkvAj0sKDzKEgRMEBJU0NsvO6OzDCg QC9luNkMiuIvBm3kAJsabRyoV9xyNt+vTt4qYtgO2mPdT7FBIn6NT+iqPRV3F/7ntxaP 7PqF6p09yT2rFh8oSflTxi1ear/Kp6q85b8w4J/evSjiuaQQbVbM7Ecpf3OuPKzo7g2f seVDQmBtj4NAD5fb/pQSBsdIDGXCzjwSx6Ce3gS2jWdrd9kb4a1dC9183J3o2VPoPhom q5GGHsl53kt4KCWOUb5Nxd5KzIGL7lB2tFgng9q3H+bVg2SbOkvhkRy8d90TNxQDo0ch CXqQ== 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 q17-20020a170902b11100b001768a29b9dfsi770518plr.68.2022.11.24.06.50.06; Thu, 24 Nov 2022 06:50:19 -0800 (PST) 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 S229689AbiKXOsd (ORCPT + 99 others); Thu, 24 Nov 2022 09:48:33 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52340 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229601AbiKXOs2 (ORCPT ); Thu, 24 Nov 2022 09:48:28 -0500 Received: from ams.source.kernel.org (ams.source.kernel.org [IPv6:2604:1380:4601:e00::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8B958D906B for ; Thu, 24 Nov 2022 06:48:27 -0800 (PST) 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 ams.source.kernel.org (Postfix) with ESMTPS id 38BCCB82839 for ; Thu, 24 Nov 2022 14:48:26 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CB67CC4347C; Thu, 24 Nov 2022 14:48:24 +0000 (UTC) Received: from rostedt by gandalf.local.home with local (Exim 4.96) (envelope-from ) id 1oyDWZ-001WrT-2p; Thu, 24 Nov 2022 09:48:23 -0500 Message-ID: <20221124144823.750570677@goodmis.org> User-Agent: quilt/0.66 Date: Thu, 24 Nov 2022 09:47:54 -0500 From: Steven Rostedt To: linux-kernel@vger.kernel.org Cc: Masami Hiramatsu , Andrew Morton , Xiu Jianfeng , Beau Belgrave Subject: [for-linus][PATCH 2/6] tracing/user_events: Fix memory leak in user_event_create() References: <20221124144752.427194398@goodmis.org> MIME-Version: 1.0 X-Spam-Status: No, score=-6.7 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,RCVD_IN_DNSWL_HI,SPF_HELO_NONE,SPF_PASS autolearn=ham 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?1750389405719523840?= X-GMAIL-MSGID: =?utf-8?q?1750389405719523840?= From: Xiu Jianfeng Before current_user_event_group(), it has allocated memory and save it in @name, this should freed before return error. Link: https://lkml.kernel.org/r/20221115014445.158419-1-xiujianfeng@huawei.com Fixes: e5d271812e7a ("tracing/user_events: Move pages/locks into groups to prepare for namespaces") Signed-off-by: Xiu Jianfeng Acked-by: Masami Hiramatsu (Google) Acked-by: Beau Belgrave Signed-off-by: Steven Rostedt (Google) --- kernel/trace/trace_events_user.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/kernel/trace/trace_events_user.c b/kernel/trace/trace_events_user.c index ae78c2d53c8a..539b08ae7020 100644 --- a/kernel/trace/trace_events_user.c +++ b/kernel/trace/trace_events_user.c @@ -1100,8 +1100,10 @@ static int user_event_create(const char *raw_command) group = current_user_event_group(); - if (!group) + if (!group) { + kfree(name); return -ENOENT; + } mutex_lock(&group->reg_mutex); From patchwork Thu Nov 24 14:47:55 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 25597 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp3441254wrr; Thu, 24 Nov 2022 06:51:41 -0800 (PST) X-Google-Smtp-Source: AA0mqf7J/ierx9gsdT610QSsAerD97buy4ZwU00WwaXseVYkgK9eFlRePrcUdxaZB/IDi9scyHl5 X-Received: by 2002:a17:906:e2cb:b0:7ad:c35a:ad76 with SMTP id gr11-20020a170906e2cb00b007adc35aad76mr28328872ejb.705.1669301500781; Thu, 24 Nov 2022 06:51:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669301500; cv=none; d=google.com; s=arc-20160816; b=dxUVqh9BdOLvEpHs3KZdvA44B3B7fXrPPIV2XuZUQ9q1g7Bv/4jI1k4FS9mBDvxhCy 9HkM7ZqzsnMMssClqiL8XQEsuUPKywpd9n6s8zwLqKeD0jRm1Xggu3mrQecKLRE/FlBe 7xpJRBR44aH8D8/qigV9vx2042IxX1ci3p6zbZWNy5cNaPuIl+q2iNraGNvR6+vqs8oV db4MI+iAKzzmrGfTdqLULSZUe3CRtWN4Oqc8IVY48wji6oNLalFS8S3NdclGYosAH3jC sD4L2Iko0GrJfm91JSZJ6sve9afQKcQANPfnt1T9K6NeeKuxnFKAeq9VJHYIaMPo5hLZ +hsg== 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=WcOCAs9ZVgnNGVvow70VfY49Za+ClC3IQk3rx6S1K1c=; b=xBFMs2mH5+XQ/LxQCO05noLTZIjSL0rqXuGsEVYhBBWYBj5CJrCwOAoRgSCt4FvAIz oeqr+LGDzqmHzQiFCvsM7b/NwIVVnfzc4NhkYeJ2XvtityjJTiq3iX+oapa4e9EUBdZq QE9PpdOl6YrepjXcuFhDADpMndUq9eapZ2kBYRZxn1q4GWipvSiTWahuB3yqv9NsTfDU NVFDohJ0u++U1NxqN0LiL6wPuyQ8P3LrHxLspH9i9HLVTdDmzm6fsjo3eBUiqwZuXbYB ghDmCwrq3YhuPSGC8FVERc4UKmeSWkrt4onmJHNDTz1QBhGOPy31426NRkK0XWofwznG jAoQ== 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 u6-20020a50eac6000000b004674aa77346si1284095edp.72.2022.11.24.06.51.10; Thu, 24 Nov 2022 06:51:40 -0800 (PST) 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 S229735AbiKXOsj (ORCPT + 99 others); Thu, 24 Nov 2022 09:48:39 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52352 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229477AbiKXOs2 (ORCPT ); Thu, 24 Nov 2022 09:48:28 -0500 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D4D85E0740; Thu, 24 Nov 2022 06:48:27 -0800 (PST) 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 ams.source.kernel.org (Postfix) with ESMTPS id 724B9B8283D; Thu, 24 Nov 2022 14:48:26 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0AFE2C43148; Thu, 24 Nov 2022 14:48:25 +0000 (UTC) Received: from rostedt by gandalf.local.home with local (Exim 4.96) (envelope-from ) id 1oyDWa-001Wrx-03; Thu, 24 Nov 2022 09:48:24 -0500 Message-ID: <20221124144823.893546314@goodmis.org> User-Agent: quilt/0.66 Date: Thu, 24 Nov 2022 09:47:55 -0500 From: Steven Rostedt To: linux-kernel@vger.kernel.org Cc: Masami Hiramatsu , Andrew Morton , stable@vger.kernel.org, Daniel Bristot de Oliveira , Jonathan Corbet Subject: [for-linus][PATCH 3/6] tracing/osnoise: Fix duration type References: <20221124144752.427194398@goodmis.org> MIME-Version: 1.0 X-Spam-Status: No, score=-6.7 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,RCVD_IN_DNSWL_HI,SPF_HELO_NONE,SPF_PASS autolearn=ham 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?1750389490317593194?= X-GMAIL-MSGID: =?utf-8?q?1750389490317593194?= From: Daniel Bristot de Oliveira The duration type is a 64 long value, not an int. This was causing some long noise to report wrong values. Change the duration to a 64 bits value. Link: https://lkml.kernel.org/r/a93d8a8378c7973e9c609de05826533c9e977939.1668692096.git.bristot@kernel.org Cc: stable@vger.kernel.org Cc: Daniel Bristot de Oliveira Cc: Steven Rostedt Cc: Masami Hiramatsu Cc: Jonathan Corbet Fixes: bce29ac9ce0b ("trace: Add osnoise tracer") Signed-off-by: Daniel Bristot de Oliveira Acked-by: Masami Hiramatsu (Google) Signed-off-by: Steven Rostedt (Google) --- kernel/trace/trace_osnoise.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kernel/trace/trace_osnoise.c b/kernel/trace/trace_osnoise.c index 78d536d3ff3d..4300c5dc4e5d 100644 --- a/kernel/trace/trace_osnoise.c +++ b/kernel/trace/trace_osnoise.c @@ -917,7 +917,7 @@ void osnoise_trace_irq_entry(int id) void osnoise_trace_irq_exit(int id, const char *desc) { struct osnoise_variables *osn_var = this_cpu_osn_var(); - int duration; + s64 duration; if (!osn_var->sampling) return; @@ -1048,7 +1048,7 @@ static void trace_softirq_entry_callback(void *data, unsigned int vec_nr) static void trace_softirq_exit_callback(void *data, unsigned int vec_nr) { struct osnoise_variables *osn_var = this_cpu_osn_var(); - int duration; + s64 duration; if (!osn_var->sampling) return; @@ -1144,7 +1144,7 @@ thread_entry(struct osnoise_variables *osn_var, struct task_struct *t) static void thread_exit(struct osnoise_variables *osn_var, struct task_struct *t) { - int duration; + s64 duration; if (!osn_var->sampling) return; From patchwork Thu Nov 24 14:47:56 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 25589 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp3440846wrr; Thu, 24 Nov 2022 06:50:46 -0800 (PST) X-Google-Smtp-Source: AA0mqf4Uy0NjCBqPPiV+7XHVUaJgVt/REEJX+sZRtN0e9RlinGmUa2FvixjuxvfsW95AhQawBhC0 X-Received: by 2002:a17:903:2311:b0:174:4ab2:6457 with SMTP id d17-20020a170903231100b001744ab26457mr26972220plh.118.1669301446588; Thu, 24 Nov 2022 06:50:46 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669301446; cv=none; d=google.com; s=arc-20160816; b=MZitgg07NeAri9HqoDGYjZus3inokFXOz2AmKfv13hzqwOkg89rcTptA9mo5GIN4OH 6THjAC6SFARVkfrRnKTwowTYMheMzh93Ldy2B/BwO13aBFLhzC14XIGs/53I8SQzjvHo IuFZ/Ns+5pSga0IvGwbFeogVj+iXijboxXfotIozVmNtjn1scSzjbMG5/PR5Hvj/7H8o iztLKNGoepj/S2k8qhd6LdsUIcXFilfyjoZ9mnai2+oXNdoFODUZuIFLrm1YJIr9yd0K vwyBoD1CvbYHIo0xVN0/VZKRU6GbC/aMq9VD2pAXxZaI1dzUKelMBTFmuWfQGJqOl1c2 vkmg== 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=gjdqoK5M3rdP8LIzz562ZDEdFcO87Y1RWoUASFYLcLg=; b=HXbFZBg9jzyEV3FvO1NICPg7++6/Cv6yu1iDgKLSY95kWml26RK5ez3pwEYH61Gsl2 iwgO6McjtT3U5gDjZe7tiG5cPRLI1uR55YFiCaMZD31xFFYs/nppiRiYFKOVn/ypX0tt qDfCne+gIB8CiXvf+C2fIo92YrSv5P/OETxBEdUDlez4E2RxgxxAxdjt8zaRXpiqGk/9 bDenysvguypzwv7LBKUSXSOJbQ+ujZrjM2F3xSkvCg3/zDxFIdp/t0R6hJFwhm6jbUNA vMQa2hqONi0X9Z0BQ/dAlIFIO3VgNEPmaEDQJ8gnupxm4HJrrIyf6z9AfDlg5K/V7U3l h2tQ== 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 t20-20020a63dd14000000b0047466dc1defsi1590323pgg.293.2022.11.24.06.50.33; Thu, 24 Nov 2022 06:50:46 -0800 (PST) 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 S229653AbiKXOsa (ORCPT + 99 others); Thu, 24 Nov 2022 09:48:30 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52326 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229518AbiKXOs1 (ORCPT ); Thu, 24 Nov 2022 09:48:27 -0500 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1F64EE0740; Thu, 24 Nov 2022 06:48:26 -0800 (PST) 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 AE02062184; Thu, 24 Nov 2022 14:48:25 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1BD6EC43146; Thu, 24 Nov 2022 14:48:25 +0000 (UTC) Received: from rostedt by gandalf.local.home with local (Exim 4.96) (envelope-from ) id 1oyDWa-001WsR-0V; Thu, 24 Nov 2022 09:48:24 -0500 Message-ID: <20221124144824.035022085@goodmis.org> User-Agent: quilt/0.66 Date: Thu, 24 Nov 2022 09:47:56 -0500 From: Steven Rostedt To: linux-kernel@vger.kernel.org Cc: Masami Hiramatsu , Andrew Morton , Tom Zanussi , stable@vger.kernel.org Subject: [for-linus][PATCH 4/6] tracing: Fix race where histograms can be called before the event References: <20221124144752.427194398@goodmis.org> MIME-Version: 1.0 X-Spam-Status: No, score=-6.7 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,RCVD_IN_DNSWL_HI,SPF_HELO_NONE,SPF_PASS autolearn=ham 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?1750389433631220316?= X-GMAIL-MSGID: =?utf-8?q?1750389433631220316?= From: "Steven Rostedt (Google)" commit 94eedf3dded5 ("tracing: Fix race where eprobes can be called before the event") fixed an issue where if an event is soft disabled, and the trigger is being added, there's a small window where the event sees that there's a trigger but does not see that it requires reading the event yet, and then calls the trigger with the record == NULL. This could be solved with adding memory barriers in the hot path, or to make sure that all the triggers requiring a record check for NULL. The latter was chosen. Commit 94eedf3dded5 set the eprobe trigger handle to check for NULL, but the same needs to be done with histograms. Link: https://lore.kernel.org/linux-trace-kernel/20221118211809.701d40c0f8a757b0df3c025a@kernel.org/ Link: https://lore.kernel.org/linux-trace-kernel/20221123164323.03450c3a@gandalf.local.home Cc: Tom Zanussi Cc: stable@vger.kernel.org Fixes: 7491e2c442781 ("tracing: Add a probe that attaches to trace events") Reported-by: Masami Hiramatsu (Google) Acked-by: Masami Hiramatsu (Google) Signed-off-by: Steven Rostedt (Google) --- kernel/trace/trace_events_hist.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kernel/trace/trace_events_hist.c b/kernel/trace/trace_events_hist.c index 087c19548049..1c82478e8dff 100644 --- a/kernel/trace/trace_events_hist.c +++ b/kernel/trace/trace_events_hist.c @@ -5143,6 +5143,9 @@ static void event_hist_trigger(struct event_trigger_data *data, void *key = NULL; unsigned int i; + if (unlikely(!rbe)) + return; + memset(compound_key, 0, hist_data->key_size); for_each_hist_key_field(i, hist_data) { From patchwork Thu Nov 24 14:47:57 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 25591 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp3440875wrr; Thu, 24 Nov 2022 06:50:50 -0800 (PST) X-Google-Smtp-Source: AA0mqf7yTue145f5L8c7SVZ6k1HVezqbb2c7UPRxm684hQjeYur7S0QfEkhuTi5yLrI2B1f1RsF2 X-Received: by 2002:a62:3142:0:b0:56d:8d19:f331 with SMTP id x63-20020a623142000000b0056d8d19f331mr35910062pfx.7.1669301449757; Thu, 24 Nov 2022 06:50:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669301449; cv=none; d=google.com; s=arc-20160816; b=QpnD0/UkHHz65GTb3GrORStlpx0KEwN57baaph0fS90tHnPHJrmRZnPAWqBXwPFYqT 28VQqmO2leTeIUNhzPWzhit9pPwmbOYcQZ4x2T8rkpzBmQOc2nep3EjlrvqNQ9JzDObC 1g8eMgfLtTrwc8Nb/MesxE5AoHLFiJH+HhPgxw8ZLXdXxqto/8+8Zw287Y+SlCVwEgDV A1IC7tFEzDklTZOnZqV0A3SABm95mcvLX/6R60RaCeMu9zu+aJU0Q61cIsWzoMrN4Z+l TndF7YyigeeNapuB9JFBo31IFCiiXW1beiBUEEKGee5n920wlOXUzNzEj6lhLiKH/kXf 9hUQ== 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=SC+heh+6hhOl8EfViE/uu86Z5PP0GAb/6QTScyNcX7Y=; b=TR+JbKG5InJzuzkOm2GmvgnzvfSQ8cFMxOobl+CBDFPsNVY/9ASHGO/3V3ptD/e2pq eVo5KaywDcWjk0swGPdZEmA0uJs9ZJ7Qile38RmJ/voPIcrGVSd9BF/jDlfcjvnnVAKr EeBoVLZ/dWiYu+tCCO8WL3O2bWNPah9/cOtI7f0h6WTFQ6vk6D9Gq9LvE9+3O6c2oOgT hrA1kYBHD+9PJC3VDP30x9QFPdAh4c1bXSp/P7TULOBS37sDapdKtSea3XUTAQi7Mll1 5KrwfijVyOUigZsPQCsF/3E9DQGaE7xfG50NivMy8p4urqfdcGECqr9miPCHgevriEDI M5ow== 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 t15-20020a63444f000000b0046e9da9ac40si939917pgk.556.2022.11.24.06.50.36; Thu, 24 Nov 2022 06:50:49 -0800 (PST) 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 S229705AbiKXOsf (ORCPT + 99 others); Thu, 24 Nov 2022 09:48:35 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52358 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229626AbiKXOs2 (ORCPT ); Thu, 24 Nov 2022 09:48:28 -0500 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DD337E0B55 for ; Thu, 24 Nov 2022 06:48:27 -0800 (PST) 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 ams.source.kernel.org (Postfix) with ESMTPS id 7E679B8283F for ; Thu, 24 Nov 2022 14:48:26 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 36B88C4314D; Thu, 24 Nov 2022 14:48:25 +0000 (UTC) Received: from rostedt by gandalf.local.home with local (Exim 4.96) (envelope-from ) id 1oyDWa-001Wsv-0x; Thu, 24 Nov 2022 09:48:24 -0500 Message-ID: <20221124144824.177090757@goodmis.org> User-Agent: quilt/0.66 Date: Thu, 24 Nov 2022 09:47:57 -0500 From: Steven Rostedt To: linux-kernel@vger.kernel.org Cc: Masami Hiramatsu , Andrew Morton , Zheng Yejian Subject: [for-linus][PATCH 5/6] tracing: Add tracing_reset_all_online_cpus_unlocked() function References: <20221124144752.427194398@goodmis.org> MIME-Version: 1.0 X-Spam-Status: No, score=-6.7 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,RCVD_IN_DNSWL_HI,SPF_HELO_NONE,SPF_PASS autolearn=ham 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?1750389437047547829?= X-GMAIL-MSGID: =?utf-8?q?1750389437047547829?= From: "Steven Rostedt (Google)" Currently the tracing_reset_all_online_cpus() requires the trace_types_lock held. But only one caller of this function actually has that lock held before calling it, and the other just takes the lock so that it can call it. More users of this function is needed where the lock is not held. Add a tracing_reset_all_online_cpus_unlocked() function for the one use case that calls it without being held, and also add a lockdep_assert to make sure it is held when called. Then have tracing_reset_all_online_cpus() take the lock internally, such that callers do not need to worry about taking it. Link: https://lkml.kernel.org/r/20221123192741.658273220@goodmis.org Cc: Masami Hiramatsu Cc: Andrew Morton Cc: Zheng Yejian Signed-off-by: Steven Rostedt (Google) --- kernel/trace/trace.c | 11 ++++++++++- kernel/trace/trace.h | 1 + kernel/trace/trace_events.c | 2 +- kernel/trace/trace_events_synth.c | 2 -- 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index a7fe0e115272..5cfc95a52bc3 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -2180,10 +2180,12 @@ void tracing_reset_online_cpus(struct array_buffer *buf) } /* Must have trace_types_lock held */ -void tracing_reset_all_online_cpus(void) +void tracing_reset_all_online_cpus_unlocked(void) { struct trace_array *tr; + lockdep_assert_held(&trace_types_lock); + list_for_each_entry(tr, &ftrace_trace_arrays, list) { if (!tr->clear_trace) continue; @@ -2195,6 +2197,13 @@ void tracing_reset_all_online_cpus(void) } } +void tracing_reset_all_online_cpus(void) +{ + mutex_lock(&trace_types_lock); + tracing_reset_all_online_cpus_unlocked(); + mutex_unlock(&trace_types_lock); +} + /* * The tgid_map array maps from pid to tgid; i.e. the value stored at index i * is the tgid last observed corresponding to pid=i. diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h index 54ee5711c729..d42e24507152 100644 --- a/kernel/trace/trace.h +++ b/kernel/trace/trace.h @@ -580,6 +580,7 @@ int tracing_is_enabled(void); void tracing_reset_online_cpus(struct array_buffer *buf); void tracing_reset_current(int cpu); void tracing_reset_all_online_cpus(void); +void tracing_reset_all_online_cpus_unlocked(void); int tracing_open_generic(struct inode *inode, struct file *filp); int tracing_open_generic_tr(struct inode *inode, struct file *filp); bool tracing_is_disabled(void); diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c index 0356cae0cf74..78cd19e31dba 100644 --- a/kernel/trace/trace_events.c +++ b/kernel/trace/trace_events.c @@ -2972,7 +2972,7 @@ static void trace_module_remove_events(struct module *mod) * over from this module may be passed to the new module events and * unexpected results may occur. */ - tracing_reset_all_online_cpus(); + tracing_reset_all_online_cpus_unlocked(); } static int trace_module_notify(struct notifier_block *self, diff --git a/kernel/trace/trace_events_synth.c b/kernel/trace/trace_events_synth.c index 29fbfb27c2b2..c3b582d19b62 100644 --- a/kernel/trace/trace_events_synth.c +++ b/kernel/trace/trace_events_synth.c @@ -1425,7 +1425,6 @@ int synth_event_delete(const char *event_name) mutex_unlock(&event_mutex); if (mod) { - mutex_lock(&trace_types_lock); /* * It is safest to reset the ring buffer if the module * being unloaded registered any events that were @@ -1437,7 +1436,6 @@ int synth_event_delete(const char *event_name) * occur. */ tracing_reset_all_online_cpus(); - mutex_unlock(&trace_types_lock); } return ret;