lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 13 Apr 2020 20:55:55 -0700
From:   Srinivas Pandruvada <srinivas.pandruvada@...ux.intel.com>
To:     "Jason A. Donenfeld" <Jason@...c4.com>,
        linux-kernel@...r.kernel.org, linux-edac@...r.kernel.org,
        x86@...nel.org, arnd@...db.de, bberg@...hat.com, bp@...e.de
Subject: Re: [PATCH 1/3] x86/mce/therm_throt: remove unused
 platform_thermal_notify function pointer

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 <Jason@...c4.com>
> ---
>  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);

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ