From owner-freebsd-current@FreeBSD.ORG Sun Jul 11 10:29:31 2010 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AFC1B106564A; Sun, 11 Jul 2010 10:29:31 +0000 (UTC) (envelope-from mavbsd@gmail.com) Received: from mail-fx0-f54.google.com (mail-fx0-f54.google.com [209.85.161.54]) by mx1.freebsd.org (Postfix) with ESMTP id 119278FC22; Sun, 11 Jul 2010 10:29:30 +0000 (UTC) Received: by fxm13 with SMTP id 13so2014331fxm.13 for ; Sun, 11 Jul 2010 03:29:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :x-enigmail-version:content-type; bh=OgZeBVkNxEWmLYaBTxBbUI0qPPU/P5qLxfIfmYaGC+Y=; b=cqqnBpQJ4/GwTUoF7+4DJIxKxpPryjKjdNm7Rw/xtBFbnPUGzDt06oypYZjwAzkliR v/kMq1YDTa/HkO8h+XYwA8FsjnL4jDI23XUzNGq2WqbG+DnO9FJ+DsyRmOhR0NBi7CgN AkH2lEDHOU77PxU03+HayWPVOIO7iMVnCJExY= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:content-type; b=fQhRLjchA/yGjn7qlzyC6QxjXhSNDacUd2Z53h3jqLn2h8ZW9ExJh2YT4Z5qglaz3t isMmvS7NU0NVRKI7yzPEYULG07Z1KK9K5YcoQ2njQXXkfqMO8ljSQ4dFJlnXN+EFXazW QTODxztsRBCAnIo0nPh25vCSOxokYdbOKncms= Received: by 10.223.112.75 with SMTP id v11mr10190556fap.106.1278844169882; Sun, 11 Jul 2010 03:29:29 -0700 (PDT) Received: from mavbook2.mavhome.dp.ua (pc.mavhome.dp.ua [212.86.226.226]) by mx.google.com with ESMTPS id c3sm6453740fay.38.2010.07.11.03.29.27 (version=SSLv3 cipher=RC4-MD5); Sun, 11 Jul 2010 03:29:28 -0700 (PDT) Sender: Alexander Motin Message-ID: <4C399CD2.7010804@FreeBSD.org> Date: Sun, 11 Jul 2010 13:28:34 +0300 From: Alexander Motin User-Agent: Thunderbird 2.0.0.23 (X11/20091212) MIME-Version: 1.0 To: Doug Barton References: <20100710074455.4E516818130@smtp3-g21.free.fr> <4C38B7F4.8040109@FreeBSD.org> In-Reply-To: <4C38B7F4.8040109@FreeBSD.org> X-Enigmail-Version: 0.96.0 Content-Type: multipart/mixed; boundary="------------020909050304040708050602" Cc: raoul , freebsd-current@freebsd.org Subject: Re: panic on dell laptop X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 11 Jul 2010 10:29:31 -0000 This is a multi-part message in MIME format. --------------020909050304040708050602 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Doug Barton wrote: > Try backing up to svn r209633 and see if you can boot. What you're > describing is identical to a panic I had starting with the next > revision, also on a Dell laptop. Please try attached patch against HEAD. -- Alexander Motin --------------020909050304040708050602 Content-Type: text/plain; name="timers.res.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="timers.res.patch" diff -ruNp isa.prev/atrtc.c isa/atrtc.c --- isa.prev/atrtc.c 2010-07-11 11:43:18.000000000 +0300 +++ isa/atrtc.c 2010-07-11 12:33:49.000000000 +0300 @@ -244,6 +244,7 @@ static int atrtc_attach(device_t dev) { struct atrtc_softc *sc; + u_long s; int i, diag; sc = device_get_softc(dev); @@ -260,7 +261,9 @@ atrtc_attach(device_t dev) (resource_int_value(device_get_name(dev), device_get_unit(dev), "clock", &i) != 0 || i != 0)) { sc->intr_rid = 0; - bus_delete_resource(dev, SYS_RES_IRQ, sc->intr_rid); + while (bus_get_resource(dev, SYS_RES_IRQ, sc->intr_rid, + &s, NULL) == 0 && s != 8) + sc->intr_rid++; if (!(sc->intr_res = bus_alloc_resource(dev, SYS_RES_IRQ, &sc->intr_rid, 8, 8, 1, RF_ACTIVE))) { device_printf(dev,"Can't map interrupt.\n"); diff -ruNp isa.prev/clock.c isa/clock.c --- isa.prev/clock.c 2010-07-11 11:43:24.000000000 +0300 +++ isa/clock.c 2010-07-11 13:25:45.000000000 +0300 @@ -94,7 +94,8 @@ static int i8254_ticked; struct attimer_softc { int intr_en; - int intr_rid; + int port_rid, intr_rid; + struct resource *port_res; struct resource *intr_res; void *intr_handler; struct timecounter tc; @@ -523,10 +524,14 @@ static int attimer_attach(device_t dev) { struct attimer_softc *sc; + u_long s; int i; attimer_sc = sc = device_get_softc(dev); bzero(sc, sizeof(struct attimer_softc)); + if (!(sc->port_res = bus_alloc_resource(dev, SYS_RES_IOPORT, + &sc->port_rid, IO_TIMER1, IO_TIMER1 + 3, 4, RF_ACTIVE))) + device_printf(dev,"Warning: Couldn't map I/O.\n"); i8254_intsrc = intr_lookup_source(0); if (i8254_intsrc != NULL) i8254_pending = i8254_intsrc->is_pic->pic_source_pending; @@ -541,7 +546,9 @@ attimer_attach(device_t dev) if (resource_int_value(device_get_name(dev), device_get_unit(dev), "clock", &i) != 0 || i != 0) { sc->intr_rid = 0; - bus_delete_resource(dev, SYS_RES_IRQ, sc->intr_rid); + while (bus_get_resource(dev, SYS_RES_IRQ, sc->intr_rid, + &s, NULL) == 0 && s != 0) + sc->intr_rid++; if (!(sc->intr_res = bus_alloc_resource(dev, SYS_RES_IRQ, &sc->intr_rid, 0, 0, 1, RF_ACTIVE))) { device_printf(dev,"Can't map interrupt.\n"); --------------020909050304040708050602--