From owner-freebsd-stable@FreeBSD.ORG Sat Mar 31 23:13:59 2012 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id B7D281065675; Sat, 31 Mar 2012 23:13:59 +0000 (UTC) (envelope-from ambrisko@ambrisko.com) Received: from mail.ambrisko.com (mail.ambrisko.com [70.91.206.90]) by mx1.freebsd.org (Postfix) with ESMTP id 8F26B8FC0A; Sat, 31 Mar 2012 23:13:59 +0000 (UTC) X-Ambrisko-Me: Yes Received: from server2.ambrisko.com (HELO internal.ambrisko.com) ([192.168.1.2]) by ironport.ambrisko.com with ESMTP; 31 Mar 2012 16:13:55 -0700 Received: from ambrisko.com (localhost [127.0.0.1]) by internal.ambrisko.com (8.14.4/8.14.4) with ESMTP id q2VNDn5Q098550; Sat, 31 Mar 2012 16:13:49 -0700 (PDT) (envelope-from ambrisko@ambrisko.com) Received: (from ambrisko@localhost) by ambrisko.com (8.14.4/8.14.4/Submit) id q2VNDnE5098549; Sat, 31 Mar 2012 16:13:49 -0700 (PDT) (envelope-from ambrisko) From: Doug Ambrisko Message-Id: <201203312313.q2VNDnE5098549@ambrisko.com> In-Reply-To: To: sbruno@freebsd.org Date: Sat, 31 Mar 2012 16:13:48 -0700 (PDT) X-Mailer: ELM [version 2.4ME+ PL124d (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="US-ASCII" Cc: "freebsd-stable@freebsd.org" Subject: Re: [stable-ish 9] Dell R815 ipmi(4) attach failure X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 31 Mar 2012 23:13:59 -0000 Doug Ambrisko writes: | 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: on isa0 | | device_attach: ipmi1 attach returned 16 | | ipmi1: 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; Correction get rid of the ipmi_free_request as well. If you kldload then it doesn't have this issue. I've been doing that on -current for a while so I didn't notice the regression when it happened. | } 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.