1. 18 Mar, 2014 17 commits
    • Veaceslav Falico's avatar
      bonding: ratelimit pr_warn()s in 802.3ad mode · 86a2b9cf
      Veaceslav Falico authored
      Only ratelimit the ones that might spam, omiting the ones from
      enslave/deslave.
      
      CC: Jay Vosburgh <fubar@us.ibm.com>
      CC: Andy Gospodarek <andy@greyhouse.net>
      Signed-off-by: default avatarVeaceslav Falico <vfalico@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      86a2b9cf
    • Eric Dumazet's avatar
      net: sched: use no more than one page in struct fw_head · d37d8ac1
      Eric Dumazet authored
      In commit b4e9b520 ("[NET_SCHED]: Add mask support to fwmark
      classifier") Patrick added an u32 field in fw_head, making it slightly
      bigger than one page.
      
      Lets use 256 slots to make fw_hash() more straight forward, and move
      @mask to the beginning of the structure as we often use a small number
      of skb->mark. @mask and first hash buckets share the same cache line.
      
      This brings back the memory usage to less than 4000 bytes, and permits
      John to add a rcu_head at the end of the structure later without any
      worry.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Cc: Thomas Graf <tgraf@suug.ch>
      Cc: John Fastabend <john.fastabend@gmail.com>
      Acked-by: default avatarThomas Graf <tgraf@suug.ch>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d37d8ac1
    • David S. Miller's avatar
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec-next · 995dca4c
      David S. Miller authored
      Steffen Klassert says:
      
      ====================
      One patch to rename a newly introduced struct. The rest is
      the rework of the IPsec virtual tunnel interface for ipv6 to
      support inter address family tunneling and namespace crossing.
      
      1) Rename the newly introduced struct xfrm_filter to avoid a
         conflict with iproute2. From Nicolas Dichtel.
      
      2) Introduce xfrm_input_afinfo to access the address family
         dependent tunnel callback functions properly.
      
      3) Add and use a IPsec protocol multiplexer for ipv6.
      
      4) Remove dst_entry caching. vti can lookup multiple different
         dst entries, dependent of the configured xfrm states. Therefore
         it does not make to cache a dst_entry.
      
      5) Remove caching of flow informations. vti6 does not use the the
         tunnel endpoint addresses to do route and xfrm lookups.
      
      6) Update the vti6 to use its own receive hook.
      
      7) Remove the now unused xfrm_tunnel_notifier. This was used from vti
         and is replaced by the IPsec protocol multiplexer hooks.
      
      8) Support inter address family tunneling for vti6.
      
      9) Check if the tunnel endpoints of the xfrm state and the vti interface
         are matching and return an error otherwise.
      
      10) Enable namespace crossing for vti devices.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      995dca4c
    • Or Gerlitz's avatar
      net/i40e: Avoid double setting of NETIF_F_SG for the HW encapsulation feature mask · d70e941b
      Or Gerlitz authored
      The networking core does it for the driver during registration time.
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d70e941b
    • Eric W Biederman's avatar
      i40evf: Rename i40e_ptype_lookup i40evf_ptype_lookup · 37a622c1
      Eric W Biederman authored
      When compiling the i40e and the i40evf driver into the same kernel I get:
      LD      drivers/net/ethernet/intel/built-in.o
      drivers/net/ethernet/intel/i40evf/built-in.o:(.data+0x300): multiple definition of `i40e_ptype_lookup'
      drivers/net/ethernet/intel/i40e/built-in.o:(.data+0x780): first defined here
      make[3]: *** [drivers/net/ethernet/intel/built-in.o] Error 1
      make[2]: *** [drivers/net/ethernet/intel] Error 2
      make[1]: *** [drivers/net/ethernet/] Error 2
      make: *** [sub-make] Error 2
      
      Fix this by renaming the i40evf version of this structure from
      i40e_ptype_lookup to i40evf_ptype_lookup.
      
      This build failure was introduced in:
        commit 206812b5
        Author: Jesse Brandeburg <jesse.brandeburg@intel.com>
        i40e/i40evf: i40e implementation for skb_set_hash
      
      Cc: Jesse Brandeburg <jesse.brandeburg@intel.com>
      Cc: Catherine Sullivan <catherine.sullivan@intel.com>
      Signed-off-by: default avatarEric W Biederman <ebiederm@xmission.com>
      Tested-by: default avatarKavindya Deegala <kavindya.s.deegala@intel.com>
      Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      37a622c1
    • Kevin Hao's avatar
      e1000e: fix the build error when PM is disabled · 72f72dcc
      Kevin Hao authored
      The commit 28002099 (e1000e: Refactor PM flows) changed the
      SET_SYSTEM_SLEEP_PM_OPS to open-coded assignment, but forgot to
      protect them with CONFIG_PM_SLEEP. Then cause the following build
      error when PM is disabled:
      drivers/net/ethernet/intel/e1000e/netdev.c:7079:13:
      error: 'e1000e_pm_suspend' undeclared here (not in a function)
        .suspend = e1000e_pm_suspend,
                   ^
      drivers/net/ethernet/intel/e1000e/netdev.c:7080:13:
      error: 'e1000e_pm_resume' undeclared here (not in a function)
        .resume  = e1000e_pm_resume,
                   ^
      drivers/net/ethernet/intel/e1000e/netdev.c:7082:11:
      error: 'e1000e_pm_thaw' undeclared here (not in a function)
        .thaw  = e1000e_pm_thaw,
                 ^
      Signed-off-by: default avatarKevin Hao <haokexin@gmail.com>
      Tested-by: default avatarAaron Brown <aaron.f.brown@intel.com>
      Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      72f72dcc
    • Fernando Luis Vazquez Cao's avatar
      igb: remove references to long gone command line parameters · 406d4965
      Fernando Luis Vazquez Cao authored
      Command line parameters QueuePairs, Node, EEE, DMAC and InterruptThrottleRate
      do not exist these days. Remove all references to them in the Documentation
      folder and update code comments.
      Signed-off-by: default avatarFernando Luis Vazquez Cao <fernando@oss.ntt.co.jp>
      Tested-by: default avatarAaron Brown <aaron.f.brown@intel.com>
      Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      406d4965
    • David S. Miller's avatar
      Merge branch 'altera_tse' · 33125df3
      David S. Miller authored
      Vince Bridgers says:
      
      ====================
      Altera Triple Speed Ethernet (TSE) Driver
      
      This is the version 6 submission for the Altera Triple Speed Ethernet (TSE)
      driver. All comments received during the version 2, 3, 4, and 5 submissions
      have been accepted. Please find the change log and a description of the
      submission below.
      
      If you find the submission acceptable, please consider this patch set for
      inclusion into the Linux kernel.
      
      V6: Address comments from V5 review
          - add call to skb_tx_timestamp in the drivers transmit path
          - correct use of unsigned int where it was cast to pointer. Use types
            appropriate for intended and correct use to let the compiler warn us
            when type usage is incorrect.
          - use correct semantics for pointer arithmetic in same code path
      
      V5: Address comments from V4 review
          - Add descriptions of statistics to driver documentation. The statstics
            supported by the driver/controller map to IEEE and RFC statistics, and
            the names and mappings are described in the user documentation.
          - Change "unsigned int" to u32 in device structure definitions
          - Change used of netdev_warn to netif_warn in altera_sgdma.c
          - Change stat name rx_fifo_drops to ether_drops to match the event
            actually counted by the hardware.
      
      V4: Address comments from V3 review
          - Change statistics names in ethtool module to follow common use in
            other ethernet drivers.
          - remove an unnecessary case in ethtool module
          - change logging to use netdev_* where possible instead of dev_*
          - remove logging for OOM errors since those are already logged
      
      V3: Address comments from V2 review
          - Reorder patch submission so that net/ethernet Makefile and Kconfig
            are committed last, thus not breaking bisect
          - Use of_get_mac_address instead of of_get_property
          - Change supplemental and hash configuration bindings to boolean/empty,
            and more meaningful names
          - Add check for failure from calls to of_phy_connect and
            connect_local_phy
          - Correct code to find mdio child node
          - Update bindings document
          - Remove cast to u64 when not necessary
          - add use of const for statistics strings
      
      V2: Address comments from initial RFC review.
          - The driver files were broken up by major sections of functionality.
            These include MSGDMA, SGDMA, Misc, and Main.
          - Add patch for MAINTAINERS file, add the maintainer for this submission
          - Use 32-bit lower/upper physical address accessor functions so the driver
            is 64-bit ready.
          - Use standard bindings where applicable. Especially phy-addr, and change
            "altr,rx-fifo-depth" to "rx-fifo-depth" and "altr,tx-fifo-depth" to
            "tx-fifo-depth".
          - Add use of max-frame-size property
          - Update bindings documents accordingly
          - Correct interrupt handler to use budget parameter in the convential way
          - Use macros consistently to define bit fields across files
          - Correct include exclusion macro in altera_msgdmahw.h (typo)
          - Remove use of barriers, these were not necessary since the DMA APIs
            ensure memory & buffer consistency
          - Remove use of netif_carrier_off in driver
          - move probing of phy from the open function to the probe function
          - use of_get_phy_mode instead of custom function
          - Use the .data field in the device structure to obtain a pointer
            to SGDMA or MSGDMA device specific properties and functions.
          - remove custom function to access devicetree since Altera specific
            bindings requiring it's use have been deprecated in favor of
            standard bindings.
      
      The Altera TSE is a 10/100/1000 Mbps Ethernet soft IP component that can be
      configured and synthesized using Quartus, and programmed into Altera FPGAs.
      Two types of soft DMA IP components are supported by this driver - the Altera
      SGDMA and the MSGDMA. The MSGDMA DMA component is preferred over the SGDMA,
      since the SGDMA will be deprecated in favor of the MSGDMA. Software supporting
      both is provided for customers still using the SGDMA and to demonstrate how
      multiple types of DMA engines may be supported by the TSE driver in the event
      customers wish to develop their own custom soft DMA engine for particular
      applications.
      
      The design has been tested on Altera's Cyclone 4, 5, and Cyclone 5 SOC
      development kits using an ARM A9 processor and an Altera NIOS2 processor.
      Differences in CPU/DMA coherency management and address alignment are
      addressed by proper use of driver APIs and semantics.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      33125df3
    • Vince Bridgers's avatar
      net: ethernet: Change Ethernet Makefile and Kconfig for Altera TSE driver · f7b18249
      Vince Bridgers authored
      This patch changes the Ethernet Makefile and Kconfig files to add the Altera
      Ethernet driver component.
      Signed-off-by: default avatarVince Bridgers <vbridgers2013@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f7b18249
    • Vince Bridgers's avatar
      MAINTAINERS: Add entry for Altera Triple Speed Ethernet Driver · 16b8b922
      Vince Bridgers authored
      Add a MAINTAINERS entry covering the Altera Triple Speed
      Ethernet Driver, with support for the MSGDMA and SGDMA
      soft DMA IP components.
      Signed-off-by: default avatarVince Bridgers <vbridgers2013@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      16b8b922
    • Vince Bridgers's avatar
      Altera TSE: Add Altera Ethernet Driver Makefile and Kconfig · ed33ef64
      Vince Bridgers authored
      This patch adds the Altera Triple Speed Ethernet Makfile and
      Kconfig file.
      Signed-off-by: default avatarVince Bridgers <vbridgers2013@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ed33ef64
    • Vince Bridgers's avatar
      Altera TSE: Add main and header file for Altera Ethernet Driver · bbd2190c
      Vince Bridgers authored
      This patch adds the main driver and header file for the Altera Triple
      Speed Ethernet driver.
      Signed-off-by: default avatarVince Bridgers <vbridgers2013@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bbd2190c
    • Vince Bridgers's avatar
      Altera TSE: Add Miscellaneous Files for Altera Ethernet Driver · 6c3324a9
      Vince Bridgers authored
      This patch adds miscellaneous files for the Altera Ethernet Driver,
      including ethtool support.
      Signed-off-by: default avatarVince Bridgers <vbridgers2013@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6c3324a9
    • Vince Bridgers's avatar
      Altera TSE: Add Altera Ethernet Driver SGDMA file components · f64f8808
      Vince Bridgers authored
      This patch adds the SGDMA soft IP support for the Altera Triple
      Speed Ethernet driver.
      Signed-off-by: default avatarVince Bridgers <vbridgers2013@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f64f8808
    • Vince Bridgers's avatar
      Altera TSE: Add Altera Ethernet Driver MSGDMA File Components · 94fb0ef4
      Vince Bridgers authored
      This patch adds the MSGDMA soft IP support for the Altera Triple
      Speed Ethernet driver.
      Signed-off-by: default avatarVince Bridgers <vbridgers2013@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      94fb0ef4
    • Vince Bridgers's avatar
      Documentation: networking: Add Altera Ethernet (TSE) Documentation · 04add4ab
      Vince Bridgers authored
      This patch adds a bindings description for the Altera Triple Speed Ethernet
      (TSE) driver. The bindings support the legacy SGDMA soft IP as well as the
      preferred MSGDMA soft IP. The TSE can be configured and synthesized in soft
      logic using Altera's Quartus toolchain. Please consult the bindings document
      for supported options.
      Signed-off-by: default avatarVince Bridgers <vbridgers2013@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      04add4ab
    • Vince Bridgers's avatar
      dts: Add bindings for the Altera Triple Speed Ethernet driver · d6da06fc
      Vince Bridgers authored
      This patch adds a bindings description for the Altera Triple Speed Ethernet
      (TSE) driver. The bindings support the legacy SGDMA soft IP as well as the
      preferred MSGDMA soft IP. The TSE can be configured and synthesized in soft
      logic using Altera's Quartus toolchain. Please consult the bindings document
      for supported options.
      Signed-off-by: default avatarVince Bridgers <vbridgers2013@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d6da06fc
  2. 17 Mar, 2014 23 commits