1. 02 May, 2007 8 commits
    • Ingo Molnar's avatar
      [PATCH] x86-64: remove clustered APIC mode · 424df390
      Ingo Molnar authored
      Remove now unused clustered APIC mode code.
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Cc: Suresh Siddha <suresh.b.siddha@intel.com>
      Cc: Andi Kleen <ak@suse.de>
      Cc: "Li, Shaohua" <shaohua.li@intel.com>
      Cc: "Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      424df390
    • Ingo Molnar's avatar
      [PATCH] x86-64: always use physical delivery mode on > 8 CPUs · 07c7c474
      Ingo Molnar authored
      Remove clustered APIC mode.  There's little point in the use of clustered APIC
      mode, broadcasting is limited to within the cluster only, and chipsets have
      bugs in this area as well.  So default to physical APIC mode when the CPU
      count is large, and default to logical APIC mode when the CPU count is 8 or
      smaller.
      
      (this patch only removes the use of genapic_cluster and cleans up the
      resulting genapic.c file - removal of all remaining traces of clustered
      mode will be done by another patch.)
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Cc: Suresh Siddha <suresh.b.siddha@intel.com>
      Cc: Andi Kleen <ak@suse.de>
      Cc: "Li, Shaohua" <shaohua.li@intel.com>
      Cc: "Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      07c7c474
    • Ingo Molnar's avatar
      [PATCH] x86-64: optimize & fix APIC mode setup · f18d397e
      Ingo Molnar authored
      Fix a couple of inconsistencies/problems I found while reviewing the x86_64
      genapic code (when I was chasing mysterious eth0 timeouts that would only
      trigger if CPU_HOTPLUG is enabled):
      
       - AMD systems defaulted to the slower flat-physical mode instead
         of the flat-logical mode. The only restriction on AMD systems
         is that they should not use clustered APIC mode.
      
       - removed the CPU hotplug hacks, switching the default for small
         systems back from phys-flat to logical-flat. The switching to logical
         flat mode on small systems fixed sporadic ethernet driver timeouts i
         was getting on a dual-core Athlon64 system:
      
          NETDEV WATCHDOG: eth0: transmit timed out
          eth0: Transmit timeout, status 0c 0005 c07f media 80.
          eth0: Tx queue start entry 32  dirty entry 28.
          eth0:  Tx descriptor 0 is 0008a04a. (queue head)
          eth0:  Tx descriptor 1 is 0008a04a.
          eth0:  Tx descriptor 2 is 0008a04a.
          eth0:  Tx descriptor 3 is 0008a04a.
          eth0: link up, 100Mbps, full-duplex, lpa 0xC5E1
      
       - The use of '<= 8' was a bug by itself (the valid APIC ids
         for logical flat mode go from 0 to 7, not 0 to 8). The new logic
         is to use logical flat mode on both AMD and Intel systems, and
         to only switch to physical mode when logical mode cannot be used.
         If CPU hotplug is racy wrt. APIC shutdown then CPU hotplug needs
         fixing, not the whole IRQ system be made inconsistent and slowed
         down.
      
       - minor cleanups: simplified some code constructs
      
      build & booted on a couple of AMD and Intel SMP systems.
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Cc: Suresh Siddha <suresh.b.siddha@intel.com>
      Cc: Andi Kleen <ak@suse.de>
      Cc: "Li, Shaohua" <shaohua.li@intel.com>
      Cc: "Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      f18d397e
    • Andrew Morton's avatar
      [PATCH] x86: revert x86_64-mm-fix-the-irqbalance-quirk-for-e7320-e7520-e7525 · a86f34b4
      Andrew Morton authored
      Obsoleted by Ingo's genapic stuff.
      
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Suresh Siddha <suresh.b.siddha@intel.com>
      Cc: Andi Kleen <ak@suse.de>
      Cc: "Li, Shaohua" <shaohua.li@intel.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      a86f34b4
    • Andrew Morton's avatar
      [PATCH] x86-64: revert x86_64-mm-add-genapic_force · 3dc68d9b
      Andrew Morton authored
      This is obsoleted by new Ingo genapic patches.
      
      Cc: Suresh Siddha <suresh.b.siddha@intel.com>
      Cc: Andi Kleen <ak@suse.de>
      Cc: "Li, Shaohua" <shaohua.li@intel.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      3dc68d9b
    • Andrew Morton's avatar
      [PATCH] i386: revert i386-fix-the-verify_quirk_intel_irqbalance · fb27145d
      Andrew Morton authored
      This is unneeded with Ingo's genapic rework.
      
      Cc: Suresh Siddha <suresh.b.siddha@intel.com>
      Cc: Andi Kleen <ak@suse.de>
      Cc: Ingo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      fb27145d
    • Andi Kleen's avatar
      [PATCH] i386: Update defconfig · bdd0dc52
      Andi Kleen authored
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      bdd0dc52
    • Andi Kleen's avatar
      [PATCH] x86-64: Update defconfig · 2ca8c1a1
      Andi Kleen authored
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      2ca8c1a1
  2. 01 May, 2007 1 commit
    • Linus Torvalds's avatar
      libata: honour host controllers that want just one host · dc87c398
      Linus Torvalds authored
      The Marvell IDE interface on my machine would hit a BUG_ON() in
      lib/iomem.c because it was calling ata_pci_init_one() specifying just a
      single port on the host, but that would actually end up trying to
      initialize two ports, the second one with bogus information.
      
      This fixes "ata_pci_init_one()" so that it actually passes down the
      n_ports variable that it got from the low-level driver to the host
      allocation routine ("ata_host_alloc_pinfo()"), which results in the ATA
      layer actually having the correct port number information.
      
      And in order to make it all work, I also needed to fix a few places that
      had incorrectly hard-coded the fact that a host always had exactly two
      ports (both ata_pci_init_bmdma() and ata_request_legacy_irqs() would
      just always iterate over both ports).
      Acked-by: default avatarJeff Garzik <jeff@garzik.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      dc87c398
  3. 30 Apr, 2007 31 commits