Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp2211969imm; Mon, 28 May 2018 04:03:23 -0700 (PDT) X-Google-Smtp-Source: AB8JxZoMlA2bWmkwn6LwfyvrLPjb+4Riorx2e+JhixtsR/fpoJBu6Ak5BKJ1u8woZ+iORM9CpWih X-Received: by 2002:a17:902:22cc:: with SMTP id o12-v6mr13624399plg.38.1527505403421; Mon, 28 May 2018 04:03:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527505403; cv=none; d=google.com; s=arc-20160816; b=0cpNX1P9sSVlI9VUL6VVkYDqclUqOhTdkQzSSSkYjvq8pZonH8B3OlAelG2rPQ1mry BCjdu3hr9Hfw11mDBI/T9iNxq5bk0dZ57Ok8gyCFRXZ3FScgD9lRaUJC3sjirbPtARxN AhLIp2Z/lbIESKzS9f2yjm8VjjCznm5nzoCTIEJgexHmZbbhnobeiDO+Zbtu9Kj2mDzo LJp+jCG4/mune+7JPDrEhT/7Sx35wXr6bopXo0FafYXZtWIKkdz7l4ojmOVzO3sNaaak xe4hqpphaFNAfO3ROJECYuooACVJtivk13iQOboQIWMoeEMCexw9j735h7jwS0yJ6yoi 90NQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature :arc-authentication-results; bh=MSQPJaAzGFgyfHYvTFyIx4Sf2j/EsKpLf9Rt9FZ6WXs=; b=Zumjpye3pWkkE3MieZtuZCt815xHSvyqNcNRZHmqqJxCP0sCVm2h3+GN1VLz06gAnA a0HXTVwJsSdxB7grk+YGEVcdDi8lx0vry6U3wJh8ErYyMr9/76tNWsJiLzV6bsfli0yS +x4n+E+Cc/k3967z0gHjlF4Y7mVOku81BMqNkE+UBJw+241ql2qLevdp0lgmougvbSwJ eXyhEKkDNZduokwCg3q0CrV3Wl+rFjTuqFwIZx7v4VmTN56+95TGbaEKQIyzcsY9nQj1 udOpbpwr5jtd+t2bWC7SXcpexWfLXVpQN64QAfjrX2VdD5OgOhKsubl9uETYBXDJ+qpq 2tcg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=lz2JJU/O; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f59-v6si30465354plb.106.2018.05.28.04.03.07; Mon, 28 May 2018 04:03:23 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=lz2JJU/O; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1164776AbeE1LCy (ORCPT + 99 others); Mon, 28 May 2018 07:02:54 -0400 Received: from mail.kernel.org ([198.145.29.99]:50106 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1422848AbeE1LCs (ORCPT ); Mon, 28 May 2018 07:02:48 -0400 Received: from localhost (LFbn-1-12247-202.w90-92.abo.wanadoo.fr [90.92.61.202]) (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 3057020883; Mon, 28 May 2018 11:02:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1527505367; bh=K/VoRo6QLn+hQkdQyZ4EoSzmFkf7LVPUWU7IF/zb9EU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lz2JJU/OHMSbaA2utOFZMdH29zSdcG5D1H2GbFA40540PAmmG/49SKaPCBHw67YN5 Oxvkx1QNYb3Eob6k0Q/pCfPowVoleiVFCpi1OBYCDzt+aAeLqtVC3TjK4Cum3I001s Rny+EoTWvrULxzFdIPqLgwdFuwykQMYlbsj7eB4s= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org Subject: [PATCH 4.14 472/496] rcu: Call touch_nmi_watchdog() while printing stall warnings Date: Mon, 28 May 2018 12:04:17 +0200 Message-Id: <20180528100339.800219768@linuxfoundation.org> X-Mailer: git-send-email 2.17.0 In-Reply-To: <20180528100319.498712256@linuxfoundation.org> References: <20180528100319.498712256@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Tejun Heo [ Upstream commit 3caa973b7a260e7a2a69edc94c300ab9c65148c3 ] When RCU stall warning triggers, it can print out a lot of messages while holding spinlocks. If the console device is slow (e.g. an actual or IPMI serial console), it may end up triggering NMI hard lockup watchdog like the following. --- kernel/rcu/tree_plugin.h | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) --- a/kernel/rcu/tree_plugin.h +++ b/kernel/rcu/tree_plugin.h @@ -559,8 +559,14 @@ static void rcu_print_detail_task_stall_ } t = list_entry(rnp->gp_tasks->prev, struct task_struct, rcu_node_entry); - list_for_each_entry_continue(t, &rnp->blkd_tasks, rcu_node_entry) + list_for_each_entry_continue(t, &rnp->blkd_tasks, rcu_node_entry) { + /* + * We could be printing a lot while holding a spinlock. + * Avoid triggering hard lockup. + */ + touch_nmi_watchdog(); sched_show_task(t); + } raw_spin_unlock_irqrestore_rcu_node(rnp, flags); } @@ -1677,6 +1683,12 @@ static void print_cpu_stall_info(struct char *ticks_title; unsigned long ticks_value; + /* + * We could be printing a lot while holding a spinlock. Avoid + * triggering hard lockup. + */ + touch_nmi_watchdog(); + if (rsp->gpnum == rdp->gpnum) { ticks_title = "ticks this GP"; ticks_value = rdp->ticks_this_gp;