[linux-pm] uevent before resume completion

Nigel Cunningham ncunningham at crca.org.au
Sun Oct 5 15:06:31 PDT 2008


Hi.

On Sun, 2008-10-05 at 11:49 +0200, Pavel Machek wrote:
> On Mon 2008-09-22 17:19:59, Yauhen Kharuzhy wrote:
> > Hi.
> > 
> > We have an ARM board which does wakeup on USB cable connection to
> > it. In our power supply driver "USB connect" interrupt handler calls
> > power_supply_changed() which cause generation of uevent (in
> > power_supply_changed_work() ). But usermodehelper_disabled
> > still equals to 1 because resume process is not finished yet and
> > userspace helper is not executed.
> > 
> > How to fix this behaviour without breaking other kernel parts? We
> > definitely need to invoke userspace helper on USB cable insertion. Yes,
> > we can generate event after some time with timer but I think that a more
> > elegant solution can be found.
> 
> If you do it such that your 'delayed uevent' code can be reused by
> other subsystems, it should not be too bad...

One option would be to use the pm_notifier call chain, but it sounds to
me like a better solution would be for someone to modify the
kernel/kmod.c to handle delaying tasks until post hibernate/suspend if
they're UMH_NO_WAIT (Yauhen, is your call blocking?)

Regards,

Nigel



More information about the linux-pm mailing list