Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp4069919ybb; Mon, 6 Apr 2020 23:34:39 -0700 (PDT) X-Google-Smtp-Source: APiQypJzMjaz/KwybqSdn1cVl6F6dQX3YEC/pTZMlKZTh7YzfnqjkC+k2KkOKQhld3VOY81xPcPG X-Received: by 2002:a9d:4e3:: with SMTP id 90mr373111otm.261.1586241279468; Mon, 06 Apr 2020 23:34:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586241279; cv=none; d=google.com; s=arc-20160816; b=eZK2dVTgAp324xqg6uvuQHTDr+mSxXDuIqB4Sx6m8nX/PCzbENNcx4QEKW8RfBTk1a qLfYuOPZV/34TnXqJOsdHtTJlYTrpJ9xqqYhRp5oUssvKjNMNM2BtatWqgbEPqMdNQAK QEacWHmAcYqI5tOfKmjRzpwAJJMfDfRNrLwg1tVQChJQ/wsmw02S7RSwD/UBD6nJr8Qo cXFRPb/qYZnTEFi8IxXtRQEK7n31dA28XnxtP+Tqs/hM4fHxMJ2wdv2GiI+mlo6hZR6o b5s3zwsotLerOgicmqyPlsJOQUjc58DMy+4yEM7hWjS3+BWmhZS9eH+6R/zTQ2BTcQbP nqgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=/pl3UXrUCzRfcl1kADdjnKtwCkez4iAGe9AvyBzmEOo=; b=elfj67aDLGe/nwtmAX0Fn/SIzA7yEimZAyhqsJs72mC7hUj+FtJ6MHGO/vlRmVJ+v5 sJhQKDKZYsmj8LVoVHx1dpi5vx97M0sIBIu5CZyokCGil9qA5LCutC49P7DD3pY6puJs WgnvClI4M/rMV11Xch7IzWAVUzfAiQQVrZRdxQ2PJtVW3VsRT0oRjTu4R/zpme5mVvPD xqF6RX6QElQeg3PgC31/KS+9CLShAFOO+fe1vFUfclnnUUjQWRXrgMdXswZl0P7G8y5r Q5TcahJDY2pqSvo5fZ8TmpZPk0A5D4xG3UG2cgclrOzPJEdAPnpvGegaFYKvu67VaoJm 3aIQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@zx2c4.com header.s=mail header.b=fXiQ1qW3; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=zx2c4.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 64si909937otn.173.2020.04.06.23.34.27; Mon, 06 Apr 2020 23:34:39 -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=@zx2c4.com header.s=mail header.b=fXiQ1qW3; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=zx2c4.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727140AbgDGGd6 (ORCPT + 99 others); Tue, 7 Apr 2020 02:33:58 -0400 Received: from frisell.zx2c4.com ([192.95.5.64]:34753 "EHLO frisell.zx2c4.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726448AbgDGGd5 (ORCPT ); Tue, 7 Apr 2020 02:33:57 -0400 Received: by frisell.zx2c4.com (ZX2C4 Mail Server) with ESMTP id 6917a9d6; Tue, 7 Apr 2020 06:25:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=zx2c4.com; h=from:to:cc :subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; s=mail; bh=BzxdK8qX7RPMFKrWffaobEdiW Aw=; b=fXiQ1qW3kilIqRdGH9MIIuHs+vzTNW4T/NuK8lAzfJzSjQbhm/qNou8NZ OV3ylqBANDqhURB9qTb8wE89Sq7RpWLpE2s+EMf+8OH8QTRXEiCaEkjn0468f6yl YwWkVcDkIZUvkE6wpNamzA/ZktpKbCTuEjvUMQOlTvAWzTWt83mLb8ZfTrix+THW nlxw36s5r/2lABHK67dP5GTrFkTh2v0J2aSkBHvmyatVSLWEssWGMhWZJb1XaySu rXy8Zn6BSax1+wsV8QP1iiAq2d8dUQwm5OAS4RmIZZkEKB22g4oUX/AkLMep7sEf GAef5h9L8TjainUlvq0EwLhdRAkww== Received: by frisell.zx2c4.com (ZX2C4 Mail Server) with ESMTPSA id 715c3be1 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); Tue, 7 Apr 2020 06:25:01 +0000 (UTC) From: "Jason A. Donenfeld" To: linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org, x86@kernel.org, arnd@arndb.de, srinivas.pandruvada@linux.intel.com, bberg@redhat.com, bp@suse.de Cc: "Jason A. Donenfeld" Subject: [PATCH 2/3] x86/mce/therm_throt: allow disabling verbose logging Date: Tue, 7 Apr 2020 00:33:44 -0600 Message-Id: <20200407063345.4484-2-Jason@zx2c4.com> In-Reply-To: <20200407063345.4484-1-Jason@zx2c4.com> References: <20200407063345.4484-1-Jason@zx2c4.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org There is an enormous amount of fiddly book keeping and an auxiliary workqueue just for the purpose of ratelimiting and reliably printing messages regarding thermal events and throttling, which uses CPU in a rather common interrupt. Add an option to disable this verbose reporting. Signed-off-by: Jason A. Donenfeld --- arch/x86/Kconfig | 9 +++++++++ arch/x86/kernel/cpu/mce/therm_throt.c | 3 +++ 2 files changed, 12 insertions(+) diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index beea77046f9b..39e7444353af 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -1159,6 +1159,15 @@ config X86_THERMAL_VECTOR def_bool y depends on X86_MCE_INTEL +config X86_MCE_THERMAL_VERBOSE + bool "Verbose logging for thermal events" + depends on X86_THERMAL_VECTOR + ---help--- + Display messages in the kernel log when thermal events are triggered, + such as overheating and throttling. This mostly only uses extra CPU + for ratelimiting and book keeping, so unless you need these logs, it + is safe to say N. + source "arch/x86/events/Kconfig" config X86_LEGACY_VM86 diff --git a/arch/x86/kernel/cpu/mce/therm_throt.c b/arch/x86/kernel/cpu/mce/therm_throt.c index f904e85eb68f..6d726190a40a 100644 --- a/arch/x86/kernel/cpu/mce/therm_throt.c +++ b/arch/x86/kernel/cpu/mce/therm_throt.c @@ -313,6 +313,9 @@ static void therm_throt_process(bool new_event, int event, int level) u64 now; struct thermal_state *pstate = &per_cpu(thermal_state, this_cpu); + if (!IS_ENABLED(CONFIG_X86_MCE_THERMAL_VERBOSE)) + return; + now = get_jiffies_64(); if (level == CORE_LEVEL) { if (event == THERMAL_THROTTLING_EVENT) -- 2.26.0