2022-07-10 16:46:01

by Roman Stratiienko

[permalink] [raw]
Subject: [RFC] thermal/core: Disable uevent messages for cooling devices

During suspend, the big CPU cluster is turned off first while a little
is still running. This forcibly unregisters the cooling device which
sends a "REMOVE" uevent to all subscribers [1].

In case userspace netlink subscriber has set the EPOLLWAKEUP flag, a
wakeup event is triggered that causes suspend to be aborted.

Without this change, suspend doesn't work on PinePhone PRO with AOSP
userland.

[1]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=5c238a8b599f1ae25eaeb08ad0e9e13e2b9eb023
Signed-off-by: Roman Stratiienko <[email protected]>
---
drivers/thermal/thermal_core.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c
index cdc0552e8c42e..e6b21f2792a85 100644
--- a/drivers/thermal/thermal_core.c
+++ b/drivers/thermal/thermal_core.c
@@ -925,6 +925,7 @@ __thermal_cooling_device_register(struct device_node *np,
cdev->device.class = &thermal_class;
cdev->devdata = devdata;
thermal_cooling_device_setup_sysfs(cdev);
+ dev_set_uevent_suppress(&cdev->device, true);
ret = device_register(&cdev->device);
if (ret)
goto out_kfree_type;
--
2.34.1


2024-04-08 18:58:11

by John Stultz

[permalink] [raw]
Subject: Re: [RFC] thermal/core: Disable uevent messages for cooling devices

On Sun, Jul 10, 2022 at 9:40 AM Roman Stratiienko
<[email protected]> wrote:
>
> During suspend, the big CPU cluster is turned off first while a little
> is still running. This forcibly unregisters the cooling device which
> sends a "REMOVE" uevent to all subscribers [1].
>
> In case userspace netlink subscriber has set the EPOLLWAKEUP flag, a
> wakeup event is triggered that causes suspend to be aborted.
>
> Without this change, suspend doesn't work on PinePhone PRO with AOSP
> userland.
>
> [1]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=5c238a8b599f1ae25eaeb08ad0e9e13e2b9eb023
> Signed-off-by: Roman Stratiienko <[email protected]>

Hey Roman,
I wanted to drudge this patch up, to ask what the current status of
it was? Is there an alternative solution that you've been using since
this was last sent out?
I've heard of some vendors working around something similar, so I
wanted to see if we could get a common fix upstream.

thanks
-john

2024-04-08 19:00:10

by Roman Stratiienko

[permalink] [raw]
Subject: Re: [RFC] thermal/core: Disable uevent messages for cooling devices

Hi John,

I haven't worked on it since I posted it initially. But it looks like
there's an alternative patch already upstreamed and backported into
stable:

https://lore.kernel.org/linux-kernel/CAJZ5v0hHTuEXmQA=0D90eR_KUsOsfcxYbTS=zQYDTXuY6o_K_Q@mail.gmail.com/T/

BR,
Roman

пн, 8 апр. 2024 г. в 21:48, John Stultz <[email protected]>:
>
> On Sun, Jul 10, 2022 at 9:40 AM Roman Stratiienko
> <[email protected]> wrote:
> >
> > During suspend, the big CPU cluster is turned off first while a little
> > is still running. This forcibly unregisters the cooling device which
> > sends a "REMOVE" uevent to all subscribers [1].
> >
> > In case userspace netlink subscriber has set the EPOLLWAKEUP flag, a
> > wakeup event is triggered that causes suspend to be aborted.
> >
> > Without this change, suspend doesn't work on PinePhone PRO with AOSP
> > userland.
> >
> > [1]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=5c238a8b599f1ae25eaeb08ad0e9e13e2b9eb023
> > Signed-off-by: Roman Stratiienko <[email protected]>
>
> Hey Roman,
> I wanted to drudge this patch up, to ask what the current status of
> it was? Is there an alternative solution that you've been using since
> this was last sent out?
> I've heard of some vendors working around something similar, so I
> wanted to see if we could get a common fix upstream.
>
> thanks
> -john

2024-04-08 19:03:41

by John Stultz

[permalink] [raw]
Subject: Re: [RFC] thermal/core: Disable uevent messages for cooling devices

On Mon, Apr 8, 2024 at 11:59 AM Roman Stratiienko
<[email protected]> wrote:
>
> I haven't worked on it since I posted it initially. But it looks like
> there's an alternative patch already upstreamed and backported into
> stable:
>
> https://lore.kernel.org/linux-kernel/CAJZ5v0hHTuEXmQA=0D90eR_KUsOsfcxYbTS=zQYDTXuY6o_K_Q@mail.gmail.com/T/

Ah! Many thanks for the link! I'll check in with folks to better
understand if there is a functionality gap between what you submitted
and what landed upstream.

Thanks again!
-john

2024-04-08 19:39:21

by John Stultz

[permalink] [raw]
Subject: Re: [RFC] thermal/core: Disable uevent messages for cooling devices

On Mon, Apr 8, 2024 at 12:03 PM John Stultz <[email protected]> wrote:
>
> On Mon, Apr 8, 2024 at 11:59 AM Roman Stratiienko
> <[email protected]> wrote:
> >
> > I haven't worked on it since I posted it initially. But it looks like
> > there's an alternative patch already upstreamed and backported into
> > stable:
> >
> > https://lore.kernel.org/linux-kernel/CAJZ5v0hHTuEXmQA=0D90eR_KUsOsfcxYbTS=zQYDTXuY6o_K_Q@mail.gmail.com/T/
>
> Ah! Many thanks for the link! I'll check in with folks to better
> understand if there is a functionality gap between what you submitted
> and what landed upstream.

Ah. Looks like it maybe hasn't landed in -stable yet.

Thanks again for the pointer!
-john