IPMI driver may hang when two request are issued at the same time
Issue
- While two IPMI clients issuing the requests to IPMI driver at the same time, the deadlock situation may happen.
- This is because IPMI driver uses two different kinds of lock variables, smi_info->msg_lock & smi_info->si_lock and two requests from clients get one of these two locks and waits the other lock respectively in some situations.
- This is one of the typical deadlock case.
- This problem is already fixed in upstream kernels and RHEL6.4. In that fix , one of the two locks is eliminated because the structure of IPMI driver is changed so that its function works as a kernel thread.
- So, this deadlock never happens after the fix.
- The related part in the change log of RHEL6.4 is this.
+- [char] ipmi: use a tasklet for handling received messages (Prarit
Bhargava) [890160]
- We want the same fix for the RHEL5.9 errata and RH5.10GA
Environment
- Red Hat Enterprise Linux 5 Update 6
- Architecture: x86_64
- Kernel Version: kernel-2.6.18-238.el5
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.