1. 15 3月, 2014 3 次提交
  2. 13 3月, 2014 2 次提交
  3. 27 2月, 2014 1 次提交
  4. 19 2月, 2014 1 次提交
  5. 18 12月, 2013 2 次提交
  6. 10 12月, 2013 3 次提交
  7. 06 11月, 2013 1 次提交
    • J
      net: Explicitly initialize u64_stats_sync structures for lockdep · 827da44c
      John Stultz 提交于
      In order to enable lockdep on seqcount/seqlock structures, we
      must explicitly initialize any locks.
      
      The u64_stats_sync structure, uses a seqcount, and thus we need
      to introduce a u64_stats_init() function and use it to initialize
      the structure.
      
      This unfortunately adds a lot of fairly trivial initialization code
      to a number of drivers. But the benefit of ensuring correctness makes
      this worth while.
      
      Because these changes are required for lockdep to be enabled, and the
      changes are quite trivial, I've not yet split this patch out into 30-some
      separate patches, as I figured it would be better to get the various
      maintainers thoughts on how to best merge this change along with
      the seqcount lockdep enablement.
      
      Feedback would be appreciated!
      Signed-off-by: NJohn Stultz <john.stultz@linaro.org>
      Acked-by: NJulian Anastasov <ja@ssi.bg>
      Signed-off-by: NPeter Zijlstra <peterz@infradead.org>
      Cc: Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Eric Dumazet <eric.dumazet@gmail.com>
      Cc: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
      Cc: James Morris <jmorris@namei.org>
      Cc: Jesse Gross <jesse@nicira.com>
      Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
      Cc: "Michael S. Tsirkin" <mst@redhat.com>
      Cc: Mirko Lindner <mlindner@marvell.com>
      Cc: Patrick McHardy <kaber@trash.net>
      Cc: Roger Luethi <rl@hellgate.ch>
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: Simon Horman <horms@verge.net.au>
      Cc: Stephen Hemminger <stephen@networkplumber.org>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Cc: Wensong Zhang <wensong@linux-vs.org>
      Cc: netdev@vger.kernel.org
      Link: http://lkml.kernel.org/r/1381186321-4906-2-git-send-email-john.stultz@linaro.orgSigned-off-by: NIngo Molnar <mingo@kernel.org>
      827da44c
  8. 24 10月, 2013 1 次提交
    • S
      igb: fix driver reload with VF assigned to guest · 781798a1
      Stefan Assmann 提交于
      commit fa44f2f1 broke reloading of igb, when
      VFs are assigned to a guest, in several ways.
      1. on module load adapter->vf_data does not get properly allocated,
      resulting in a null pointer exception when accessing adapter->vf_data in
      igb_reset() on module reload.
       modprobe -r igb ; modprobe igb max_vfs=7
      [  215.215837] igb 0000:01:00.1: removed PHC on eth1
      [  216.932072] igb 0000:01:00.1: IOV Disabled
      [  216.937038] igb 0000:01:00.0: removed PHC on eth0
      [  217.127032] igb 0000:01:00.0: Cannot deallocate SR-IOV virtual functions while they are assigned - VFs will not be deallocated
      [  217.146178] igb: Intel(R) Gigabit Ethernet Network Driver - version 5.0.5-k
      [  217.154050] igb: Copyright (c) 2007-2013 Intel Corporation.
      [  217.160688] igb 0000:01:00.0: Enabling SR-IOV VFs using the module parameter is deprecated - please use the pci sysfs interface.
      [  217.173703] igb 0000:01:00.0: irq 103 for MSI/MSI-X
      [  217.179227] igb 0000:01:00.0: irq 104 for MSI/MSI-X
      [  217.184735] igb 0000:01:00.0: irq 105 for MSI/MSI-X
      [  217.220082] BUG: unable to handle kernel NULL pointer dereference at 0000000000000048
      [  217.228846] IP: [<ffffffffa007c5e5>] igb_reset+0xc5/0x4b0 [igb]
      [  217.235472] PGD 3607ec067 PUD 36170b067 PMD 0
      [  217.240461] Oops: 0002 [#1] SMP
      [  217.244085] Modules linked in: igb(+) igbvf mptsas mptscsih mptbase scsi_transport_sas [last unloaded: igb]
      [  217.255040] CPU: 4 PID: 4833 Comm: modprobe Not tainted 3.11.0+ #46
      [...]
      [  217.390007]  [<ffffffffa007fab2>] igb_probe+0x892/0xfd0 [igb]
      [  217.396422]  [<ffffffff81470b3e>] local_pci_probe+0x1e/0x40
      [  217.402641]  [<ffffffff81472029>] pci_device_probe+0xf9/0x110
      [...]
      2. A follow up issue, pci_enable_sriov() should only be called if no VFs were
      still allocated on module unload. Otherwise pci_enable_sriov() gets called
      multiple times in a row rendering the NIC unusable until reset.
      3. simply calling igb_enable_sriov() in igb_probe_vfs() is not enough as the
      interrupts need to be re-setup. Switching that to igb_pci_enable_sriov().
      Signed-off-by: NStefan Assmann <sassmann@kpanic.de>
      Tested-by: NAaron Brown <aaron.f.brown@intel.com>
      Tested-by: NSibai Li <Sibai.li@intel.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      781798a1
  9. 03 10月, 2013 1 次提交
  10. 02 10月, 2013 1 次提交
  11. 22 9月, 2013 1 次提交
    • R
      DMA-API: net: intel/igb: fix 32-bit DMA mask handling · dc4ff9bb
      Russell King 提交于
      The fallback to 32-bit DMA mask is rather odd:
      	err = dma_set_mask(&pdev->dev, DMA_BIT_MASK(64));
      	if (!err) {
      		err = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64));
      		if (!err)
      			pci_using_dac = 1;
      	} else {
      		err = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
      		if (err) {
      			err = dma_set_coherent_mask(&pdev->dev,
      						    DMA_BIT_MASK(32));
      			if (err) {
      				dev_err(&pdev->dev,
      					"No usable DMA configuration, aborting\n");
      				goto err_dma;
      			}
      		}
      	}
      This means we only set the coherent DMA mask in the fallback path if
      the DMA mask set failed, which is silly.  This fixes it to set the
      coherent DMA mask only if dma_set_mask() succeeded, and to error out
      if either fails.
      Acked-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      dc4ff9bb
  12. 04 9月, 2013 3 次提交
  13. 22 8月, 2013 9 次提交
  14. 29 7月, 2013 1 次提交
  15. 21 5月, 2013 2 次提交
  16. 25 4月, 2013 4 次提交
  17. 20 4月, 2013 3 次提交
  18. 19 4月, 2013 1 次提交