UPSTREAM: firmware_loader: Refactor kill_pending_fw_fallback_reqs()
Rename 'only_kill_custom' and refactor logic related to it to be more meaningful. Bug: 309378049 Change-Id: I119d2f8c29b9b624e6c1d8546c1533d76a2cc51d Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com> Acked-by: Luis Chamberlain <mcgrof@kernel.org> Link: https://lore.kernel.org/r/1698330459-31776-1-git-send-email-quic_mojha@quicinc.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 87ffa98eeee8d62a56afdad80ea697e7a6e5c354) Signed-off-by: Srinivasarao Pathipati <quic_c_spathi@quicinc.com>
This commit is contained in:
parent
49de253fb4
commit
93e172c43e
3 changed files with 8 additions and 8 deletions
|
|
@ -103,7 +103,7 @@ static void fw_load_abort(struct fw_sysfs *fw_sysfs)
|
|||
|
||||
static LIST_HEAD(pending_fw_head);
|
||||
|
||||
void kill_pending_fw_fallback_reqs(bool only_kill_custom)
|
||||
void kill_pending_fw_fallback_reqs(bool kill_all)
|
||||
{
|
||||
struct fw_priv *fw_priv;
|
||||
struct fw_priv *next;
|
||||
|
|
@ -111,7 +111,7 @@ void kill_pending_fw_fallback_reqs(bool only_kill_custom)
|
|||
mutex_lock(&fw_lock);
|
||||
list_for_each_entry_safe(fw_priv, next, &pending_fw_head,
|
||||
pending_list) {
|
||||
if (!fw_priv->need_uevent || !only_kill_custom)
|
||||
if (kill_all || !fw_priv->need_uevent)
|
||||
__fw_load_abort(fw_priv);
|
||||
}
|
||||
mutex_unlock(&fw_lock);
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ int firmware_fallback_sysfs(struct firmware *fw, const char *name,
|
|||
struct device *device,
|
||||
enum fw_opt opt_flags,
|
||||
int ret);
|
||||
void kill_pending_fw_fallback_reqs(bool only_kill_custom);
|
||||
void kill_pending_fw_fallback_reqs(bool kill_all);
|
||||
|
||||
void fw_fallback_set_cache_timeout(void);
|
||||
void fw_fallback_set_default_timeout(void);
|
||||
|
|
@ -52,7 +52,7 @@ static inline int firmware_fallback_sysfs(struct firmware *fw, const char *name,
|
|||
return ret;
|
||||
}
|
||||
|
||||
static inline void kill_pending_fw_fallback_reqs(bool only_kill_custom) { }
|
||||
static inline void kill_pending_fw_fallback_reqs(bool kill_all) { }
|
||||
static inline void fw_fallback_set_cache_timeout(void) { }
|
||||
static inline void fw_fallback_set_default_timeout(void) { }
|
||||
|
||||
|
|
|
|||
|
|
@ -1363,10 +1363,10 @@ static int fw_pm_notify(struct notifier_block *notify_block,
|
|||
case PM_SUSPEND_PREPARE:
|
||||
case PM_RESTORE_PREPARE:
|
||||
/*
|
||||
* kill pending fallback requests with a custom fallback
|
||||
* to avoid stalling suspend.
|
||||
* Here, kill pending fallback requests will only kill
|
||||
* non-uevent firmware request to avoid stalling suspend.
|
||||
*/
|
||||
kill_pending_fw_fallback_reqs(true);
|
||||
kill_pending_fw_fallback_reqs(false);
|
||||
device_cache_fw_images();
|
||||
break;
|
||||
|
||||
|
|
@ -1452,7 +1452,7 @@ static int fw_shutdown_notify(struct notifier_block *unused1,
|
|||
* Kill all pending fallback requests to avoid both stalling shutdown,
|
||||
* and avoid a deadlock with the usermode_lock.
|
||||
*/
|
||||
kill_pending_fw_fallback_reqs(false);
|
||||
kill_pending_fw_fallback_reqs(true);
|
||||
|
||||
return NOTIFY_DONE;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue