1. 11 Aug, 2018 9 commits
  2. 10 Aug, 2018 18 commits
  3. 09 Aug, 2018 13 commits
    • Ganesh Goudar's avatar
      cxgb4: update 1.20.8.0 as the latest firmware supported · 36d2f761
      Ganesh Goudar authored
      Change t4fw_version.h to update latest firmware version
      number to 1.20.8.0.
      Signed-off-by: default avatarGanesh Goudar <ganeshgr@chelsio.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      36d2f761
    • Andrei Vagin's avatar
      net: allow to call netif_reset_xps_queues() under cpus_read_lock · 4d99f660
      Andrei Vagin authored
      The definition of static_key_slow_inc() has cpus_read_lock in place. In the
      virtio_net driver, XPS queues are initialized after setting the queue:cpu
      affinity in virtnet_set_affinity() which is already protected within
      cpus_read_lock. Lockdep prints a warning when we are trying to acquire
      cpus_read_lock when it is already held.
      
      This patch adds an ability to call __netif_set_xps_queue under
      cpus_read_lock().
      Acked-by: default avatarJason Wang <jasowang@redhat.com>
      
      ============================================
      WARNING: possible recursive locking detected
      4.18.0-rc3-next-20180703+ #1 Not tainted
      --------------------------------------------
      swapper/0/1 is trying to acquire lock:
      00000000cf973d46 (cpu_hotplug_lock.rw_sem){++++}, at: static_key_slow_inc+0xe/0x20
      
      but task is already holding lock:
      00000000cf973d46 (cpu_hotplug_lock.rw_sem){++++}, at: init_vqs+0x513/0x5a0
      
      other info that might help us debug this:
       Possible unsafe locking scenario:
      
             CPU0
             ----
        lock(cpu_hotplug_lock.rw_sem);
        lock(cpu_hotplug_lock.rw_sem);
      
       *** DEADLOCK ***
      
       May be due to missing lock nesting notation
      
      3 locks held by swapper/0/1:
       #0: 00000000244bc7da (&dev->mutex){....}, at: __driver_attach+0x5a/0x110
       #1: 00000000cf973d46 (cpu_hotplug_lock.rw_sem){++++}, at: init_vqs+0x513/0x5a0
       #2: 000000005cd8463f (xps_map_mutex){+.+.}, at: __netif_set_xps_queue+0x8d/0xc60
      
      v2: move cpus_read_lock() out of __netif_set_xps_queue()
      
      Cc: "Nambiar, Amritha" <amritha.nambiar@intel.com>
      Cc: "Michael S. Tsirkin" <mst@redhat.com>
      Cc: Jason Wang <jasowang@redhat.com>
      Fixes: 8af2c06f ("net-sysfs: Add interface for Rx queue(s) map per Tx queue")
      Signed-off-by: default avatarAndrei Vagin <avagin@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4d99f660
    • Andrew Lunn's avatar
      net: phy: sftp: print debug message with text, not numbers · 4005a7cb
      Andrew Lunn authored
      Convert the state numbers, device state, etc from numbers to strings
      when printing debug messages.
      Signed-off-by: default avatarAndrew Lunn <andrew@lunn.ch>
      Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4005a7cb
    • Colin Ian King's avatar
      ethernet/qlogic: remove unused array msi_tgt_status · 51507c5f
      Colin Ian King authored
      Array msi_tgt_status is defined but never used, hence it is
      redundant and can be removed.
      
      Cleans up clang warning:
      warning: 'msi_tgt_status' defined but not used [-Wunused-const-variable=]
      Signed-off-by: default avatarColin Ian King <colin.king@canonical.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      51507c5f
    • Linus Walleij's avatar
      net: dsa: rtl8366rb: Support port 4 (WAN) · 933de786
      Linus Walleij authored
      The totally undocumented IO mode needs to be set to enumerator
      0 to enable port 4 also known as WAN in most configurations,
      for ordinary traffic. The 3 bits in the register come up as
      010 after reset, but need to be set to 000.
      
      The Realtek source code contains a name for these bits, but
      no explanation of what the 8 different IO modes may be.
      
      Set it to zero for the time being and drop a comment so
      people know what is going on if they run into trouble. This
      "mode zero" works fine with the D-Link DIR-685 with
      RTL8366RB.
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      933de786
    • YueHaibing's avatar
      mlxsw: spectrum_flower: use PTR_ERR_OR_ZERO() · cd16e5b2
      YueHaibing authored
      Fix ptr_ret.cocci warnings:
       drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c:543:1-3: WARNING: PTR_ERR_OR_ZERO can be used
      Signed-off-by: default avatarYueHaibing <yuehaibing@huawei.com>
      Reviewed-by: default avatarIdo Schimmel <idosch@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      cd16e5b2
    • Jiri Pirko's avatar
      net: sched: fix block->refcnt decrement · 63cc5bcc
      Jiri Pirko authored
      Currently the refcnt is never decremented in case the value is not 1.
      Fix it by adding decrement in case the refcnt is not 1.
      Reported-by: default avatarVlad Buslov <vladbu@mellanox.com>
      Fixes: f71e0ca4 ("net: sched: Avoid implicit chain 0 creation")
      Signed-off-by: default avatarJiri Pirko <jiri@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      63cc5bcc
    • YueHaibing's avatar
      decnet: fix using plain integer as NULL warning · 0bab1cdc
      YueHaibing authored
      Fixes the following sparse warning:
      net/decnet/dn_route.c:407:30: warning: Using plain integer as NULL pointer
      net/decnet/dn_route.c:1923:22: warning: Using plain integer as NULL pointer
      Signed-off-by: default avatarYueHaibing <yuehaibing@huawei.com>
      Reviewed-by: default avatarKees Cook <keescook@chromium.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0bab1cdc
    • YueHaibing's avatar
      net: skbuff.h: fix using plain integer as NULL warning · 15693fd3
      YueHaibing authored
      Fixes the following sparse warning:
      ./include/linux/skbuff.h:2365:58: warning: Using plain integer as NULL pointer
      Signed-off-by: default avatarYueHaibing <yuehaibing@huawei.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      15693fd3
    • Petr Oros's avatar
      be2net: Use Kconfig flag to support for enabling/disabling adapters · 98471b5b
      Petr Oros authored
      Add flags to enable/disable supported chips in be2net.
      
      With disable support are removed coresponding PCI IDs and
      also codepaths with [BE2|BE3|BEx|lancer|skyhawk]_chip checks.
      
      Disable chip will reduce module size by:
      BE2 ~2kb
      BE3 ~3kb
      Lancer ~10kb
      Skyhawk ~9kb
      
      When enable skyhawk only it will reduce module size by ~20kb
      
      New help style in Kconfig
      Reviewed-by: default avatarIvan Vecera <ivecera@redhat.com>
      Signed-off-by: default avatarPetr Oros <poros@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      98471b5b
    • Maria Pasechnik's avatar
      net: ipv6_gre: Fix GRO to work on IPv6 over GRE tap · eb95f52f
      Maria Pasechnik authored
      IPv6 GRO over GRE tap is not working while GRO is not set
      over the native interface.
      
      gro_list_prepare function updates the same_flow variable
      of existing sessions to 1 if their mac headers match the one
      of the incoming packet.
      same_flow is used to filter out non-matching sessions and keep
      potential ones for aggregation.
      
      The number of bytes to compare should be the number of bytes
      in the mac headers. In gro_list_prepare this number is set to
      be skb->dev->hard_header_len. For GRE interfaces this hard_header_len
      should be as it is set in the initialization process (when GRE is
      created), it should not be overridden. But currently it is being overridden
      by the value that is actually supposed to represent the needed_headroom.
      Therefore, the number of bytes compared in order to decide whether the
      the mac headers are the same is greater than the length of the headers.
      
      As it's documented in netdevice.h, hard_header_len is the maximum
      hardware header length, and needed_headroom is the extra headroom
      the hardware may need.
      hard_header_len is basically all the bytes received by the physical
      till layer 3 header of the packet received by the interface.
      For example, if the interface is a GRE tap then the needed_headroom
      should be the total length of the following headers:
      IP header of the physical, GRE header, mac header of GRE.
      It is often used to calculate the MTU of the created interface.
      
      This patch removes the override of the hard_header_len, and
      assigns the calculated value to needed_headroom.
      This way, the comparison in gro_list_prepare is really of
      the mac headers, and if the packets have the same mac headers
      the same_flow will be set to 1.
      
      Performance testing: 45% higher bandwidth.
      Measuring bandwidth of single-stream IPv4 TCP traffic over IPv6
      GRE tap while GRO is not set on the native.
      NIC: ConnectX-4LX
      Before (GRO not working) : 7.2 Gbits/sec
      After (GRO working): 10.5 Gbits/sec
      Signed-off-by: default avatarMaria Pasechnik <mariap@mellanox.com>
      Signed-off-by: default avatarTariq Toukan <tariqt@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      eb95f52f
    • David S. Miller's avatar
      Merge branch 'qed-Enhancements' · 33377152
      David S. Miller authored
      Manish Chopra says:
      
      ====================
      qed*: Enhancements
      
      This patch series adds following support in drivers -
      
      1. Egress mqprio offload.
      2. Add destination IP based flow profile.
      3. Ingress flower offload (for drop action).
      
      Please consider applying this series to "net-next".
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      33377152
    • Manish Chopra's avatar
      qede: Ingress tc flower offload (drop action) support. · 2ce9c93e
      Manish Chopra authored
      The main motive of this patch is to lay down driver's
      tc offload infrastructure in place.
      
      With these changes tc can offload various supported flow
      profiles (4 tuples, src-ip, dst-ip, l4 port) for the drop
      action. Dropped flows statistic is a global counter for
      all the offloaded flows for drop action and is populated
      in ethtool statistics as common "gft_filter_drop".
      
      Examples -
      
      tc qdisc add dev p4p1 ingress
      tc filter add dev p4p1 protocol ipv4 parent ffff: flower \
      	skip_sw ip_proto tcp dst_ip 192.168.40.200 action drop
      tc filter add dev p4p1 protocol ipv4 parent ffff: flower \
      	skip_sw ip_proto udp src_ip 192.168.40.100 action drop
      tc filter add dev p4p1 protocol ipv4 parent ffff: flower \
      	skip_sw ip_proto tcp src_ip 192.168.40.100 dst_ip 192.168.40.200 \
      	src_port 453 dst_port 876 action drop
      tc filter add dev p4p1 protocol ipv4 parent ffff: flower \
      	skip_sw ip_proto tcp dst_port 98 action drop
      Signed-off-by: default avatarManish Chopra <manish.chopra@cavium.com>
      Signed-off-by: default avatarAriel Elior <ariel.elior@cavium.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      2ce9c93e