mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-07-22 03:27:30 -04:00
staging: nvec: fix unconditional pm_power_off teardown
tegra_nvec_remove() unconditionally sets pm_power_off = NULL, even if nvec was not the one that registered it. This breaks any other driver that may have set pm_power_off to its own handler. Replace the unconditional assignment with a guarded check so that pm_power_off is only cleared if nvec was the one that set it. Also remove the stale FIXME comment, as the guard addresses exactly what it was asking for. Reviewed-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Alexandru Hossu <hossu.alexandru@gmail.com> Link: https://patch.msgid.link/20260427081713.3401874-3-hossu.alexandru@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
2681388118
commit
fb2ae75b1a
@@ -906,8 +906,8 @@ static void tegra_nvec_remove(struct platform_device *pdev)
|
||||
nvec_unregister_notifier(nvec, &nvec->nvec_status_notifier);
|
||||
cancel_work_sync(&nvec->rx_work);
|
||||
cancel_work_sync(&nvec->tx_work);
|
||||
/* FIXME: needs check whether nvec is responsible for power off */
|
||||
pm_power_off = NULL;
|
||||
if (pm_power_off == nvec_power_off)
|
||||
pm_power_off = NULL;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PM_SLEEP
|
||||
|
||||
Reference in New Issue
Block a user