1. 06 7月, 2009 7 次提交
  2. 05 7月, 2009 2 次提交
  3. 04 7月, 2009 1 次提交
    • H
      cciss: Ignore stale commands after reboot · b59e64d0
      Hannes Reinecke 提交于
      When doing an unexpected shutdown like kexec the cciss
      firmware might still have some commands in flight, which
      it is trying to complete.
      The driver is doing it's best on resetting the HBA,
      but sadly there's a firmware issue causing the firmware
      _not_ to abort or drop old commands.
      So the firmware will send us commands which we haven't
      accounted for, causing the driver to panic.
      
      With this patch we're just ignoring these commands as
      there is nothing we could be doing with them anyway.
      Signed-off-by: NHannes Reinecke <hare@suse.de>
      Acked-by: NMike Miller <mike.miller@hp.com>
      Signed-off-by: NJens Axboe <axboe@carl.(none)>
      b59e64d0
  4. 03 7月, 2009 12 次提交
  5. 02 7月, 2009 8 次提交
  6. 01 7月, 2009 10 次提交
    • J
      block: get rid of queue-private command filter · 018e0446
      Jens Axboe 提交于
      The initial patches to support this through sysfs export were broken
      and have been if 0'ed out in any release. So lets just kill the code
      and reclaim some space in struct request_queue, if anyone would later
      like to fixup the sysfs bits, the git history can easily restore
      the removed bits.
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      018e0446
    • M
      block: Create bip slabs with embedded integrity vectors · 7878cba9
      Martin K. Petersen 提交于
      This patch restores stacking ability to the block layer integrity
      infrastructure by creating a set of dedicated bip slabs.  Each bip slab
      has an embedded bio_vec array at the end.  This cuts down on memory
      allocations and also simplifies the code compared to the original bvec
      version.  Only the largest bip slab is backed by a mempool.  The pool is
      contained in the bio_set so stacking drivers can ensure forward
      progress.
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      Signed-off-by: NJens Axboe <axboe@carl.(none)>
      7878cba9
    • N
      md: use interruptible wait when duration is controlled by userspace. · e62e58a5
      NeilBrown 提交于
      User space can set various limits on an md array so that resync waits
      when it gets to a certain point, or so that I/O is blocked for a short
      while.
      When md is waiting against one of these limit, it should use an
      interruptible wait so as not to add to the load average, and so are
      not to trigger a warning if the wait goes on for too long.
      Signed-off-by: NNeilBrown <neilb@suse.de>
      e62e58a5
    • N
      md/raid5: suspend shouldn't affect read requests. · a5c308d4
      NeilBrown 提交于
      md allows write to regions on an array to be suspended temporarily.
      This allows user-space to participate is aspects of reshape.
      In particular, data can be copied with not risk of a race.
      We should not be blocking read requests though, so don't.
      
      Cc: stable@kernel.org
      Signed-off-by: NNeilBrown <neilb@suse.de>
      a5c308d4
    • A
      igb: return PCI_ERS_RESULT_DISCONNECT on permanent error · 59ed6eec
      Alexander Duyck 提交于
      PCI drivers that implement the io_error_detected callback should return
      PCI_ERS_RESULT_DISCONNECT if the state passed in is
      pci_channel_io_perm_failure.  This patch fixes the issue for igb.
      Signed-off-by: NAlexander Duyck <alexander.h.duyck@intel.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      59ed6eec
    • M
      e1000e: io_error_detected callback should return PCI_ERS_RESULT_DISCONNECT · c93b5a76
      Mike Mason 提交于
      on permanent failure
      
      PCI drivers that implement the io_error_detected callback
      should return PCI_ERS_RESULT_DISCONNECT if the state
      passed in is pci_channel_io_perm_failure.  This state is not
      checked in many of the network drivers.
      
      This patch fixes the omission in the e1000e driver.
      Signed-off-by: NMike Mason <mmlnx@us.ibm.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c93b5a76
    • A
      e1000: return PCI_ERS_RESULT_DISCONNECT on permanent error · eab63302
      Andre Detsch 提交于
      PCI drivers that implement the io_error_detected callback
      should return PCI_ERS_RESULT_DISCONNECT if the state
      passed in is pci_channel_io_perm_failure.  This state is
      not checked in many of the network drivers.
      
      The patch fixes the omission in the e1000 driver.
      
      Based on Mike Mason's similar patch for e1000e.
      Signed-off-by: NAndre Detsch <adetsch@br.ibm.com>
      CC: Mike Mason <mmlnx@us.ibm.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      eab63302
    • J
      e1000: fix unmap bug · 679be3ba
      Jesse Brandeburg 提交于
      as reported by kerneloops.org
      
      [  121.781161] ------------[ cut here ]------------
      [  121.781171] WARNING: at lib/dma-debug.c:793 check_unmap+0x14e/0x577()
      [  121.781173] Hardware name: S5520HC
      [  121.781177] e1000 0000:0a:00.0: DMA-API: device driver tries to free DMA
      memory it has not allocated [device address=0x00000001d688b0fa] [size=1522
      bytes]
      [  121.781180] Modules linked in: e1000 mdio  dca [last unloaded: ixgbe]
      [  121.781187] Pid: 4793, comm: bash Tainted: P 2.6.30-master-06161113 #3
      [  121.781190] Call Trace:
      [  121.781195]  [<ffffffff8123056f>] ? check_unmap+0x14e/0x577
      [  121.781201]  [<ffffffff81057a19>] warn_slowpath_common+0x77/0x8f
      [  121.781205]  [<ffffffff81057ae1>] warn_slowpath_fmt+0x9f/0xa1
      [  121.781212]  [<ffffffff81477ce2>] ? _spin_lock_irqsave+0x3f/0x49
      [  121.781216]  [<ffffffff8122fa97>] ? get_hash_bucket+0x28/0x33
      [  121.781220]  [<ffffffff8123056f>] check_unmap+0x14e/0x577
      [  121.781225]  [<ffffffff810e4f48>] ? check_bytes_and_report+0x38/0xcb
      [  121.781230]  [<ffffffff81230bbf>] debug_dma_unmap_page+0x80/0x92
      [  121.781234]  [<ffffffff8122e549>] ? unmap_single+0x1a/0x4e
      [  121.781239]  [<ffffffff813901e1>] ? __kfree_skb+0x74/0x78
      [  121.781250]  [<ffffffffa00662ef>] pci_unmap_single+0x64/0x6d [e1000]
      [  121.781259]  [<ffffffffa0066344>] e1000_clean_rx_ring+0x4c/0xbf [e1000]
      [  121.781268]  [<ffffffffa00663df>] e1000_clean_all_rx_rings+0x28/0x36 [e1000]
      [  121.781277]  [<ffffffffa0067464>] e1000_down+0x138/0x141 [e1000]
      [  121.781286]  [<ffffffffa00681c2>] __e1000_shutdown+0x6b/0x198 [e1000]
      [  121.781296]  [<ffffffffa0068405>] e1000_suspend+0x17/0x50 [e1000]
      [  121.781301]  [<ffffffff81237665>] pci_legacy_suspend+0x3b/0xbe
      [  121.781305]  [<ffffffff81237bc6>] pci_pm_suspend+0x3e/0xf1
      [  121.781310]  [<ffffffff812eaf1c>] pm_op+0x57/0xde
      [  121.781314]  [<ffffffff812eb444>] dpm_suspend_start+0x31e/0x470
      [  121.781319]  [<ffffffff810877da>] suspend_devices_and_enter+0x3e/0x1a2
      [  121.781323]  [<ffffffff81087a0f>] enter_state+0xd1/0x127
      [  121.781327]  [<ffffffff8108717a>] state_store+0xa7/0xc9
      [  121.781332]  [<ffffffff81221843>] kobj_attr_store+0x17/0x19
      [  121.781336]  [<ffffffff8113c01e>] sysfs_write_file+0xe5/0x121
      [  121.781341]  [<ffffffff810ed165>] vfs_write+0xab/0x105
      [  121.781344]  [<ffffffff810ed279>] sys_write+0x47/0x6d
      [  121.781349]  [<ffffffff81027aab>] system_call_fastpath+0x16/0x1b
      [  121.781352] ---[ end trace 97bacaaac2ed7786 ]---
      
      Fix is to correctly zero out internal ->dma value when unmapping
      and make sure never to unmap unless there specifically was a mapping done.
      Signed-off-by: NJesse Brandeburg <jesse.brandeburg@intel.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      679be3ba
    • J
      igb: fix unmap length bug · 91615f76
      Jesse Brandeburg 提交于
      driver was mixing NET_IP_ALIGN count bytes in map/unmap calls
      unevenly. Only map the bytes that the hardware might dma into
      
      also fix unmap related bug where ->dma was not being cleared
      after unmap
      Signed-off-by: NJesse Brandeburg <jesse.brandeburg@intel.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      91615f76
    • J
      ixgbe: fix unmap length bug · 4f57ca6e
      Jesse Brandeburg 提交于
      This patch addresses three WARN_ON statements from DMA-API debug code
      
      ixgbe is mapping more than it unmaps, reduce the length of the map call and
      remove the "used once" local variable.
      
      found by Joerg Roedel <joerg.roedel@amd.com> in 2.6.30, so is a candidate
      for -stable.
      
      in addition, fix missing ->dma = 0 after unmap to prevent double free with
      pci_unmap_single
      
      and lastly, don't unmap (half) pages that aren't mapped.
      Signed-off-by: NJesse Brandeburg <jesse.brandeburg@intel.com>
      CC: Joerg Roedel <joerg.roedel@amd.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4f57ca6e