1. 14 Oct, 2008 2 commits
    • Benjamin Herrenschmidt's avatar
      powerpc/pci: Improve detection of unassigned bridge resources · b5561511
      Benjamin Herrenschmidt authored
      When the powerpc PCI layer is not configured to re-assign everything,
      it currently fails to detect that a PCI to PCI bridge has been left
      unassigned by the firmware and tries to allocate resource for the
      default window values in the bridge (0...X) (with the notable exception
      of a hack we have in there that detects some Apple firmware unassigned
      bridge resources).
      
      This results in resource allocation failures, which are generally
      fixed up later on but it causes scary warnings in the logs and we
      have seen the fixup code fall over in some circumstances (a different
      issue to fix as well).
      
      This code improves that by providing a more complete & useful function
      to intuit that a bridge was left unassigned by the firmware, and thus
      force a full re-allocation by the PCI code without trying to allocate
      the existing useless resources first.
      
      The algorithm we use basically considers unassigned a window that
      starts at 0 (PCI address) if the corresponding address space enable
      bit is not set. In addition, for memory space, it considers such a
      resource unassigned also if the host bridge isn't configured to
      forward cycles to address 0 (ie, the resource basically overlaps
      main memory).
      
      This fixes a range of problems with things like Bare-Metal support
      on pSeries machines, or attempt to use partial firmware PCI setup.
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      b5561511
    • Christian Borntraeger's avatar
      hvc_console: Fix free_irq in spinlocked section · eef2622a
      Christian Borntraeger authored
          commit 611e097d
          Author: Christian Borntraeger <borntraeger@de.ibm.com>
          hvc_console: rework setup to replace irq functions with callbacks
          introduced a spinlock recursion problem. The notifier_del is
          called with a lock held, and in turns calls free_irq which then
          complains when manipulating procfs. This fixes it by moving the
          call to the notifier to outside of the locked section.
      
      Signed-off-by: Christian Borntraeger<borntraeger@de.ibm.com>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      eef2622a
  2. 13 Oct, 2008 35 commits
  3. 12 Oct, 2008 3 commits