Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Apr 2007 13:56:35 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        Nate Lawson <nate@root.org>
Cc:        cvs-src@freebsd.org, src-committers@freebsd.org, cvs-all@freebsd.org
Subject:   Re: cvs commit: src/sys/dev/acpica acpi.c
Message-ID:  <200704251356.35785.jhb@freebsd.org>
In-Reply-To: <462F8672.7040200@root.org>
References:  <20070425162233.8CCFC16A59E@hub.freebsd.org> <462F8672.7040200@root.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 25 April 2007 12:48:50 pm Nate Lawson wrote:
> John Baldwin wrote:
> > jhb         2007-04-25 16:22:18 UTC
> > 
> >   FreeBSD src repository
> > 
> >   Modified files:
> >     sys/dev/acpica       acpi.c 
> >   Log:
> >   Use a tighter check to see if a resource allocation request is for a
> >   specific request and thus should first try to be allocated from the
> >   sys_resource pool.  This avoids using the sys_resource pool for wildcard
> >   requests that have bounded ranges coming from cbb(4) and Host-PCI 
pcib(4)
> >   drivers.
> >   
> >   Tested by:      Andrea Bittau <a.bittau of cs.ucl.ac.uk fame>
> >   Sleuthing by:   Andrea Bittau as well
> >   
> >   Revision  Changes    Path
> >   1.235     +1 -1      src/sys/dev/acpica/acpi.c
> > 
> > 
> > Index: src/sys/dev/acpica/acpi.c
> > diff -u src/sys/dev/acpica/acpi.c:1.234 src/sys/dev/acpica/acpi.c:1.235
> > --- src/sys/dev/acpica/acpi.c:1.234	Thu Mar 22 18:16:40 2007
> > +++ src/sys/dev/acpica/acpi.c	Wed Apr 25 16:22:18 2007
> > @@ -1034,7 +1034,7 @@
> >       * the request from our system resource regions.  If we can't, pass 
the
> >       * request up to the parent.
> >       */
> > -    if (!(start == 0UL && end == ~0UL) && rm != NULL)
> > +    if (start + count - 1 == end && rm != NULL)
> >  	res = rman_reserve_resource(rm, start, end, count, flags & ~RF_ACTIVE,
> >  	    child);
> >      if (res == NULL) {
> 
> I think I'll test this to see if it helps my via 8235 ata survive boot.

I wonder if in fact the algorithm shouldn't be changed to always try to alloc 
the resource from the parent first, and only fall back to the sys_resource 
rmans if that fails?  In theory any resource requests that should be done via 
sys_resource will fail the request in the parent, yes?

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200704251356.35785.jhb>