mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-12 23:56:42 +07:00
6d3dab7d84
If dev_pm_attach_wake_irq() fails, the device's power.wakeirq field
should not be set to point to the struct wake_irq passed to that
function, as that object will be freed going forward.
For this reason, make dev_pm_attach_wake_irq() first call
device_wakeup_attach_irq() and only set the device's power.wakeirq
field if that's successful.
That requires device_wakeup_attach_irq() to be called under the
device's power.lock lock, but since dev_pm_attach_wake_irq() is
the only caller of it, the requisite changes are easy to make.
Fixes:
|
||
---|---|---|
.. | ||
clock_ops.c | ||
common.c | ||
domain_governor.c | ||
domain.c | ||
generic_ops.c | ||
main.c | ||
Makefile | ||
opp.c | ||
power.h | ||
qos.c | ||
runtime.c | ||
sysfs.c | ||
trace.c | ||
wakeirq.c | ||
wakeup.c |