[stable-ish 9] Dell R815 ipmi(4) attach failure

Doug Ambrisko ambrisko at ambrisko.com
Sat Mar 31 19:25:49 UTC 2012


Sean Bruno writes:
| Noting a failure to attach to the onboard IPMI controller with this dell
| R815.  Not sure what to start poking at and thought I'd though this over
| here for comment.
| 
| -bash-4.2$ dmesg |grep ipmi
| ipmi0: KCS mode found at io 0xca8 on acpi
| ipmi1: <IPMI System Interface> on isa0
| device_attach: ipmi1 attach returned 16
| ipmi1: <IPMI System Interface> on isa0
| device_attach: ipmi1 attach returned 16
| ipmi0: Timed out waiting for GET_DEVICE_ID

I've run into this recently.  A quick hack to fix it is:

Index: ipmi.c
===================================================================
RCS file: /cvs/src/sys/dev/ipmi/ipmi.c,v
retrieving revision 1.14
diff -u -p -r1.14 ipmi.c
--- ipmi.c	14 Apr 2011 07:14:22 -0000	1.14
+++ ipmi.c	31 Mar 2012 19:18:35 -0000
@@ -695,7 +695,6 @@ ipmi_startup(void *arg)
 	if (error == EWOULDBLOCK) {
 		device_printf(dev, "Timed out waiting for GET_DEVICE_ID\n");
 		ipmi_free_request(req);
-		return;
 	} else if (error) {
 		device_printf(dev, "Failed GET_DEVICE_ID: %d\n", error);
 		ipmi_free_request(req);

The issue is that the wakeup doesn't actually wake up the msleep
in ipmi_submit_driver_request.  The error being reported is that
the msleep timed out.  This doesn't seem to be critical problem
since after this things seemed to work work.  I saw this on 9.X.
Haven't seen it on 8.2.  Not sure about -current.

It doesn't happen on all machines.

Doug A.


More information about the freebsd-stable mailing list