1. 04 10月, 2006 1 次提交
    • E
      [PATCH] genirq: msi: simplify the msi irq limit policy · 92db6d10
      Eric W. Biederman 提交于
      Currently we attempt to predict how many irqs we will be able to allocate with
      msi using pci_vector_resources and some complicated accounting, and then we
      only allow each device as many irqs as we think are available on average.
      
      Only the s2io driver even takes advantage of this feature all other drivers
      have a fixed number of irqs they need and bail if they can't get them.
      
      pci_vector_resources is inaccurate if anyone ever frees an irq.  The whole
      implmentation is racy.  The current irq limit policy does not appear to make
      sense with current drivers.  So I have simplified things.  We can revisit this
      we we need a more sophisticated policy.
      Signed-off-by: NEric W. Biederman <ebiederm@xmission.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Rajesh Shah <rajesh.shah@intel.com>
      Cc: Andi Kleen <ak@muc.de>
      Cc: "Protasevich, Natalie" <Natalie.Protasevich@UNISYS.com>
      Cc: "Luck, Tony" <tony.luck@intel.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      92db6d10
  2. 27 9月, 2006 1 次提交
  3. 11 7月, 2006 1 次提交
    • L
      [PATCH] make valid_mmap_phys_addr_range() take a pfn · 06c67bef
      Lennert Buytenhek 提交于
      Newer ARMs have a 40 bit physical address space, but mapping physical
      memory above 4G needs a special page table format which we (currently?) do
      not use for userspace mappings, so what happens instead is that mapping an
      address >= 4G will happily discard the upper bits and wrap.
      
      There is a valid_mmap_phys_addr_range() arch hook where we could check for
      >= 4G addresses and deny the mapping, but this hook takes an unsigned long
      address:
      
      	static inline int valid_mmap_phys_addr_range(unsigned long addr, size_t size);
      
      And drivers/char/mem.c:mmap_mem() calls it like this:
      
      	static int mmap_mem(struct file * file, struct vm_area_struct * vma)
      	{
      		size_t size = vma->vm_end - vma->vm_start;
      
      		if (!valid_mmap_phys_addr_range(vma->vm_pgoff << PAGE_SHIFT, size))
      
      So that's not much help either.
      
      This patch makes the hook take a pfn instead of a phys address.
      Signed-off-by: NLennert Buytenhek <buytenh@wantstofly.org>
      Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
      Cc: "Luck, Tony" <tony.luck@intel.com>
      Cc: Russell King <rmk@arm.linux.org.uk>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      06c67bef
  4. 01 7月, 2006 1 次提交
  5. 28 6月, 2006 1 次提交
  6. 26 6月, 2006 1 次提交
  7. 23 6月, 2006 1 次提交
  8. 09 5月, 2006 1 次提交
    • B
      [IA64] rework memory attribute aliasing · 32e62c63
      Bjorn Helgaas 提交于
      This closes a couple holes in our attribute aliasing avoidance scheme:
      
        - The current kernel fails mmaps of some /dev/mem MMIO regions because
          they don't appear in the EFI memory map.  This keeps X from working
          on the Intel Tiger box.
      
        - The current kernel allows UC mmap of the 0-1MB region of
          /sys/.../legacy_mem even when the chipset doesn't support UC
          access.  This causes an MCA when starting X on HP rx7620 and rx8620
          boxes in the default configuration.
      
      There's more detail in the Documentation/ia64/aliasing.txt file this
      adds, but the general idea is that if a region might be covered by
      a granule-sized kernel identity mapping, any access via /dev/mem or
      mmap must use the same attribute as the identity mapping.
      
      Otherwise, we fall back to using an attribute that is supported
      according to the EFI memory map, or to using UC if the EFI memory
      map doesn't mention the region.
      Signed-off-by: NBjorn Helgaas <bjorn.helgaas@hp.com>
      Signed-off-by: NTony Luck <tony.luck@intel.com>
      32e62c63
  9. 21 4月, 2006 1 次提交
    • S
      [IA64] eliminate compile time warnings · a72391e4
      Satoru Takeuchi 提交于
      This patch removes following compile time warnings:
      
      drivers/pci/pci-sysfs.c: In function `pci_read_legacy_io':
      drivers/pci/pci-sysfs.c:257: warning: implicit declaration of function `ia64_pci_legacy_read'
      drivers/pci/pci-sysfs.c: In function `pci_write_legacy_io':
      drivers/pci/pci-sysfs.c:280: warning: implicit declaration of function `ia64_pci_legacy_write'
      
      It also fixes wrong definition of ia64_pci_legacy_write (type of `bus' is not
      `pci_dev', but `pci_bus').
      Signed-Off-By: NSatoru Takeuchi <takeuchi_satoru@jp.fujitsu.com>
      Signed-off-by: NTony Luck <tony.luck@intel.com>
      a72391e4
  10. 28 2月, 2006 1 次提交
  11. 17 1月, 2006 1 次提交
  12. 04 1月, 2006 1 次提交
  13. 10 12月, 2005 2 次提交
    • B
      [ACPI] ACPICA 20051021 · 0897831b
      Bob Moore 提交于
      Implemented support for the EM64T and other x86_64
      processors. This essentially entails recognizing
      that these processors support non-aligned memory
      transfers. Previously, all 64-bit processors were assumed
      to lack hardware support for non-aligned transfers.
      
      Completed conversion of the Resource Manager to nearly
      full table-driven operation. Specifically, the resource
      conversion code (convert AML to internal format and the
      reverse) and the debug code to dump internal resource
      descriptors are fully table-driven, reducing code and data
      size and improving maintainability.
      
      The OSL interfaces for Acquire and Release Lock now use a
      64-bit flag word on 64-bit processors instead of a fixed
      32-bit word. (Alexey Starikovskiy)
      
      Implemented support within the resource conversion code
      for the Type-Specific byte within the various ACPI 3.0
      *WordSpace macros.
      
      Fixed some issues within the resource conversion code for
      the type-specific flags for both Memory and I/O address
      resource descriptors. For Memory, implemented support
      for the MTP and TTP flags. For I/O, split the TRS and TTP
      flags into two separate fields.
      Signed-off-by: NBob Moore <robert.moore@intel.com>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      0897831b
    • B
      [ACPI] ACPICA 20050930 · 50eca3eb
      Bob Moore 提交于
      Completed a major overhaul of the Resource Manager code -
      specifically, optimizations in the area of the AML/internal
      resource conversion code. The code has been optimized to
      simplify and eliminate duplicated code, CPU stack use has
      been decreased by optimizing function parameters and local
      variables, and naming conventions across the manager have
      been standardized for clarity and ease of maintenance (this
      includes function, parameter, variable, and struct/typedef
      names.)
      
      All Resource Manager dispatch and information tables have
      been moved to a single location for clarity and ease of
      maintenance. One new file was created, named "rsinfo.c".
      
      The ACPI return macros (return_ACPI_STATUS, etc.) have
      been modified to guarantee that the argument is
      not evaluated twice, making them less prone to macro
      side-effects. However, since there exists the possibility
      of additional stack use if a particular compiler cannot
      optimize them (such as in the debug generation case),
      the original macros are optionally available.  Note that
      some invocations of the return_VALUE macro may now cause
      size mismatch warnings; the return_UINT8 and return_UINT32
      macros are provided to eliminate these. (From Randy Dunlap)
      
      Implemented a new mechanism to enable debug tracing for
      individual control methods. A new external interface,
      acpi_debug_trace(), is provided to enable this mechanism. The
      intent is to allow the host OS to easily enable and disable
      tracing for problematic control methods. This interface
      can be easily exposed to a user or debugger interface if
      desired. See the file psxface.c for details.
      
      acpi_ut_callocate() will now return a valid pointer if a
      length of zero is specified - a length of one is used
      and a warning is issued. This matches the behavior of
      acpi_ut_allocate().
      Signed-off-by: NBob Moore <robert.moore@intel.com>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      50eca3eb
  14. 09 11月, 2005 1 次提交
    • B
      [IA64] add the MMIO regions that are translated to I/O port space to /proc/iomem · 4f41d5a4
      Bjorn Helgaas 提交于
      ia64 translates normal loads and stores to special MMIO regions into I/O port
      accesses.  Reserve these special MMIO regions in /proc/iomem.
      
      Sample /proc/iomem:
          f8100000000-f81003fffff : PCI Bus 0000:80 I/O Ports 00000000-00000fff
          f8100400000-f81007fffff : PCI Bus 0000:8e I/O Ports 00001000-00001fff
          f8100800000-f8100ffffff : PCI Bus 0000:9c I/O Ports 00002000-00003fff
          f8101000000-f81017fffff : PCI Bus 0000:aa I/O Ports 00004000-00005fff
      
      and corresponding /proc/ioports:
          00000000-00000fff : PCI Bus 0000:80
          00001000-00001fff : PCI Bus 0000:8e
          00002000-00003fff : PCI Bus 0000:9c
          00004000-00005fff : PCI Bus 0000:aa
      Signed-off-by: NBjorn Helgaas <bjorn.helgaas@hp.com>
      Signed-off-by: NTony Luck <tony.luck@intel.com>
      4f41d5a4
  15. 24 9月, 2005 1 次提交
  16. 20 9月, 2005 1 次提交
  17. 08 9月, 2005 1 次提交
  18. 25 8月, 2005 2 次提交
  19. 13 7月, 2005 1 次提交
    • C
      [IA64] pcibus_to_node implementation for IA64 · 514604c6
      Christoph Lameter 提交于
      pcibus_to_node provides a way for the Linux kernel to identify to which
      node a certain pcibus connects to. Allocations of control structures
      for devices can then be made on the node where the pci bus is located
      to allow local access during interrupt and other device manipulation.
      
      This patch provides a new "node" field in the the pci_controller
      structure. The node field will be set based on ACPI information (thanks
      to Alex Williamson  <alex.williamson@hp.com for that piece).
      Signed-off-by: NChristoph Lameter <clameter@sgi.com>
      Signed-off-by: NTony Luck <tony.luck@intel.com>
      514604c6
  20. 28 6月, 2005 4 次提交
  21. 22 6月, 2005 1 次提交
  22. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4