1. 25 11月, 2020 6 次提交
    • I
      mlxsw: spectrum_router: Resolve RIF from nexthop struct instead of neighbour · 18c4b79d
      Ido Schimmel 提交于
      The two are the same, but for blackhole nexthops we will not have an
      associated neighbour struct, so resolve the RIF from the nexthop struct
      itself instead.
      Signed-off-by: NIdo Schimmel <idosch@nvidia.com>
      Reviewed-by: NJiri Pirko <jiri@nvidia.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      18c4b79d
    • I
      mlxsw: spectrum_router: Use loopback RIF for unresolved nexthops · 919f6aaa
      Ido Schimmel 提交于
      Now that the driver creates a loopback RIF during its initialization, it
      can be used to program the adjacency entries for unresolved nexthops
      instead of other RIFs. The loopback RIF is guaranteed to exist for the
      entire life time of the driver, unlike other RIFs that come and go.
      Signed-off-by: NIdo Schimmel <idosch@nvidia.com>
      Reviewed-by: NJiri Pirko <jiri@nvidia.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      919f6aaa
    • I
      mlxsw: spectrum_router: Use different trap identifier for unresolved nexthops · 52d45575
      Ido Schimmel 提交于
      Unresolved nexthops are currently written to the adjacency table with a
      discard action. Packets hitting such entries are trapped to the CPU via
      the 'DISCARD_ROUTER3' trap which can be enabled or disabled on demand,
      but is always enabled in order to ensure the kernel can resolve the
      unresolved neighbours.
      
      This trap will be needed for blackhole nexthops support. Therefore, move
      unresolved nexthops to explicitly program the adjacency entries with a
      trap action and a different trap identifier, 'RTR_EGRESS0'.
      Signed-off-by: NIdo Schimmel <idosch@nvidia.com>
      Reviewed-by: NJiri Pirko <jiri@nvidia.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      52d45575
    • I
      mlxsw: spectrum_router: Create loopback RIF during initialization · 07c78536
      Ido Schimmel 提交于
      Up until now RIFs (router interfaces) were created on demand (e.g.,
      when an IP address was added to a netdev). However, sometimes the device
      needs to be provided with a RIF when one might not be available.
      
      For example, adjacency entries that drop packets need to be programmed
      with an egress RIF despite the RIF not being used to forward packets.
      
      Create such a RIF during initialization so that it could be used later
      on to support blackhole nexthops.
      Signed-off-by: NIdo Schimmel <idosch@nvidia.com>
      Reviewed-by: NJiri Pirko <jiri@nvidia.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      07c78536
    • J
      Merge tag 'rxrpc-next-20201123' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs · 23c01ed3
      Jakub Kicinski 提交于
      David Howells says:
      
      ====================
      rxrpc: Prelude to gssapi support
      
      Here are some patches that do some reorganisation of the security class
      handling in rxrpc to allow implementation of the RxGK security class that
      will allow AF_RXRPC to use GSSAPI-negotiated tokens and better crypto.  The
      RxGK security class is not included in this patchset.
      
      It does the following things:
      
       (1) Add a keyrings patch to provide the original key description, as
           provided to add_key(), to the payload preparser so that it can
           interpret the content on that basis.  Unfortunately, the rxrpc_s key
           type wasn't written to interpret its payload as anything other than a
           string of bytes comprising a key, but for RxGK, more information is
           required as multiple Kerberos enctypes are supported.
      
       (2) Remove the rxk5 security class key parsing.  The rxk5 class never got
           rolled out in OpenAFS and got replaced with rxgk.
      
       (3) Support the creation of rxrpc keys with multiple tokens of different
           types.  If some types are not supported, the ENOPKG error is
           suppressed if at least one other token's type is supported.
      
       (4) Punt the handling of server keys (rxrpc_s type) to the appropriate
           security class.
      
       (5) Organise the security bits in the rxrpc_connection struct into a
           union to make it easier to override for other classes.
      
       (6) Move some bits from core code into rxkad that won't be appropriate to
           rxgk.
      
      * tag 'rxrpc-next-20201123' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
        rxrpc: Ask the security class how much space to allow in a packet
        rxrpc: rxkad: Don't use pskb_pull() to advance through the response packet
        rxrpc: Organise connection security to use a union
        rxrpc: Don't reserve security header in Tx DATA skbuff
        rxrpc: Merge prime_packet_security into init_connection_security
        rxrpc: Fix example key name in a comment
        rxrpc: Ignore unknown tokens in key payload unless no known tokens
        rxrpc: Make the parsing of xdr payloads more coherent
        rxrpc: Allow security classes to give more info on server keys
        rxrpc: Don't leak the service-side session key to userspace
        rxrpc: Hand server key parsing off to the security class
        rxrpc: Split the server key type (rxrpc_s) into its own file
        rxrpc: Don't retain the server key in the connection
        rxrpc: Support keys with multiple authentication tokens
        rxrpc: List the held token types in the key description in /proc/keys
        rxrpc: Remove the rxk5 security class as it's now defunct
        keys: Provide the original description to the key preparser
      ====================
      
      Link: https://lore.kernel.org/r/160616220405.830164.2239716599743995145.stgit@warthog.procyon.org.ukSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      23c01ed3
    • V
      net: stmmac: Use hrtimer for TX coalescing · d5a05e69
      Vincent Whitchurch 提交于
      This driver uses a normal timer for TX coalescing, which means that the
      with the default tx-usecs of 1000 microseconds the cleanups actually
      happen 10 ms or more later with HZ=100.  This leads to very low
      througput with TCP when bridged to a slow link such as a 4G modem.  Fix
      this by using an hrtimer instead.
      
      On my ARM platform with HZ=100 and the default TX coalescing settings
      (tx-frames 25 tx-usecs 1000), with "tc qdisc add dev eth0 root netem
      delay 60ms 40ms rate 50Mbit" run on the server, netperf's TCP_STREAM
      improves from ~5.5 Mbps to ~100 Mbps.
      Signed-off-by: NVincent Whitchurch <vincent.whitchurch@axis.com>
      Link: https://lore.kernel.org/r/20201120150208.6838-1-vincent.whitchurch@axis.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      d5a05e69
  2. 24 11月, 2020 30 次提交
  3. 22 11月, 2020 4 次提交
    • G
      octeontx2-af: Add support for RSS hashing based on Transport protocol field · f9e425e9
      George Cherian 提交于
      Add support to choose RSS flow key algorithm with IPv4 transport protocol
      field included in hashing input data. This will be enabled by default.
      There-by enabling 3/5 tuple hash
      Signed-off-by: NSunil Kovvuri Goutham <sgoutham@marvell.com>
      Signed-off-by: NGeorge Cherian <george.cherian@marvell.com>
      Link: https://lore.kernel.org/r/20201120093906.2873616-1-george.cherian@marvell.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      f9e425e9
    • J
      Merge tag 'linux-can-next-for-5.11-20201120' of... · 5e087239
      Jakub Kicinski 提交于
      Merge tag 'linux-can-next-for-5.11-20201120' of git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can-next
      
      Marc Kleine-Budde says:
      
      ====================
      pull-request: can-next 2020-11-20
      
      The first patch is by Yegor Yefremov and he improves the j1939 documentaton by
      adding tables for the CAN identifier and its fields.
      
      Then there are 8 patches by Oliver Hartkopp targeting the CAN driver
      infrastructure and drivers. These add support for optional DLC element to the
      Classical CAN frame structure. See patch ea780056 ("can: add optional DLC
      element to Classical CAN frame structure") for details. Oliver's last patch
      adds len8_dlc support to several drivers. Stefan Mätje provides a patch to add
      len8_dlc support to the esd_usb2 driver.
      
      The next patch is by Oliver Hartkopp, too and adds support for modification of
      Classical CAN DLCs to CAN GW sockets.
      
      The next 3 patches target the nxp,flexcan DT bindings. One patch by my adds the
      missing uint32 reference to the clock-frequency property. Joakim Zhang's
      patches fix the fsl,clk-source property and add the IMX_SC_R_CAN() macro to the
      imx firmware header file, which will be used in the flexcan driver later.
      
      Another patch by Joakim Zhang prepares the flexcan driver for SCU based
      stop-mode, by giving the existing, GPR based stop-mode, a _GPR postfix.
      
      The next 5 patches are by me, target the flexcan driver, and clean up the
      .ndo_open and .ndo_stop callbacks. These patches try to fix a sporadically
      hanging flexcan_close() during simultanious ifdown, sending of CAN messages and
      probably open CAN bus. I was never able to reproduce, but these seem to fix the
      problem at the reporting user. As these changes are rather big, I'd like to
      mainline them via net-next/master.
      
      The next patches are by Jimmy Assarsson and Christer Beskow, they add support
      for new USB devices to the existing kvaser_usb driver.
      
      The last patch is by Kaixu Xia and simplifies the return in the
      mcp251xfd_chip_softreset() function in the mcp251xfd driver.
      
      * tag 'linux-can-next-for-5.11-20201120' of git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can-next: (25 commits)
        can: mcp251xfd: remove useless code in mcp251xfd_chip_softreset
        can: kvaser_usb: Add new Kvaser hydra devices
        can: kvaser_usb: kvaser_usb_hydra: Add support for new device variant
        can: kvaser_usb: Add new Kvaser Leaf v2 devices
        can: kvaser_usb: Add USB_{LEAF,HYDRA}_PRODUCT_ID_END defines
        can: flexcan: flexcan_close(): change order if commands to properly shut down the controller
        can: flexcan: flexcan_open(): completely initialize controller before requesting IRQ
        can: flexcan: flexcan_rx_offload_setup(): factor out mailbox and rx-offload setup into separate function
        can: flexcan: move enabling/disabling of interrupts from flexcan_chip_{start,stop}() to callers
        can: flexcan: factor out enabling and disabling of interrupts into separate function
        can: flexcan: rename macro FLEXCAN_QUIRK_SETUP_STOP_MODE -> FLEXCAN_QUIRK_SETUP_STOP_MODE_GPR
        dt-bindings: firmware: add IMX_SC_R_CAN(x) macro for CAN
        dt-bindings: can: fsl,flexcan: fix fsl,clk-source property
        dt-bindings: can: fsl,flexcan: add uint32 reference to clock-frequency property
        can: gw: support modification of Classical CAN DLCs
        can: drivers: add len8_dlc support for esd_usb2 CAN adapter
        can: drivers: add len8_dlc support for various CAN adapters
        can: drivers: introduce helpers to access Classical CAN DLC values
        can: update documentation for DLC usage in Classical CAN
        can: rename CAN FD related can_len2dlc and can_dlc2len helpers
        ...
      ====================
      
      Link: https://lore.kernel.org/r/20201120133318.3428231-1-mkl@pengutronix.deSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      5e087239
    • H
      net: bridge: switch to net core statistics counters handling · 7609ecb2
      Heiner Kallweit 提交于
      Use netdev->tstats instead of a member of net_bridge for storing
      a pointer to the per-cpu counters. This allows us to use core
      functionality for statistics handling.
      Signed-off-by: NHeiner Kallweit <hkallweit1@gmail.com>
      Link: https://lore.kernel.org/r/9bad2be2-fd84-7c6e-912f-cee433787018@gmail.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      7609ecb2
    • J
      Merge branch 'net-hns3-misc-updates-for-next' · 9c89cc9b
      Jakub Kicinski 提交于
      Huazhong Tan says:
      
      ====================
      net: hns3: misc updates for -next
      
      This series includes some misc updates for the HNS3 ethernet driver.
      
       #1 adds support for 1280 queues
       #2 adds mapping for BAR45 which is needed by RoCE client.
       #3 extend the interrupt resources.
       #4&#5 add support to query firmware's calculated shaping parameters.
      ====================
      
      Link: https://lore.kernel.org/r/1605863783-36995-1-git-send-email-tanhuazhong@huawei.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      9c89cc9b