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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 18 May 2021 11:11:17 +0100
From:   Mark Rutland <mark.rutland@....com>
To:     Thomas Gleixner <tglx@...utronix.de>
Cc:     LKML <linux-kernel@...r.kernel.org>,
        Peter Zijlstra <peterz@...radead.org>,
        Robin Murphy <robin.murphy@....com>,
        Nitesh Lal <nilal@...hat.com>,
        Jesse Brandeburg <jesse.brandeburg@...el.com>,
        Marc Zyngier <maz@...nel.org>, Will Deacon <will@...nel.org>,
        linux-arm-kernel@...ts.infradead.org, Frank Li <Frank.li@....com>,
        Shawn Guo <shawnguo@...nel.org>,
        Sascha Hauer <s.hauer@...gutronix.de>,
        Pengutronix Kernel Team <kernel@...gutronix.de>,
        Fabio Estevam <festevam@...il.com>,
        NXP Linux Team <linux-imx@....com>,
        Shaokun Zhang <zhangshaokun@...ilicon.com>
Subject: Re: [patch 0/8] genirq, perf: Cleanup the abuse of
 irq_set_affinity_hint()

Hi Thomas,

On Tue, May 18, 2021 at 11:17:25AM +0200, Thomas Gleixner wrote:
> The modular PMU drivers use irq_set_affinity_hint() to set the affinity
> for the PMU interrupts, which relies on the undocumented side effect that
> this function actually sets the affinity under the hood.
> 
> Setting an hint is clearly not a guarantee and for these PMU interrupts an
> affinity hint, which is supposed to guide userspace for setting affinity,
> is beyond pointless, because the affinity of these interrupts cannot be
> modified from user space.
> 
> Aside of that the error checks are bogus because the only error which is
> returned from irq_set_affinity_hint() is when there is no irq descriptor
> for the interrupt number, but not when the affinity set fails. That's on
> purpose because the hint can point to an offline CPU.
> 
> Sigh, if people would at least talk if something is missing...
> 
> Clean up the mess by exposing irq_set_affinity() and converting the drivers
> over to that.

Sorry about this, and thanks for cleaning this up.

For the series:

Acked-by: Mark Rutland <mark.rutland@....com>

Mark.

> 
> Thanks,
> 
> 	tglx
> ---
>  drivers/perf/arm-ccn.c                        |    6 +---
>  drivers/perf/arm-cmn.c                        |    9 +-----
>  drivers/perf/arm_dmc620_pmu.c                 |    5 +--
>  drivers/perf/arm_dsu_pmu.c                    |    8 +----
>  drivers/perf/arm_smmuv3_pmu.c                 |   10 ++-----
>  drivers/perf/fsl_imx8_ddr_perf.c              |    5 +--
>  drivers/perf/hisilicon/hisi_uncore_ddrc_pmu.c |    3 --
>  drivers/perf/hisilicon/hisi_uncore_hha_pmu.c  |    3 --
>  drivers/perf/hisilicon/hisi_uncore_l3c_pmu.c  |    3 --
>  drivers/perf/hisilicon/hisi_uncore_pa_pmu.c   |    3 --
>  drivers/perf/hisilicon/hisi_uncore_pmu.c      |    4 +-
>  drivers/perf/hisilicon/hisi_uncore_sllc_pmu.c |    3 --
>  include/linux/interrupt.h                     |   35 +-------------------------
>  kernel/irq/manage.c                           |   33 +++++++++++++++++++++++-
>  14 files changed, 49 insertions(+), 81 deletions(-)
> 
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ