1. 18 10月, 2010 4 次提交
  2. 16 10月, 2010 6 次提交
    • N
      PCI: add quirk for non-symmetric-mode irq routing to versions 0 and 4 of the MCP55 northbridge · 66db60ea
      Neil Horman 提交于
      A long time ago I worked on a RHEL5 bug in which kdump hung during boot
      on a set of systems.  The systems hung because they never received timer
      interrupts during calibrate_delay.  These systems also all had Opteron
      processors on a hypertransport bus, bridged to a pci bus via an Nvidia
      MCP55 northbridge chip.  After much wrangling I managed to learn from
      Nvidia that they have an undocumented register in some versions of that
      chip which control how legacy interrupts are send to the cpu complex
      when the ioapic isn't active.  Nvidia defaults this register to only
      send legacy interrupts to the BSP, so if kdump happens to boot on an AP,
      we never get timer interrupts and boom.  I had initially used this quirk
      as a workaround, with my intent being to move apic initalization to an
      earlier point in the boot process, so the setting of the register would
      be irrelevant.  Given the work involved in doing that however, the
      fragile nature of the apic initalization code, and the fact that, over
      the 2 years since we found this bug, the MCP55 is the only chip which
      seems to have this issue, I've figure at this point its likely safer to
      just carry the quirk around.  By setting the referenced bits in this
      hidden register, interrupts will be broadcast to all cpus when the
      ioapic isn't active on the above described systems.
      Acked-by: NSimon Horman <horms@verge.net.au>
      Acked-by: NVivek Goyal <vgoyal@redhat.com>
      Signed-off-by: NNeil Horman <nhorman@tuxdriver.com>
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      66db60ea
    • R
      PCI/PCIe/AER: Disable native AER service if BIOS has precedence · b22c3d82
      Rafael J. Wysocki 提交于
      There is a design issue related to PCIe AER and _OSC that the BIOS
      may be asked to grant control of the AER service even if some
      Hardware Error Source Table (HEST) entries contain information
      meaning that the BIOS really should control it.  Namely,
      pcie_port_acpi_setup() calls pcie_aer_get_firmware_first() that
      determines whether or not the AER service should be controlled by
      the BIOS on the basis of the HEST information for the given PCIe
      port.  The BIOS is asked to grant control of the AER service for
      a PCIe Root Complex if pcie_aer_get_firmware_first() returns 'false'
      for at least one root port in that complex, even if all of the other
      root ports' HEST entries have the FIRMWARE_FIRST flag set (and none
      of them has the GLOBAL flag set).  However, if the AER service is
      controlled by the kernel, that may interfere with the BIOS' handling
      of the error sources having the FIRMWARE_FIRST flag.  Moreover,
      there may be PCIe endpoints that have the FIRMWARE_FIRST flag set in
      HEST and are attached to the root ports in question, in which case it
      also may be unsafe to ask the BIOS for control of the AER service.
      
      For this reason, introduce a function checking if there's at least
      one PCIe-related HEST entry with the FIRMWARE_FIRST flag set and
      disable the native AER service altogether if this function returns
      'true'.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      b22c3d82
    • T
      PCI hotplug: ibmphp-hpc: semaphore cleanup · 5a37f138
      Thomas Gleixner 提交于
      Get rid of init_MUTEX[_LOCKED]() and use sema_init() instead.
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      5a37f138
    • B
      PCI: aerdrv: fix uninitialized variable warning · 50c1126e
      Bill Pemberton 提交于
      quiet the warning about use of uninitialized e_src in
      aer_isr()  e_src is initialized by get_e_source()
      Signed-off-by: NBill Pemberton <wfp5p@virginia.edu>
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      50c1126e
    • A
      PCI: kill BKL in /proc/pci · 991f7395
      Arnd Bergmann 提交于
      All operations in the pci procfs ioctl functions are
      atomic, so no lock is needed here.
      
      Also add a compat_ioctl method, since all the commands
      are compatible in 32 bit mode.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Cc: Jesse Barnes <jbarnes@virtuousgeek.org>
      Cc: Tejun Heo <tj@kernel.org>
      Cc: linux-pci@vger.kernel.org
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      991f7395
    • J
      PCI: Adjust confusing if indentation in pcie_get_readrq · 93e75fab
      Julia Lawall 提交于
      Indent the branch of an if.
      
      The semantic match that finds this problem is as follows:
      (http://coccinelle.lip6.fr/)
      
      // <smpl>
      @r disable braces4@
      position p1,p2;
      statement S1,S2;
      @@
      
      (
      if (...) { ... }
      |
      if (...) S1@p1 S2@p2
      )
      
      @script:python@
      p1 << r.p1;
      p2 << r.p2;
      @@
      
      if (p1[0].column == p2[0].column):
        cocci.print_main("branch",p1)
        cocci.print_secs("after",p2)
      // </smpl>
      Signed-off-by: NJulia Lawall <julia@diku.dk>
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      93e75fab
  3. 14 10月, 2010 3 次提交
    • D
      ioat2: fix performance regression · c50a898f
      Dan Williams 提交于
      Commit 07934481 "DMAENGINE: generic channel status v2" changed the interface for
      how dma channel progress is retrieved.  It inadvertently exported an internal
      helper function ioat_tx_status() instead of ioat_dma_tx_status().  The latter
      polls the hardware to get the latest completion state, while the helper just
      evaluates the current state without touching hardware.  The effect is that we
      end up waiting for completion timeouts or descriptor allocation errors before
      the completion state is updated.
      
      iperf (before fix):
      [SUM]  0.0-41.3 sec   364 MBytes  73.9 Mbits/sec
      
      iperf (after fix):
      [SUM]  0.0- 4.5 sec   499 MBytes   940 Mbits/sec
      
      This is a regression starting with 2.6.35.
      
      Cc: <stable@kernel.org>
      Cc: Dave Jiang <dave.jiang@intel.com>
      Cc: Jesse Brandeburg <jesse.brandeburg@intel.com>
      Cc: Linus Walleij <linus.walleij@stericsson.com>
      Cc: Maciej Sosnowski <maciej.sosnowski@intel.com>
      Reported-by: NRichard Scobie <richard@sauce.co.nz>
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      c50a898f
    • B
      ehea: Fix a checksum issue on the receive path · 71085ce8
      Breno Leitao 提交于
      Currently we set all skbs with CHECKSUM_UNNECESSARY, even
      those whose protocol we don't know. This patch just
      add the CHECKSUM_COMPLETE tag for non TCP/UDP packets.
      Reported-by: NEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: NBreno Leitao <leitao@linux.vnet.ibm.com>
      Signed-off-by: NJay Vosburgh <fubar@us.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      71085ce8
    • G
      net: allow FEC driver to use fixed PHY support · 6fcc040f
      Greg Ungerer 提交于
      At least one board using the FEC driver does not have a conventional
      PHY attached to it, it is directly connected to a somewhat simple
      ethernet switch (the board is the SnapGear/LITE, and the attached
      4-port ethernet switch is a RealTek RTL8305). This switch does not
      present the usual register interface of a PHY, it presents nothing.
      So a PHY scan will find nothing - it finds ID's of 0 for each PHY
      on the attached MII bus.
      
      After the FEC driver was changed to use phylib for supporting PHYs
      it no longer works on this particular board/switch setup.
      
      Add code support to use a fixed phy if no PHY is found on the MII bus.
      This is based on the way the cpmac.c driver solved this same problem.
      Signed-off-by: NGreg Ungerer <gerg@uclinux.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6fcc040f
  4. 12 10月, 2010 10 次提交
  5. 11 10月, 2010 2 次提交
  6. 10 10月, 2010 3 次提交
  7. 09 10月, 2010 2 次提交
  8. 08 10月, 2010 1 次提交
  9. 07 10月, 2010 5 次提交
  10. 06 10月, 2010 4 次提交
    • N
      bonding: fix WARN_ON when writing to bond_master sysfs file · 27e6f065
      Neil Horman 提交于
      Fix a WARN_ON failure in bond_masters sysfs file
      
      Got a report of this warning recently
      
      bonding: bond0 is being created...
      ------------[ cut here ]------------
      WARNING: at fs/proc/generic.c:590 proc_register+0x14d/0x185()
      Hardware name: ProLiant BL465c G1
      proc_dir_entry 'bonding/bond0' already registered
      Modules linked in: bonding ipv6 tg3 bnx2 shpchp amd64_edac_mod edac_core
      ipmi_si
      ipmi_msghandler serio_raw i2c_piix4 k8temp edac_mce_amd hpwdt microcode hpsa
      cc
      iss radeon ttm drm_kms_helper drm i2c_algo_bit i2c_core [last unloaded:
      scsi_wai
      t_scan]
      Pid: 935, comm: ifup-eth Not tainted 2.6.33.5-124.fc13.x86_64 #1
      Call Trace:
      [<ffffffff8104b54c>] warn_slowpath_common+0x77/0x8f
      [<ffffffff8104b5b1>] warn_slowpath_fmt+0x3c/0x3e
      [<ffffffff8114bf0b>] proc_register+0x14d/0x185
      [<ffffffff8114c20c>] proc_create_data+0x87/0xa1
      [<ffffffffa0211e9b>] bond_create_proc_entry+0x55/0x95 [bonding]
      [<ffffffffa0215e5d>] bond_init+0x95/0xd0 [bonding]
      [<ffffffff8138cd97>] register_netdevice+0xdd/0x29e
      [<ffffffffa021240b>] bond_create+0x8e/0xb8 [bonding]
      [<ffffffffa021c4be>] bonding_store_bonds+0xb3/0x1c1 [bonding]
      [<ffffffff812aec85>] class_attr_store+0x27/0x29
      [<ffffffff8115423d>] sysfs_write_file+0x10f/0x14b
      [<ffffffff81101acf>] vfs_write+0xa9/0x106
      [<ffffffff81101be2>] sys_write+0x45/0x69
      [<ffffffff81009b02>] system_call_fastpath+0x16/0x1b
      ---[ end trace a677c3f7f8b16b1e ]---
      bonding: Bond creation failed.
      
      It happens because a user space writer to bond_master can try to
      register an already existing bond interface name.  Fix it by teaching
      bond_create to check for the existance of devices with that name first
      in cases where a non-NULL name parameter has been passed in
      Signed-off-by: NNeil Horman <nhorman@tuxdriver.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      27e6f065
    • T
      drm/ttm: Fix two race conditions + fix busy codepaths · 1df6a2eb
      Thomas Hellstrom 提交于
      This fixes a race pointed out by Dave Airlie where we don't take a buffer
      object about to be destroyed off the LRU lists properly. It also fixes a rare
      case where a buffer object could be destroyed in the middle of an
      accelerated eviction.
      
      The patch also adds a utility function that can be used to prematurely
      release GPU memory space usage of an object waiting to be destroyed.
      For example during eviction or swapout.
      
      The above mentioned commit didn't queue the buffer on the delayed destroy
      list under some rare circumstances. It also didn't completely honor the
      remove_all parameter.
      
      Fixes:
      https://bugzilla.redhat.com/show_bug.cgi?id=615505
      http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=591061Signed-off-by: NThomas Hellstrom <thellstrom@vmware.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      1df6a2eb
    • S
      skge: add quirk to limit DMA · 392bd0cb
      Stanislaw Gruszka 提交于
      Skge devices installed on some Gigabyte motherboards are not able to
      perform 64 dma correctly due to board PCI implementation, so limit
      DMA to 32bit if such boards are detected.
      
      Bug was reported here:
      https://bugzilla.redhat.com/show_bug.cgi?id=447489Signed-off-by: NStanislaw Gruszka <sgruszka@redhat.com>
      Tested-by: NLuya Tshimbalanga <luya@fedoraproject.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      392bd0cb
    • M
      IPS driver: Fix limit clamping when reducing CPU power · d24a9da5
      Matthew Garrett 提交于
      Values here are in internal units rather than Watts, so we shouldn't
      perform any conversion.
      Signed-off-by: NMatthew Garrett <mjg@redhat.com>
      d24a9da5