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]
Message-ID: <CABPqkBQoLh+v0ANLb=U-JTjT0yjBacVLTh6f=0q4J4XhVQeeuQ@mail.gmail.com>
Date:   Mon, 31 Jan 2022 23:33:10 -0800
From:   Stephane Eranian <eranian@...gle.com>
To:     Peter Zijlstra <peterz@...radead.org>
Cc:     linux-kernel@...r.kernel.org, kim.phillips@....com,
        acme@...hat.com, jolsa@...hat.com, songliubraving@...com,
        "Rafael J. Wysocki" <rjw@...ysocki.net>, linux-acpi@...r.kernel.org
Subject: Re: [PATCH v5 08/13] ACPI: add perf low power callback

On Thu, Jan 27, 2022 at 5:06 AM Peter Zijlstra <peterz@...radead.org> wrote:
>
> On Wed, Jan 26, 2022 at 03:34:49PM -0800, Stephane Eranian wrote:
> > This patch add an optional callback needed by some PMU features, e.g., AMD
>
> "This patch" is a documented fail.
>
I understand this is not ideal. But the BRS feature must be disabled
before going low-power.
Do you have a better proposal? Been trying to find the simplest way to
support this with no
impact when not needed.

> > BRS, to give a chance to the perf_events code to change its state before
> > going to low power and after coming back.
> >
> > The callback is void when the PERF_NEEDS_LOPWR_CB flag is not set.
> > This flag must be set in arch specific perf_event.h header whenever needed.
> > When not set, there is no impact of the ACPI code.
> >
> > Signed-off-by: Stephane Eranian <eranian@...gle.com>
> > ---
> >  drivers/acpi/acpi_pad.c       | 6 ++++++
> >  drivers/acpi/processor_idle.c | 5 +++++
> >  include/linux/perf_event.h    | 6 ++++++
> >  3 files changed, 17 insertions(+)
> >
> > diff --git a/drivers/acpi/acpi_pad.c b/drivers/acpi/acpi_pad.c
> > index f45979aa2d64..a306a07a60b5 100644
> > --- a/drivers/acpi/acpi_pad.c
> > +++ b/drivers/acpi/acpi_pad.c
> > @@ -164,6 +164,9 @@ static int power_saving_thread(void *data)
> >                               tsc_marked_unstable = 1;
> >                       }
> >                       local_irq_disable();
> > +
> > +                     perf_lopwr_cb(true);
> > +
> >                       tick_broadcast_enable();
> >                       tick_broadcast_enter();
> >                       stop_critical_timings();
> > @@ -172,6 +175,9 @@ static int power_saving_thread(void *data)
> >
> >                       start_critical_timings();
> >                       tick_broadcast_exit();
> > +
> > +                     perf_lopwr_cb(false);
> > +
> >                       local_irq_enable();
> >
> >                       if (time_before(expire_time, jiffies)) {
>
> You forgot to Cc the maintainers of this stinking pile of poo. Can we
> please delete it instead?

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ