1. 05 Oct, 2018 2 commits
  2. 04 Oct, 2018 28 commits
    • Hangbin Liu's avatar
      geneve: allow to clear ttl inherit · a97d97ba
      Hangbin Liu authored
      As Michal remaind, we should allow to clear ttl inherit. Then we will
      have three states:
      
      1. set the flag, and do ttl inherit.
      2. do not set the flag, use configured ttl value, or default ttl (0) if
         not set.
      3. disable ttl inherit, use previous configured ttl value, or default ttl (0).
      
      Fixes: 52d0d404 ("geneve: add ttl inherit support")
      CC: Michal Kubecek <mkubecek@suse.cz>
      Signed-off-by: default avatarHangbin Liu <liuhangbin@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a97d97ba
    • Vinicius Costa Gomes's avatar
      tc: Add support for configuring the taprio scheduler · 5a781ccb
      Vinicius Costa Gomes authored
      This traffic scheduler allows traffic classes states (transmission
      allowed/not allowed, in the simplest case) to be scheduled, according
      to a pre-generated time sequence. This is the basis of the IEEE
      802.1Qbv specification.
      
      Example configuration:
      
      tc qdisc replace dev enp3s0 parent root handle 100 taprio \
                num_tc 3 \
      	  map 2 2 1 0 2 2 2 2 2 2 2 2 2 2 2 2 \
      	  queues 1@0 1@1 2@2 \
      	  base-time 1528743495910289987 \
      	  sched-entry S 01 300000 \
      	  sched-entry S 02 300000 \
      	  sched-entry S 04 300000 \
      	  clockid CLOCK_TAI
      
      The configuration format is similar to mqprio. The main difference is
      the presence of a schedule, built by multiple "sched-entry"
      definitions, each entry has the following format:
      
           sched-entry <CMD> <GATE MASK> <INTERVAL>
      
      The only supported <CMD> is "S", which means "SetGateStates",
      following the IEEE 802.1Qbv-2015 definition (Table 8-6). <GATE MASK>
      is a bitmask where each bit is a associated with a traffic class, so
      bit 0 (the least significant bit) being "on" means that traffic class
      0 is "active" for that schedule entry. <INTERVAL> is a time duration
      in nanoseconds that specifies for how long that state defined by <CMD>
      and <GATE MASK> should be held before moving to the next entry.
      
      This schedule is circular, that is, after the last entry is executed
      it starts from the first one, indefinitely.
      
      The other parameters can be defined as follows:
      
       - base-time: specifies the instant when the schedule starts, if
        'base-time' is a time in the past, the schedule will start at
      
       	      base-time + (N * cycle-time)
      
         where N is the smallest integer so the resulting time is greater
         than "now", and "cycle-time" is the sum of all the intervals of the
         entries in the schedule;
      
       - clockid: specifies the reference clock to be used;
      
      The parameters should be similar to what the IEEE 802.1Q family of
      specification defines.
      Signed-off-by: default avatarVinicius Costa Gomes <vinicius.gomes@intel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5a781ccb
    • David S. Miller's avatar
      Merge branch 'bnxt_en-devlink-param-updates' · 34f8c58f
      David S. Miller authored
      Vasundhara Volam says:
      
      ====================
      bnxt_en: devlink param updates
      
      This patchset adds support for 3 generic and 1 driver-specific devlink
      parameters. Add documentation for these configuration parameters.
      
      Also, this patchset adds support to return proper error code if
      HWRM_NVM_GET/SET_VARIABLE commands return error code
      HWRM_ERR_CODE_RESOURCE_ACCESS_DENIED.
      
      v3->v4:
      -Remove extra definition of NVM_OFF_HW_TC_OFFLOAD from bnxt_devlink.h
      -Remove type information for generic parameters from
      devlink-params-bnxt.txt
      
      v2->v3:
      -Remove description of generic parameters from devlink-params-bnxt.txt
      
      v1->v2:
      -Remove hw_tc_offload parameter.
      -Update all patches with Cc of MAINTAINERS.
      -Add more description in commit message for device specific parameter.
      -Add a new Documentation/networking/devlink-params.txt with some
      generic devlink parameters information.
      -Add a new Documentation/networking/devlink-params-bnxt.txt with devlink
      parameters information that are supported by bnxt_en driver.
      ====================
      Acked-by: default avatarJiri Pirko <jiri@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      34f8c58f
    • Vasundhara Volam's avatar
      devlink: Add Documentation/networking/devlink-params-bnxt.txt · 53e233ea
      Vasundhara Volam authored
      This patch adds a new file to add information about configuration
      parameters that are supported by bnxt_en driver via devlink.
      
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: linux-doc@vger.kernel.org
      Cc: Jiri Pirko <jiri@mellanox.com>
      Cc: Michael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarVasundhara Volam <vasundhara-v.volam@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      53e233ea
    • Vasundhara Volam's avatar
      devlink: Add Documentation/networking/devlink-params.txt · 9bff98bb
      Vasundhara Volam authored
      This patch adds a new file to add information about some of the
      generic configuration parameters set via devlink.
      
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: linux-doc@vger.kernel.org
      Cc: Jiri Pirko <jiri@mellanox.com>
      Cc: Michael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarVasundhara Volam <vasundhara-v.volam@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9bff98bb
    • Vasundhara Volam's avatar
      bnxt_en: Add a driver specific gre_ver_check devlink parameter. · 2dc0865e
      Vasundhara Volam authored
      This patch adds following driver-specific permanent mode boolean
      parameter.
      
      gre_ver_check - Generic Routing Encapsulation(GRE) version check
      will be enabled in the device. If disabled, device skips version
      checking for GRE packets.
      
      Cc: Michael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarVasundhara Volam <vasundhara-v.volam@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      2dc0865e
    • Vasundhara Volam's avatar
      bnxt_en: Use msix_vec_per_pf_max and msix_vec_per_pf_min devlink params. · f399e849
      Vasundhara Volam authored
      This patch adds support for following generic permanent mode
      devlink parameters. They can be modified using devlink param
      commands.
      
      msix_vec_per_pf_max - This param sets the number of MSIX vectors
      that the device requests from the host on driver initialization.
      This value is set in the device which limits MSIX vectors per PF.
      
      msix_vec_per_pf_min - This param sets the number of minimal MSIX
      vectors required for the device initialization. Value 0 indicates
      a default value is selected. This value is set in the device which
      limits MSIX vectors per PF.
      
      Cc: Michael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarVasundhara Volam <vasundhara-v.volam@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f399e849
    • Vasundhara Volam's avatar
      bnxt_en: return proper error when FW returns HWRM_ERR_CODE_RESOURCE_ACCESS_DENIED · 3a1d52a5
      Vasundhara Volam authored
      Return proper error code when Firmware returns
      HWRM_ERR_CODE_RESOURCE_ACCESS_DENIED for HWRM_NVM_GET/SET_VARIABLE
      commands.
      
      Cc: Michael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarVasundhara Volam <vasundhara-v.volam@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      3a1d52a5
    • Vasundhara Volam's avatar
      bnxt_en: Use ignore_ari devlink parameter · 7d859234
      Vasundhara Volam authored
      This patch adds support for ignore_ari generic permanent mode
      devlink parameter. This parameter is disabled by default. It can be
      enabled using devlink param commands.
      
      ignore_ari - If enabled, device ignores ARI(Alternate Routing ID)
      capability, even when platforms has the support and creates same number
      of partitions when platform does not support ARI capability.
      
      Cc: Michael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarVasundhara Volam <vasundhara-v.volam@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7d859234
    • Vasundhara Volam's avatar
      devlink: Add generic parameter msix_vec_per_pf_min · 16511789
      Vasundhara Volam authored
      msix_vec_per_pf_min - This param sets the number of minimal MSIX
      vectors required for the device initialization. This value is set
      in the device which limits MSIX vectors per PF.
      
      Cc: Jiri Pirko <jiri@mellanox.com>
      Cc: Michael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarVasundhara Volam <vasundhara-v.volam@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      16511789
    • Vasundhara Volam's avatar
      devlink: Add generic parameter msix_vec_per_pf_max · f61cba42
      Vasundhara Volam authored
      msix_vec_per_pf_max - This param sets the number of MSIX vectors
      that the device requests from the host on driver initialization.
      This value is set in the device which is applicable per PF.
      
      Cc: Jiri Pirko <jiri@mellanox.com>
      Cc: Michael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarVasundhara Volam <vasundhara-v.volam@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f61cba42
    • Vasundhara Volam's avatar
      devlink: Add generic parameter ignore_ari · e3b51061
      Vasundhara Volam authored
      ignore_ari - Device ignores ARI(Alternate Routing ID) capability,
      even when platforms has the support and creates same number of
      partitions when platform does not support ARI capability.
      
      Cc: Jiri Pirko <jiri@mellanox.com>
      Cc: Michael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarVasundhara Volam <vasundhara-v.volam@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e3b51061
    • Nathan Chancellor's avatar
      qed: Avoid implicit enum conversion in qed_ooo_submit_tx_buffers · 8fa74e3c
      Nathan Chancellor authored
      Clang warns when one enumerated type is implicitly converted to another.
      
      drivers/net/ethernet/qlogic/qed/qed_ll2.c:799:32: warning: implicit
      conversion from enumeration type 'enum core_tx_dest' to different
      enumeration type 'enum qed_ll2_tx_dest' [-Wenum-conversion]
                      tx_pkt.tx_dest = p_ll2_conn->tx_dest;
                                     ~ ~~~~~~~~~~~~^~~~~~~
      1 warning generated.
      
      Fix this by using a switch statement to convert between the enumerated
      values since they are not 1 to 1, which matches how the rest of the
      driver handles this conversion.
      
      Link: https://github.com/ClangBuiltLinux/linux/issues/125Suggested-by: default avatarTomer Tayar <Tomer.Tayar@cavium.com>
      Signed-off-by: default avatarNathan Chancellor <natechancellor@gmail.com>
      Acked-by: default avatarTomer Tayar <Tomer.Tayar@cavium.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8fa74e3c
    • David S. Miller's avatar
      Merge tag 'mlx5-updates-2018-10-03' of git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux · 9e50727f
      David S. Miller authored
      Saeed Mahameed says:
      
      ====================
      mlx5-updates-2018-10-03
      
      mlx5 core driver and ethernet netdev updates, please note there is a small
      devlink releated update to allow extack argument to eswitch operations.
      
      From Eli Britstein,
      1) devlink: Add extack argument to the eswitch related operations
      2) net/mlx5e: E-Switch, return extack messages for failures in the e-switch devlink callbacks
      3) net/mlx5e: Add extack messages for TC offload failures
      
      From Eran Ben Elisha,
      4) mlx5e: Add counter for aRFS rule insertion failures
      
      From Feras Daoud
      5) Fast teardown support for mlx5 device
      This change introduces the enhanced version of the "Force teardown" that
      allows SW to perform teardown in a faster way without the need to reclaim
      all the FW pages.
      Fast teardown provides the following advantages:
          1- Fix a FW race condition that could cause command timeout
          2- Avoid moving to polling mode
          3- Close the vport to prevent PCI ACK to be sent without been scatter
          to memory
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9e50727f
    • David S. Miller's avatar
      Merge tag 'rxrpc-next-20181004' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs · f0e834e1
      David S. Miller authored
      David Howells says:
      
      ====================
      rxrpc: Development
      
      Here are some development patches for AF_RXRPC.  The most significant points
      are:
      
       (1) Change the tracepoint that indicates a packet has been transmitted
           into one that indicates a packet is about to be transmitted.  Without
           this, the response tracepoint may occur first if the round trip is
           fast enough.
      
       (2) Sort out AFS address list handling to better enforce maximum capacity
           to use helper functions to fill them and to do an insertion sort to
           order them.  This is here to make (3) easier.
      
       (3) Keep AF_INET addresses as AF_INET addresses rather than converting
           them to AF_INET6 in both AF_RXRPC and kAFS.  I hadn't realised that a
           UDP6 socket would just call down into UDP4 if given an AF_INET
           address.
      
       (4) Allow the timestamp on the first DATA packet of a reply to be
           retrieved by a kernel service.  This will give the kAFS a more
           accurate base from which to calculate the callback promise expiration.
      
       (5) Allow the rxrpc protocol epoch value to be retrieved from an incoming
           call.  This will allow kAFS to determine if the fileserver restarted
           and if two addresses apparently assigned to the same fileserver
           actually are different boxes.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f0e834e1
    • David Howells's avatar
      dns: Allow the dns resolver to retrieve a server set · bbb4c432
      David Howells authored
      Allow the DNS resolver to retrieve a set of servers and their associated
      addresses, ports, preference and weight ratings.
      
      In terms of communication with userspace, "srv=1" is added to the callout
      string (the '1' indicating the maximum data version supported by the
      kernel) to ask the userspace side for this.
      
      If the userspace side doesn't recognise it, it will ignore the option and
      return the usual text address list.
      
      If the userspace side does recognise it, it will return some binary data
      that begins with a zero byte that would cause the string parsers to give an
      error.  The second byte contains the version of the data in the blob (this
      may be between 1 and the version specified in the callout data).  The
      remainder of the payload is version-specific.
      
      In version 1, the payload looks like (note that this is packed):
      
      	u8	Non-string marker (ie. 0)
      	u8	Content (0 => Server list)
      	u8	Version (ie. 1)
      	u8	Source (eg. DNS_RECORD_FROM_DNS_SRV)
      	u8	Status (eg. DNS_LOOKUP_GOOD)
      	u8	Number of servers
      	foreach-server {
      		u16	Name length (LE)
      		u16	Priority (as per SRV record) (LE)
      		u16	Weight (as per SRV record) (LE)
      		u16	Port (LE)
      		u8	Source (eg. DNS_RECORD_FROM_NSS)
      		u8	Status (eg. DNS_LOOKUP_GOT_NOT_FOUND)
      		u8	Protocol (eg. DNS_SERVER_PROTOCOL_UDP)
      		u8	Number of addresses
      		char[]	Name (not NUL-terminated)
      		foreach-address {
      			u8		Family (AF_INET{,6})
      			union {
      				u8[4]	ipv4_addr
      				u8[16]	ipv6_addr
      			}
      		}
      	}
      
      This can then be used to fetch a whole cell's VL-server configuration for
      AFS, for example.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bbb4c432
    • Colin Ian King's avatar
      liquidio: fix a couple of spelling mistakes · 0aa63eb9
      Colin Ian King authored
      Trivial fix to spelling mistakes in dev_dbg warning messages
      
      "Reloade" -> "Reload"
      "chang" -> "change"
      Signed-off-by: default avatarColin Ian King <colin.king@canonical.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0aa63eb9
    • David S. Miller's avatar
      Merge branch 'ieee802154-for-davem-2018-10-04' of... · 6a5e6b11
      David S. Miller authored
      Merge branch 'ieee802154-for-davem-2018-10-04' of git://git.kernel.org/pub/scm/linux/kernel/git/sschmidt/wpan-next
      
      Stefan Schmidt says:
      
      ====================
      pull-request: ieee802154-next 2018-10-04
      
      An update from ieee802154 for *net-next*
      
      A very quite cycle in the ieee802154 subsystem. We only have two cleanup
      patches for this pull request.
      Xue removed the platform_data struct handling from the mcr20a driver and
      Alexander cleaned up some left overs in the hwsim driver.
      
      Please pull, or let me know if there are any problems.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6a5e6b11
    • David Howells's avatar
      rxrpc: Allow the reply time to be obtained on a client call · e908bcf4
      David Howells authored
      Allow the epoch value to be queried on a server connection.  This is in the
      rxrpc header of every packet for use in routing and is derived from the
      client's state.  It's also not supposed to change unless the client gets
      restarted.
      
      AFS can make use of this information to deduce whether a fileserver has
      been restarted because the fileserver makes client calls to the filesystem
      driver's cache manager to send notifications (ie. callback breaks) about
      conflicting changes from other clients.  These convey the fileserver's own
      epoch value back to the filesystem.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      e908bcf4
    • David Howells's avatar
      rxrpc: Allow the reply time to be obtained on a client call · 2070a3e4
      David Howells authored
      Allow the timestamp on the sk_buff holding the first DATA packet of a reply
      to be queried.  This can then be used as a base for the expiry time
      calculation on the callback promise duration indicated by an operation
      result.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      2070a3e4
    • David Howells's avatar
      rxrpc: Drop the local endpoint arg from rxrpc_extract_addr_from_skb() · 5a790b73
      David Howells authored
      rxrpc_extract_addr_from_skb() doesn't use the argument that points to the
      local endpoint, so remove the argument.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      5a790b73
    • David Howells's avatar
      rxrpc: Use IPv4 addresses throught the IPv6 · 46894a13
      David Howells authored
      AF_RXRPC opens an IPv6 socket through which to send and receive network
      packets, both IPv6 and IPv4.  It currently turns AF_INET addresses into
      AF_INET-as-AF_INET6 addresses based on an assumption that this was
      necessary; on further inspection of the code, however, it turns out that
      the IPv6 code just farms packets aimed at AF_INET addresses out to the IPv4
      code.
      
      Fix AF_RXRPC to use AF_INET addresses directly when given them.
      
      Fixes: 7b674e39 ("rxrpc: Fix IPv6 support")
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      46894a13
    • David Howells's avatar
      afs: Sort address lists so that they are in logical ascending order · 66be646b
      David Howells authored
      Sort address lists so that they are in logical ascending order rather than
      being partially in ascending order of the BE representations of those
      values.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      66be646b
    • David Howells's avatar
      afs: Always build address lists using the helper functions · 4c19bbdc
      David Howells authored
      Make the address list string parser use the helper functions for adding
      addresses to an address list so that they end up appropriately sorted.
      This will better handles overruns and make them easier to compare.
      
      It also reduces the number of places that addresses are handled, making it
      easier to fix the handling.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      4c19bbdc
    • David Howells's avatar
      afs: Do better max capacity handling on address lists · 68eb64c3
      David Howells authored
      Note the maximum allocated capacity in an afs_addr_list struct and discard
      addresses that would exceed it in afs_merge_fs_addr{4,6}().
      
      Also, since the current maximum capacity is less than 255, reduce the
      relevant members to bytes.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      68eb64c3
    • David Howells's avatar
      rxrpc: Emit the data Tx trace line before transmitting · b3cfb6f5
      David Howells authored
      Print the data Tx trace line before transmitting so that it appears before
      the trace lines indicating success or failure of the transmission.  This
      makes the trace log less confusing.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      b3cfb6f5
    • David Howells's avatar
      rxrpc: Use rxrpc_free_skb() rather than rxrpc_lose_skb() · d2944b1c
      David Howells authored
      rxrpc_lose_skb() is now exactly the same as rxrpc_free_skb(), so remove it
      and use the latter instead.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      d2944b1c
    • David S. Miller's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 6f41617b
      David S. Miller authored
      Minor conflict in net/core/rtnetlink.c, David Ahern's bug fix in 'net'
      overlapped the renaming of a netlink attribute in net-next.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6f41617b
  3. 03 Oct, 2018 10 commits
    • Feras Daoud's avatar
      net/mlx5: Add Fast teardown support · fcd29ad1
      Feras Daoud authored
      Today mlx5 devices support two teardown modes:
      1- Regular teardown
      2- Force teardown
      
      This change introduces the enhanced version of the "Force teardown" that
      allows SW to perform teardown in a faster way without the need to reclaim
      all the pages.
      
      Fast teardown provides the following advantages:
      1- Fix a FW race condition that could cause command timeout
      2- Avoid moving to polling mode
      3- Close the vport to prevent PCI ACK to be sent without been scatter
      to memory
      Signed-off-by: default avatarFeras Daoud <ferasda@mellanox.com>
      Reviewed-by: default avatarMajd Dibbiny <majd@mellanox.com>
      Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
      fcd29ad1
    • Eran Ben Elisha's avatar
      net/mlx5e: Add new counter for aRFS rule insertion failures · 94563847
      Eran Ben Elisha authored
      Count aRFS rules insertion failure for ethtool output. In addition, move
      the error print into debug prints mechanism, as it could flood the dmesg
      and reduce system BW dramatically.
      Signed-off-by: default avatarEran Ben Elisha <eranbe@mellanox.com>
      Reviewed-by: default avatarTariq Toukan <tariqt@mellanox.com>
      Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
      94563847
    • Eli Britstein's avatar
      net/mlx5e: Add extack messages for TC offload failures · e98bedf5
      Eli Britstein authored
      Return tc extack messages for failures to user space.
      Messages provide reasons for not being able to offload rules to HW.
      Signed-off-by: default avatarEli Britstein <elibr@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Reviewed-by: default avatarRoi Dayan <roid@mellanox.com>
      Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
      e98bedf5
    • Eli Britstein's avatar
      net/mlx5e: E-Switch, Add extack messages to devlink callbacks · 8c98ee77
      Eli Britstein authored
      Return extack messages for failures in the e-switch devlink callbacks.
      Messages provide reasons for not being able to issue the operation.
      Signed-off-by: default avatarEli Britstein <elibr@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Reviewed-by: default avatarRoi Dayan <roid@mellanox.com>
      Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
      8c98ee77
    • Eli Britstein's avatar
      devlink: Add extack for eswitch operations · db7ff19e
      Eli Britstein authored
      Add extack argument to the eswitch related operations.
      Signed-off-by: default avatarEli Britstein <elibr@mellanox.com>
      Reviewed-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Reviewed-by: default avatarRoi Dayan <roid@mellanox.com>
      Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
      db7ff19e
    • Greg Kroah-Hartman's avatar
      Merge gitolite.kernel.org:/pub/scm/linux/kernel/git/davem/net · cec4de30
      Greg Kroah-Hartman authored
      David writes:
        "Networking fixes:
         1) Prefix length validation in xfrm layer, from Steffen Klassert.
      
         2) TX status reporting fix in mac80211, from Andrei Otcheretianski.
      
         3) Fix hangs due to TX_DROP in mac80211, from Bob Copeland.
      
         4) Fix DMA error regression in b43, from Larry Finger.
      
         5) Add input validation to xenvif_set_hash_mapping(), from Jan Beulich.
      
         6) SMMU unmapping fix in hns driver, from Yunsheng Lin.
      
         7) Bluetooh crash in unpairing on SMP, from Matias Karhumaa.
      
         8) WoL handling fixes in the phy layer, from Heiner Kallweit.
      
         9) Fix deadlock in bonding, from Mahesh Bandewar.
      
         10) Fill ttl inherit infor in vxlan driver, from Hangbin Liu.
      
         11) Fix TX timeouts during netpoll, from Michael Chan.
      
         12) RXRPC layer fixes from David Howells.
      
         13) Another batch of ndo_poll_controller() removals to deal with
             excessive resource consumption during load.  From Eric Dumazet.
      
         14) Fix a specific TIPC failure secnario, from LUU Duc Canh.
      
         15) Really disable clocks in r8169 during suspend so that low
             power states can actually be reached.
      
         16) Fix SYN backlog lockdep issue in tcp and dccp, from Eric Dumazet.
      
         17) Fix RCU locking in netpoll SKB send, which shows up in bonding,
             from Dave Jones.
      
         18) Fix TX stalls in r8169, from Heiner Kallweit.
      
         19) Fix locksup in nfp due to control message storms, from Jakub
             Kicinski.
      
         20) Various rmnet bug fixes from Subash Abhinov Kasiviswanathan and
             Sean Tranchetti.
      
         21) Fix use after free in ip_cmsg_recv_dstaddr(), from Eric Dumazet."
      
      * gitolite.kernel.org:/pub/scm/linux/kernel/git/davem/net: (122 commits)
        ixgbe: check return value of napi_complete_done()
        sctp: fix fall-through annotation
        r8169: always autoneg on resume
        ipv4: fix use-after-free in ip_cmsg_recv_dstaddr()
        net: qualcomm: rmnet: Fix incorrect allocation flag in receive path
        net: qualcomm: rmnet: Fix incorrect allocation flag in transmit
        net: qualcomm: rmnet: Skip processing loopback packets
        net: systemport: Fix wake-up interrupt race during resume
        rtnl: limit IFLA_NUM_TX_QUEUES and IFLA_NUM_RX_QUEUES to 4096
        bonding: fix warning message
        inet: make sure to grab rcu_read_lock before using ireq->ireq_opt
        nfp: avoid soft lockups under control message storm
        declance: Fix continuation with the adapter identification message
        net: fec: fix rare tx timeout
        r8169: fix network stalls due to missing bit TXCFG_AUTO_FIFO
        tun: napi flags belong to tfile
        tun: initialize napi_mutex unconditionally
        tun: remove unused parameters
        bond: take rcu lock in netpoll_send_skb_on_dev
        rtnetlink: Fail dump if target netnsid is invalid
        ...
      cec4de30
    • David S. Miller's avatar
      Merge branch '10GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue · 7bdaae27
      David S. Miller authored
      Jeff Kirsher says:
      
      ====================
      10GbE Intel Wired LAN Driver Updates 2018-10-03
      
      This series contains updates to ixgbe/ixgbevf and few fixes for i40e & iavf.
      
      Shannon Nelson fixes the message length for IPsec mailbox messages.
      
      Radoslaw fixes a transmit hang that occurs when XDP_TX exceeds the queue
      limit.  Fixes a crash when we restor flow director filters after a reset.
      
      YueHaibing cleans up dead code, which did not have any callers.
      
      Dan Carpenter fixes an "off by one" error in IPsec for ixgbe.
      
      Nathan Chancellor fixes the i40e driver to use the correct enum for link
      speed.  Also remove a debug statement since it was not producing useful
      information and equated to always "TRUE".
      
      Most notably, Björn introduces zero-copy AF_XDP support for the ixgbe
      driver.  The ixgbe zero-copy code is located in its own file ixgbe_xsk.[ch],
      analogous to the i40e ZC support. Again, as in i40e, code paths have
      been copied from the XDP path to the zero-copy path. Going forward we
      will try to generalize more code between the AF_XDP ZC drivers, and
      also reduce the heavy C&P.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7bdaae27
    • Song Liu's avatar
      ixgbe: check return value of napi_complete_done() · 4233cfe6
      Song Liu authored
      The NIC driver should only enable interrupts when napi_complete_done()
      returns true. This patch adds the check for ixgbe.
      
      Cc: stable@vger.kernel.org # 4.10+
      Suggested-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarSong Liu <songliubraving@fb.com>
      Tested-by: default avatarAndrew Bowers <andrewx.bowers@intel.com>
      Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4233cfe6
    • Rami Rosen's avatar
      iavf: fix a typo · 37ebb5fa
      Rami Rosen authored
      This trivial patch fixes a typo in iavf.h.
      Signed-off-by: default avatarRami Rosen <ramirose@gmail.com>
      Acked-by: default avatarJesse Brandeburg <jesse.brandeburg@intel.com>
      Tested-by: default avatarAndrew Bowers <andrewx.bowers@intel.com>
      Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
      37ebb5fa
    • Björn Töpel's avatar
      ixgbe: add AF_XDP zero-copy Tx support · 8221c5eb
      Björn Töpel authored
      This patch adds zero-copy Tx support for AF_XDP sockets. It implements
      the ndo_xsk_async_xmit netdev ndo and performs all the Tx logic from a
      NAPI context. This means pulling egress packets from the Tx ring,
      placing the frames on the NIC HW descriptor ring and completing sent
      frames back to the application via the completion ring.
      
      The regular XDP Tx ring is used for AF_XDP as well. This rationale for
      this is as follows: XDP_REDIRECT guarantees mutual exclusion between
      different NAPI contexts based on CPU id. In other words, a netdev can
      XDP_REDIRECT to another netdev with a different NAPI context, since
      the operation is bound to a specific core and each core has its own
      hardware ring.
      
      As the AF_XDP Tx action is running in the same NAPI context and using
      the same ring, it will also be protected from XDP_REDIRECT actions
      with the exact same mechanism.
      
      As with AF_XDP Rx, all AF_XDP Tx specific functions are added to
      ixgbe_xsk.c.
      Signed-off-by: default avatarBjörn Töpel <bjorn.topel@intel.com>
      Tested-by: default avatarWilliam Tu <u9012063@gmail.com>
      Tested-by: default avatarAndrew Bowers <andrewx.bowers@intel.com>
      Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
      8221c5eb