1. 06 7月, 2009 4 次提交
  2. 04 7月, 2009 22 次提交
  3. 03 7月, 2009 7 次提交
  4. 01 7月, 2009 7 次提交
    • E
      Revert "ipv4: arp announce, arp_proxy and windows ip conflict verification" · f8a68e75
      Eric W. Biederman 提交于
      This reverts commit 73ce7b01.
      
      After discovering that we don't listen to gratuitious arps in 2.6.30
      I tracked the failure down to this commit.
      
      The patch makes absolutely no sense.  RFC2131 RFC3927 and RFC5227.
      are all in agreement that an arp request with sip == 0 should be used
      for the probe (to prevent learning) and an arp request with sip == tip
      should be used for the gratitous announcement that people can learn
      from.
      
      It appears the author of the broken patch got those two cases confused
      and modified the code to drop all gratuitous arp traffic.  Ouch!
      
      Cc: stable@kernel.org
      Signed-off-by: NEric W. Biederman <ebiederm@aristanetworks.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f8a68e75
    • 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