Re: [PATCH v2 01/30] pm: Improve EXPORT_*_DEV_PM_OPS macros

From: Paul Cercueil
Date: Tue Oct 04 2022 - 15:13:34 EST




Le mar., oct. 4 2022 at 20:54:28 +0200, Rafael J. Wysocki <rafael@xxxxxxxxxx> a écrit :
On Sun, Oct 2, 2022 at 1:18 PM Paul Cercueil <paul@xxxxxxxxxxxxxxx> wrote:



Le sam., oct. 1 2022 at 18:01:30 +0100, Jonathan Cameron
<jic23@xxxxxxxxxx> a écrit :
> On Mon, 26 Sep 2022 15:35:35 +0200
> "Rafael J. Wysocki" <rafael@xxxxxxxxxx> wrote:
>
>> On Mon, Sep 26, 2022 at 3:27 PM Paul Cercueil
>> <paul@xxxxxxxxxxxxxxx> wrote:
>> >
>> > Hi,
>> >
>> > Le lun., sept. 26 2022 at 14:00:52 +0200, Rafael J. Wysocki
>> > <rafael@xxxxxxxxxx> a écrit :
>> > > On Sun, Sep 25, 2022 at 4:52 PM Jonathan Cameron
>> <jic23@xxxxxxxxxx>
>> > > wrote:
>> > >>
>> > >> On Thu, 25 Aug 2022 23:42:53 +0100
>> > >> Paul Cercueil <paul@xxxxxxxxxxxxxxx> wrote:
>> > >>
>> > >> > Hi Rafael,
>> > >> >
>> > >> > Le mar., août 23 2022 at 19:47:57 +0200, Rafael J. Wysocki
>> > >> > <rafael@xxxxxxxxxx> a écrit :
>> > >> > > On Mon, Aug 8, 2022 at 7:41 PM Paul Cercueil
>> > >> <paul@xxxxxxxxxxxxxxx>
>> > >> > > wrote:
>> > >> > >>
>> > >> > >> Update the _EXPORT_DEV_PM_OPS() internal macro. It was
>> not
>> > >> used
>> > >> > >> anywhere
>> > >> > >> outside pm.h and pm_runtime.h, so it is safe to update
>> it.
>> > >> > >>
>> > >> > >> Before, this macro would take a few parameters to be
>> used as
>> > >> sleep
>> > >> > >> and
>> > >> > >> runtime callbacks. This made it unsuitable to use with
>> > >> different
>> > >> > >> callbacks, for instance the "noirq" ones.
>> > >> > >>
>> > >> > >> It is now semantically different: instead of creating a
>> > >> > >> conditionally
>> > >> > >> exported dev_pm_ops structure, it only contains part of
>> the
>> > >> > >> definition.
>> > >> > >>
>> > >> > >> This macro should however never be used directly (hence
>> the
>> > >> trailing
>> > >> > >> underscore). Instead, the following four macros are
>> provided:
>> > >> > >> - EXPORT_DEV_PM_OPS(name)
>> > >> > >> - EXPORT_GPL_DEV_PM_OPS(name)
>> > >> > >> - EXPORT_NS_DEV_PM_OPS(name, ns)
>> > >> > >> - EXPORT_NS_GPL_DEV_PM_OPS(name, ns)
>> > >> > >>
>> > >> > >> For instance, it is now possible to conditionally
>> export noirq
>> > >> > >> suspend/resume PM functions like this:
>> > >> > >>
>> > >> > >> EXPORT_GPL_DEV_PM_OPS(foo_pm_ops) = {
>> > >> > >> NOIRQ_SYSTEM_SLEEP_PM_OPS(suspend_fn, resume_fn)
>> > >> > >> };
>> > >> > >>
>> > >> > >> The existing helper macros EXPORT_*_SIMPLE_DEV_PM_OPS()
>> and
>> > >> > >> EXPORT_*_RUNTIME_DEV_PM_OPS() have been updated to use
>> these
>> > >> new
>> > >> > >> macros.
>> > >> > >>
>> > >> > >> Signed-off-by: Paul Cercueil <paul@xxxxxxxxxxxxxxx>
>> > >> > >
>> > >> > > Acked-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
>> > >> > >
>> > >> > > or please let me know if you need me to pick up this one.
>> > >> >
>> > >> > Could you pick this one up then, and make a branch for
>> Jonathan?
>> > >>
>> > >> Hi Paul, Rafael,
>> > >>
>> > >> What happened to this in the end? I can't immediately find
>> it on
>> > >> any of the pm git tree branches.
>> > >>
>> > >> At this stage in the cycle it would be great if this patch at
>> least
>> > >> makes the merge window, so we can make use of it next cycle.
>> > >
>> > > I thought that this would go in along with the other patches in
>> the
>> > > series.
>> > >
>> > > I can apply it directly, though, if needed.
>> > >
>> > > Thanks!
>> >
>> > I think at this point Jonathan can just take it in his tree with
>> his
>> > own patchset. Then I'll rebase this patchset on v6.1-rc1.
>>
>> Sure.
>>
>> Jonathan, please go ahead and take the patch directly.
>
> Too late for me to take this for this cycle (I route via Greg KH so
> need to have things
> in place a little bit before the merge window). If Lee doesn't pick
> it up, I'll do an
> immutable branch after rc1 is out with just this patch on it, then
> anyone who wants
> it can pick it up.

Rafael or Lee, can you take it now?

Or is it already too late? :(

I've applied this patch as 6.1-rc material, thanks!

Awesome, thanks!

-Paul