Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp832065pxb; Tue, 3 Nov 2020 13:50:11 -0800 (PST) X-Google-Smtp-Source: ABdhPJy6FeHfCyLQ3DBR95bBvyfUsz1gZZxXabS4Ef92pAs1XZUoejPLMcIO5S00YwAEHkiSDV2d X-Received: by 2002:a17:906:647:: with SMTP id t7mr22889321ejb.428.1604440211079; Tue, 03 Nov 2020 13:50:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1604440211; cv=none; d=google.com; s=arc-20160816; b=ngiwTWTkDoK0dpdneM+ehLYb+oblwI/tmjQKicZ6Rw+Um/7yO20YKbXWU2Hd+1KBAE uz7JNBqJoeK+utUgRMLdJAw8e++mD529q/RW8xb/Mq1H5i8TQbMSsNoinsLnCOdUFl/k u7cXps0yYFZD4jselKmtB/gkzoDAweZLN+V8LFCxM6c81Svp6M70XKXN0Y1KgkbiWKFa UzP13jQedg6Pgzy31+qzIa/htufoNj2BfHt39ryAaROcXVlFsgSumH2ejCFj55Fx8CWc J45LUVi86mMIkfpE2ei6HaYkYZ1tiE0zGCvqeNPX8TwpdJ40naY77CPDWl/HrJ4OzTFY zEnQ== 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=8T5AtbulC66BE4TIcvX5jSbW85eB7RX5VqCx0hbPwGg=; b=UplrxOv008sHDN8vFIzu9rk6ZPJoqGjLo2M7NE2Z3Xtxx4gzAdbABCKLW74TIkQQgI JkxrTczfcT0Yp59vK9R9hsZGgTM7jrOyoEbRHtTcnvQGEhRThZPTvL7AwqWhMe+6ak9B 6DFJVpkKsWSEfMwo0kw9T9ZU+2MDTv40hl/Q3wcdmnMGVencwZr45ndvgzi+3sSDcoUX qr6ukZxIEvV7VsqqZiJRaPIj87vCWwD9aFaXCseOzZImyTknBizE1SlfG3qjbQpitLgD l+sD560wTD4nFPeFCFcKR9pC5D7KhMZDVTdwRmAj0AkxFQNEA4ClsfBRFKrE/brayHtw dguA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="0C/NFS1I"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id o12si4882838edz.429.2020.11.03.13.49.48; Tue, 03 Nov 2020 13:50:11 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="0C/NFS1I"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732639AbgKCVqN (ORCPT + 99 others); Tue, 3 Nov 2020 16:46:13 -0500 Received: from mail.kernel.org ([198.145.29.99]:48722 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1732068AbgKCUwT (ORCPT ); Tue, 3 Nov 2020 15:52:19 -0500 Received: from localhost (83-86-74-64.cable.dynamic.v4.ziggo.nl [83.86.74.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 1AA862236F; Tue, 3 Nov 2020 20:52:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1604436738; bh=Me2iG8T7EH6M0qz1inYpkb2a5RQLwzVtJ7yiKOSh94I=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=0C/NFS1Ic2wC6D5yE3JNQloCgHWNmBnQaQytwjfrGfZL98brD0mrd3ZDlILAPnzI8 opF7rt8yrg3KF5YiHGdUcdNxnFG9tTpRHQLkXcaCloFW+FFgdWnrwLTonL17IuMbSm wFP33rBjo0cqKIhDB6J+4f/Xc4Q4vnhoGZKhJpbQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Zong Li , Thomas Gleixner , Atish Patra , Colin Ian King , "Steven Rostedt (VMware)" , "Paul E. McKenney" Subject: [PATCH 5.9 380/391] stop_machine, rcu: Mark functions as notrace Date: Tue, 3 Nov 2020 21:37:11 +0100 Message-Id: <20201103203412.807084409@linuxfoundation.org> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20201103203348.153465465@linuxfoundation.org> References: <20201103203348.153465465@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Zong Li commit 4230e2deaa484b385aa01d598b2aea8e7f2660a6 upstream. Some architectures assume that the stopped CPUs don't make function calls to traceable functions when they are in the stopped state. See also commit cb9d7fd51d9f ("watchdog: Mark watchdog touch functions as notrace"). Violating this assumption causes kernel crashes when switching tracer on RISC-V. Mark rcu_momentary_dyntick_idle() and stop_machine_yield() notrace to prevent this. Fixes: 4ecf0a43e729 ("processor: get rid of cpu_relax_yield") Fixes: 366237e7b083 ("stop_machine: Provide RCU quiescent state in multi_cpu_stop()") Signed-off-by: Zong Li Signed-off-by: Thomas Gleixner Tested-by: Atish Patra Tested-by: Colin Ian King Acked-by: Steven Rostedt (VMware) Acked-by: Paul E. McKenney Cc: stable@vger.kernel.org Link: https://lore.kernel.org/r/20201021073839.43935-1-zong.li@sifive.com Signed-off-by: Greg Kroah-Hartman --- kernel/rcu/tree.c | 2 +- kernel/stop_machine.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) --- a/kernel/rcu/tree.c +++ b/kernel/rcu/tree.c @@ -416,7 +416,7 @@ bool rcu_eqs_special_set(int cpu) * * The caller must have disabled interrupts and must not be idle. */ -void rcu_momentary_dyntick_idle(void) +notrace void rcu_momentary_dyntick_idle(void) { int special; --- a/kernel/stop_machine.c +++ b/kernel/stop_machine.c @@ -178,7 +178,7 @@ static void ack_state(struct multi_stop_ set_state(msdata, msdata->state + 1); } -void __weak stop_machine_yield(const struct cpumask *cpumask) +notrace void __weak stop_machine_yield(const struct cpumask *cpumask) { cpu_relax(); }