hc
2024-09-20 a36159eec6ca17402b0e146b86efaf76568dc353
kernel/drivers/base/firmware_loader/fallback.c
....@@ -106,7 +106,7 @@
106106
107107 static LIST_HEAD(pending_fw_head);
108108
109
-void kill_pending_fw_fallback_reqs(bool only_kill_custom)
109
+void kill_pending_fw_fallback_reqs(bool kill_all)
110110 {
111111 struct fw_priv *fw_priv;
112112 struct fw_priv *next;
....@@ -114,9 +114,13 @@
114114 mutex_lock(&fw_lock);
115115 list_for_each_entry_safe(fw_priv, next, &pending_fw_head,
116116 pending_list) {
117
- if (!fw_priv->need_uevent || !only_kill_custom)
117
+ if (kill_all || !fw_priv->need_uevent)
118118 __fw_load_abort(fw_priv);
119119 }
120
+
121
+ if (kill_all)
122
+ fw_load_abort_all = true;
123
+
120124 mutex_unlock(&fw_lock);
121125 }
122126
....@@ -511,7 +515,7 @@
511515 }
512516
513517 mutex_lock(&fw_lock);
514
- if (fw_state_is_aborted(fw_priv)) {
518
+ if (fw_load_abort_all || fw_state_is_aborted(fw_priv)) {
515519 mutex_unlock(&fw_lock);
516520 retval = -EINTR;
517521 goto out;