ipmi:msghandler: Use the system_wq, not system_bh_wq
authorCorey Minyard <corey@minyard.net>
Wed, 19 Mar 2025 00:03:08 +0000 (19:03 -0500)
committerCorey Minyard <corey@minyard.net>
Wed, 7 May 2025 22:25:47 +0000 (17:25 -0500)
Everything can be run in thread context now, don't use the bh one.

Signed-off-by: Corey Minyard <cminyard@mvista.com>
drivers/char/ipmi/ipmi_msghandler.c

index 0b2d56704411a2a49ce932bb0b098418bd077cc9..4093aa682a669c3696041bbc539f6707492c52f9 100644 (file)
@@ -956,7 +956,7 @@ static int deliver_response(struct ipmi_smi *intf, struct ipmi_recv_msg *msg)
                        list_add_tail(&msg->link, &intf->user_msgs);
                        mutex_unlock(&intf->user_msgs_mutex);
                        release_ipmi_user(user, index);
-                       queue_work(system_bh_wq, &intf->smi_work);
+                       queue_work(system_wq, &intf->smi_work);
                } else {
                        /* User went away, give up. */
                        ipmi_free_recv_msg(msg);
@@ -4892,7 +4892,7 @@ void ipmi_smi_msg_received(struct ipmi_smi *intf,
        if (run_to_completion)
                smi_work(&intf->smi_work);
        else
-               queue_work(system_bh_wq, &intf->smi_work);
+               queue_work(system_wq, &intf->smi_work);
 }
 EXPORT_SYMBOL(ipmi_smi_msg_received);
 
@@ -4902,7 +4902,7 @@ void ipmi_smi_watchdog_pretimeout(struct ipmi_smi *intf)
                return;
 
        atomic_set(&intf->watchdog_pretimeouts_to_deliver, 1);
-       queue_work(system_bh_wq, &intf->smi_work);
+       queue_work(system_wq, &intf->smi_work);
 }
 EXPORT_SYMBOL(ipmi_smi_watchdog_pretimeout);
 
@@ -5071,7 +5071,7 @@ static bool ipmi_timeout_handler(struct ipmi_smi *intf,
                                       flags);
        }
 
-       queue_work(system_bh_wq, &intf->smi_work);
+       queue_work(system_wq, &intf->smi_work);
 
        return need_timer;
 }
@@ -5128,7 +5128,7 @@ static void ipmi_timeout(struct timer_list *unused)
        if (atomic_read(&stop_operation))
                return;
 
-       queue_work(system_bh_wq, &ipmi_timer_work);
+       queue_work(system_wq, &ipmi_timer_work);
 }
 
 static void need_waiter(struct ipmi_smi *intf)