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:   Tue, 8 Jun 2021 10:24:58 -0400
From:   Alan Stern <stern@...land.harvard.edu>
To:     Ulf Hansson <ulf.hansson@...aro.org>
Cc:     "Rafael J . Wysocki" <rjw@...ysocki.net>, linux-pm@...r.kernel.org,
        Saravana Kannan <saravanak@...gle.com>,
        Adrian Hunter <adrian.hunter@...el.com>,
        Tony Lindgren <tony@...mide.com>,
        Kevin Hilman <khilman@...nel.org>,
        Geert Uytterhoeven <geert+renesas@...der.be>,
        linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 0/3] PM: runtime: Update behaviour for no callbacks

On Tue, Jun 08, 2021 at 11:02:47AM +0200, Ulf Hansson wrote:
> While reviewing a patch on the mmc-list, I ended up inspecting the behaviour of
> how we deal with the no callback case for runtime PM.
> 
> A couple of observations:
> 
> *) When pm_runtime_no_callbacks() have been called, it allows the PM core to
> takes a quicker path, but at the same time, consumer/supplier device links are
> being skipped in rpm_resume|suspend().
> 
> **) Calling pm_runtime_no_callbacks() to avoid boiler plate code (assigning
> empty functions to ->runtime_suspend|resume()), doesn't work if there could be
> consumer/supplier device link being used or a platform dependent PM domain that
> could get attached to the device.
> 
> Therefore, this series suggests to change the behaviour in the PM core, to
> allow the ->runtime_suspend|resume() callbacks to be unassigned. This is already
> supported for ->runtime_idle() callbacks, so it would also move things into a
> more consistent behaviour.
> 
> I have looked at various error paths, in the kernel of callers of
> pm_runtime_get_sync(). I couldn't find anyone that made sense, that looked for
> the special error code, -ENOSYS, which is the error code getting returned when a
> callback is missing. Whether that is sufficient proof that these changes are
> 100% safe, I can't guarantee, but I think it would be worth a try as the
> benefits of avoiding boilerplate code and the corresponding additional code
> paths are quite nice, if you ask me.

In principle I have no objection to these changes.  It's likely 
that if any problems do crop up, we'll be able to fix them pretty 
easily.  For patches 1 and 2:

Acked-by: Alan Stern <stern@...land.harvard.edu>

Alan Stern

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ