Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp301850ybb; Wed, 15 Apr 2020 01:33:52 -0700 (PDT) X-Google-Smtp-Source: APiQypLXKgXqJOFu13vlA4h2txdz88QU3DdpYWcapHxgE3iD/SRlHNdcRtQ1GXJQ+uR4P98+uIQm X-Received: by 2002:a17:906:1b16:: with SMTP id o22mr3858310ejg.11.1586939632720; Wed, 15 Apr 2020 01:33:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586939632; cv=none; d=google.com; s=arc-20160816; b=BsQjS+fe99NmKwsLhyJxkD6jDrV3E7bdzQAmbwHOzwnJJMwUNbSne1IE3sJeGtur/p Kb43RkDspZwWW7iLzUVxEfYbgows2qDN9smaRSB8vdmA+l1MPV8HqcxR54+qqze6+BsU a+TEouJ/GcLPMQjMIG9mtp8Hd6TRD1fSX38zF8B0HsF7HyuiMdocxJudSWV/tHCWWVfI ncMiB/43z8LO9AiU1Aug9hoDloaiI/y8oDeQlD79nTuYC8OLmwHsIjfz0atUpspi+BXo bGrCeQ21jQJwGhj9makC/+2xioIK3HzU+C6s60A2nBqTM8fnkKFkOeky3u+W6Bmgiwr7 No6A== 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 :user-agent:references:in-reply-to:date:to:from:subject:message-id :ironport-sdr:ironport-sdr; bh=e8cxUsY8g5BjMls4ImbW4JSAw8suKnHj6+Zftfjt/Zw=; b=Z5hNPy/jfvML7MgtIOLKps2jdn+XDi4v/2DfxgC6jT51zEuSikENyXLjufu5eCs2xL p+5HevZnS8M2fUCWKHwDh7Ztw9n5E4zQ+StTakquQuVLCecRP/asOTTQkhSksK1heW93 cpqqzEuAvSFrqoqeoi+KjyDphgGre/CN9SA6Sv6xCNny+HcPBjD71Tw66MQO8MwgANaA PmO3+WD5RHoJ6G3ONBOmu0T1TBrDBROsTcjBiaxOl7xZP6ZCEk8Uv2hH+sgG2ia4IU5t pXbC0CwyoKfALqBUJCuKaNBjtxNf8sZNkOumI1KhHt2Wn5dulvxT4IlcOoAGf+Z9db0E 6mtA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for 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=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id i12si10144527edx.459.2020.04.15.01.33.29; Wed, 15 Apr 2020 01:33:52 -0700 (PDT) Received-SPF: pass (google.com: best guess record for 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; spf=pass (google.com: best guess record for 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2404949AbgDNDz7 (ORCPT + 99 others); Mon, 13 Apr 2020 23:55:59 -0400 Received: from mga12.intel.com ([192.55.52.136]:55254 "EHLO mga12.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728295AbgDNDz5 (ORCPT ); Mon, 13 Apr 2020 23:55:57 -0400 IronPort-SDR: wQefF3Ufyl6QElO6HZomZKHX62kvB2KE6CEnooVivTbMAlN5MiNgOr2WO7OEuQcGxZopsFBBfw o28AeEVdzNjg== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Apr 2020 20:55:56 -0700 IronPort-SDR: vzBTEWecsrmKI4L9C7YiW1yyInHNJ3i4lIT4gQGtWjIi+WnNK/AuRWIIcxjwPuLxsO7+5VA5Ev 8a6ExhrjiMxg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.72,381,1580803200"; d="scan'208";a="399825341" Received: from spandruv-mobl3.jf.intel.com (HELO yzrodnik-mobl.amr.corp.intel.com) ([10.251.1.193]) by orsmga004.jf.intel.com with ESMTP; 13 Apr 2020 20:55:55 -0700 Message-ID: Subject: Re: [PATCH 1/3] x86/mce/therm_throt: remove unused platform_thermal_notify function pointer From: Srinivas Pandruvada To: "Jason A. Donenfeld" , linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org, x86@kernel.org, arnd@arndb.de, bberg@redhat.com, bp@suse.de Date: Mon, 13 Apr 2020 20:55:55 -0700 In-Reply-To: <20200407063345.4484-1-Jason@zx2c4.com> References: <20200407063345.4484-1-Jason@zx2c4.com> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.34.3 (3.34.3-1.fc31) MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 2020-04-07 at 00:33 -0600, Jason A. Donenfeld wrote: > A long time ago platform_thermal_notify was added as some generic > mechanism for platform drivers to hook thermal events. It seems as > though this has been entirely superseded, and nothing uses it. Remove > the plumbing for this, since this code runs in an interrupt hot path. Good idea. Thanks, Srinivas > > Signed-off-by: Jason A. Donenfeld > --- > arch/x86/include/asm/mce.h | 3 --- > arch/x86/kernel/cpu/mce/therm_throt.c | 25 ------------------------- > 2 files changed, 28 deletions(-) > > diff --git a/arch/x86/include/asm/mce.h b/arch/x86/include/asm/mce.h > index 4359b955e0b7..ee30cb60ad36 100644 > --- a/arch/x86/include/asm/mce.h > +++ b/arch/x86/include/asm/mce.h > @@ -257,9 +257,6 @@ extern void (*deferred_error_int_vector)(void); > > void intel_init_thermal(struct cpuinfo_x86 *c); > > -/* Interrupt Handler for core thermal thresholds */ > -extern int (*platform_thermal_notify)(__u64 msr_val); > - > /* Interrupt Handler for package thermal thresholds */ > extern int (*platform_thermal_package_notify)(__u64 msr_val); > > diff --git a/arch/x86/kernel/cpu/mce/therm_throt.c > b/arch/x86/kernel/cpu/mce/therm_throt.c > index f36dc0742085..f904e85eb68f 100644 > --- a/arch/x86/kernel/cpu/mce/therm_throt.c > +++ b/arch/x86/kernel/cpu/mce/therm_throt.c > @@ -105,10 +105,6 @@ struct thermal_state { > struct _thermal_state pkg_thresh1; > }; > > -/* Callback to handle core threshold interrupts */ > -int (*platform_thermal_notify)(__u64 msr_val); > -EXPORT_SYMBOL(platform_thermal_notify); > - > /* Callback to handle core package threshold_interrupts */ > int (*platform_thermal_package_notify)(__u64 msr_val); > EXPORT_SYMBOL_GPL(platform_thermal_package_notify); > @@ -551,24 +547,6 @@ static void notify_package_thresholds(__u64 > msr_val) > platform_thermal_package_notify(msr_val); > } > > -static void notify_thresholds(__u64 msr_val) > -{ > - /* check whether the interrupt handler is defined; > - * otherwise simply return > - */ > - if (!platform_thermal_notify) > - return; > - > - /* lower threshold reached */ > - if ((msr_val & THERM_LOG_THRESHOLD0) && > - thresh_event_valid(CORE_LEVEL, 0)) > - platform_thermal_notify(msr_val); > - /* higher threshold reached */ > - if ((msr_val & THERM_LOG_THRESHOLD1) && > - thresh_event_valid(CORE_LEVEL, 1)) > - platform_thermal_notify(msr_val); > -} > - > /* Thermal transition interrupt handler */ > static void intel_thermal_interrupt(void) > { > @@ -579,9 +557,6 @@ static void intel_thermal_interrupt(void) > > rdmsrl(MSR_IA32_THERM_STATUS, msr_val); > > - /* Check for violation of core thermal thresholds*/ > - notify_thresholds(msr_val); > - > therm_throt_process(msr_val & THERM_STATUS_PROCHOT, > THERMAL_THROTTLING_EVENT, > CORE_LEVEL);