cvs commit: src/sys/dev/acpica acpi.c

Warner Losh imp at
Fri Jun 3 13:12:12 PDT 2005

imp         2005-06-03 20:12:12 UTC

  FreeBSD src repository

  Modified files:
    sys/dev/acpica       acpi.c 
  In newbus land, ivars can only be accessed for direct child, or when
  the driver has unholy private knowledge of its great-*cgrandchildren.
  The ACPI allocation routine lacked such knowledge when it tried to do
  a default allocation for all descendants, rather than just its
  immeidate children, so would access grandchild's ivar in an unsafe
  way.  This could lead to a panic when devices were present which had
  no addresses setup by the BIOS, but which were later allocated in a
  lazy manner via pci_alloc_map.  As such, only do the default
  allocation adjustments for immediate children.  The manner that
  acpi_sysres_find accesses the resource list, used later in
  acpi_alloc_resource, is safe and proper so no additional test is
  needed there.
  This fixes a panic when probing an disabled ata controller on some
  newer intel blades.
  Reported by: dwhite
  Revision  Changes    Path
  1.214     +1 -1      src/sys/dev/acpica/acpi.c

More information about the cvs-src mailing list