Skip to content
  1. Nov 29, 2020
    • Alex Elder's avatar
      net: ipa: add new most-significant bits to registers · 1af15c2a
      Alex Elder authored
      
      
      IPA v4.5 adds a few fields to the endpoint header and extended
      header configuration registers that represent new high-order bits
      for certain offsets and sizes.  Add code to incorporate these upper
      bits into the registers for IPA v4.5.
      
      This includes creating ipa_header_size_encoded(), which handles
      encoding the metadata offset field for use in the ENDP_INIT_HDR
      register in a way appropriate for the hardware version.  This and
      ipa_metadata_offset_encoded() ensure the mask argument passed to
      u32_encode_bits() is constant.
      
      Signed-off-by: default avatarAlex Elder <elder@linaro.org>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      1af15c2a
    • Alex Elder's avatar
      net: ipa: update IPA registers for IPA v4.5 · 5b6cd69e
      Alex Elder authored
      
      
      Update "ipa_reg.h" so that register definitions support IPA hardware
      version 4.5, in addition to versions 3.5.1 through v4.2.  Most of
      the register definitions are the same, but in some cases fields are
      added, changed, or eliminated.
      
      Updates for a few IPA v4.5 registers are more complex, and adding
      those definition will be deferred to separate patches.  This patch
      only updates the register offset and field definitions, and adds
      informational comments.
      
      The only code change avoids accessing the backward compatibility
      register for IPA version 4.5 in ipa_hardware_config().  Other IPA
      v4.5-specific code changes will come later.
      
      Signed-off-by: default avatarAlex Elder <elder@linaro.org>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      5b6cd69e
    • Alex Elder's avatar
      net: ipa: reverse logic on escape buffer use · 9f848198
      Alex Elder authored
      
      
      Starting with IPA v4.2 there is a GSI channel option to use an
      "escape buffer" instead of prefetch buffers.  This should be used
      for all channels *except* the AP command TX channel.  The logic
      that implements this has it backwards; fix this bug.
      
      Signed-off-by: default avatarAlex Elder <elder@linaro.org>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      9f848198
    • Marcelo Ricardo Leitner's avatar
      net/sched: act_ct: enable stats for HW offloaded entries · 3567e233
      Marcelo Ricardo Leitner authored
      By setting NF_FLOWTABLE_COUNTER. Otherwise, the updates added by
      commit ef803b3c ("netfilter: flowtable: add counter support in HW
      offload") are not effective when using act_ct.
      
      While at it, now that we have the flag set, protect the call to
      nf_ct_acct_update() by commit beb97d3a
      
       ("net/sched: act_ct: update
      nf_conn_acct for act_ct SW offload in flowtable") with the check on
      NF_FLOWTABLE_COUNTER, as also done on other places.
      
      Note that this shouldn't impact performance as these stats are only
      enabled when net.netfilter.nf_conntrack_acct is enabled.
      
      Signed-off-by: default avatarMarcelo Ricardo Leitner <marcelo.leitner@gmail.com>
      Acked-by: default avatarwenxu <wenxu@ucloud.cn>
      Acked-by: default avatarPablo Neira Ayuso <pablo@netfilter.org>
      Link: https://lore.kernel.org/r/481a65741261fd81b0a0813e698af163477467ec.1606415787.git.marcelo.leitner@gmail.com
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      3567e233
  2. Nov 28, 2020
    • Jakub Kicinski's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 5c39f26e
      Jakub Kicinski authored
      
      
      Trivial conflict in CAN, keep the net-next + the byteswap wrapper.
      
      Conflicts:
      	drivers/net/can/usb/gs_usb.c
      
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      5c39f26e
    • Jakub Kicinski's avatar
      Merge branch 'tipc-some-minor-improvements' · 6375da9d
      Jakub Kicinski authored
      
      
      Jon Maloy says:
      
      ====================
      tipc: some minor improvements
      
      We add some improvements that will be useful in future commits.
      ====================
      
      Link: https://lore.kernel.org/r/20201125182915.711370-1-jmaloy@redhat.com
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      6375da9d
    • Jon Maloy's avatar
      tipc: update address terminology in code · b6f88d9c
      Jon Maloy authored
      
      
      We update the terminology in the code so that deprecated structure
      names and macros are replaced with those currently recommended in
      the user API.
      
      struct tipc_portid   -> struct tipc_socket_addr
      struct tipc_name     -> struct tipc_service_addr
      struct tipc_name_seq -> struct tipc_service_range
      
      TIPC_ADDR_ID       -> TIPC_SOCKET_ADDR
      TIPC_ADDR_NAME     -> TIPC_SERVICE_ADDR
      TIPC_ADDR_NAMESEQ  -> TIPC_SERVICE_RANGE
      TIPC_CFG_SRV       -> TIPC_NODE_STATE
      
      Acked-by: default avatarYing Xue <ying.xue@windriver.com>
      Signed-off-by: default avatarJon Maloy <jmaloy@redhat.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      b6f88d9c
    • Jon Maloy's avatar
      tipc: make node number calculation reproducible · 5f75e0a0
      Jon Maloy authored
      
      
      The 32-bit node number, aka node hash or node address, is calculated
      based on the 128-bit node identity when it is not set explicitly by
      the user. In future commits we will need to perform this hash operation
      on peer nodes while feeling safe that we obtain the same result.
      
      We do this by interpreting the initial hash as a network byte order
      number. Whenever we need to use the number locally on a node
      we must therefore translate it to host byte order to obtain an
      architecure independent result.
      
      Furthermore, given the context where we use this number, we must not
      allow it to be zero unless the node identity also is zero. Hence, in
      the rare cases when the xor-ed hash value may end up as zero we replace
      it with a fix number, knowing that the code anyway is capable of
      handling hash collisions.
      
      Acked-by: default avatarYing Xue <ying.xue@windriver.com>
      Signed-off-by: default avatarJon Maloy <jmaloy@redhat.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      5f75e0a0
    • Jon Maloy's avatar
      tipc: refactor tipc_sk_bind() function · 60c102ee
      Jon Maloy authored
      
      
      We refactor the tipc_sk_bind() function, so that the lock handling
      is handled separately from the logics. We also move some sanity
      tests to earlier in the call chain, to the function tipc_bind().
      
      Acked-by: default avatarYing Xue <ying.xue@windriver.com>
      Signed-off-by: default avatarJon Maloy <jmaloy@redhat.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      60c102ee
    • Oleksij Rempel's avatar
      net: phy: micrel: fix interrupt handling · fff4c746
      Oleksij Rempel authored
      After migration to the shared interrupt support, the KSZ8031 PHY with
      enabled interrupt support was not able to notify about link status
      change.
      
      Fixes: 59ca4e58
      
       ("net: phy: micrel: implement generic .handle_interrupt() callback")
      Signed-off-by: default avatarOleksij Rempel <o.rempel@pengutronix.de>
      Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
      Link: https://lore.kernel.org/r/20201127123621.31234-1-o.rempel@pengutronix.de
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      fff4c746
    • Jakub Kicinski's avatar
      Merge branch 'net-x25-netdev-event-handling' · 35c58418
      Jakub Kicinski authored
      
      
      Martin Schiller says:
      
      ====================
      net/x25: netdev event handling
      ====================
      
      Link: https://lore.kernel.org/r/20201126063557.1283-1-ms@dev.tdt.de
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      35c58418
    • Martin Schiller's avatar
      net/x25: remove x25_kill_by_device() · 139d6eb1
      Martin Schiller authored
      
      
      Remove obsolete function x25_kill_by_device(). It's not used any more.
      
      Signed-off-by: default avatarMartin Schiller <ms@dev.tdt.de>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      139d6eb1
    • Martin Schiller's avatar
      net/x25: fix restart request/confirm handling · d023b2b9
      Martin Schiller authored
      
      
      We have to take the actual link state into account to handle
      restart requests/confirms well.
      
      Signed-off-by: default avatarMartin Schiller <ms@dev.tdt.de>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      d023b2b9
    • Martin Schiller's avatar
      net/lapb: fix t1 timer handling for LAPB_STATE_0 · 62480b99
      Martin Schiller authored
      
      
      1. DTE interface changes immediately to LAPB_STATE_1 and start sending
         SABM(E).
      
      2. DCE interface sends N2-times DM and changes to LAPB_STATE_1
         afterwards if there is no response in the meantime.
      
      Signed-off-by: default avatarMartin Schiller <ms@dev.tdt.de>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      62480b99
    • Martin Schiller's avatar
      net/lapb: support netdev events · a4989fa9
      Martin Schiller authored
      
      
      This patch allows layer2 (LAPB) to react to netdev events itself and
      avoids the detour via layer3 (X.25).
      
      1. Establish layer2 on NETDEV_UP events, if the carrier is already up.
      
      2. Call lapb_disconnect_request() on NETDEV_GOING_DOWN events to signal
         the peer that the connection will go down.
         (Only when the carrier is up.)
      
      3. When a NETDEV_DOWN event occur, clear all queues, enter state
         LAPB_STATE_0 and stop all timers.
      
      4. The NETDEV_CHANGE event makes it possible to handle carrier loss and
         detection.
      
         In case of Carrier Loss, clear all queues, enter state LAPB_STATE_0
         and stop all timers.
      
         In case of Carrier Detection, we start timer t1 on a DCE interface,
         and on a DTE interface we change to state LAPB_STATE_1 and start
         sending SABM(E).
      
      Signed-off-by: default avatarMartin Schiller <ms@dev.tdt.de>
      Acked-by: default avatarXie He <xie.he.0141@gmail.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      a4989fa9
    • Martin Schiller's avatar
      net/x25: handle additional netdev events · 7eed751b
      Martin Schiller authored
      
      
      1. Add / remove x25_link_device by NETDEV_REGISTER/UNREGISTER and also
         by NETDEV_POST_TYPE_CHANGE/NETDEV_PRE_TYPE_CHANGE.
      
         This change is needed so that the x25_neigh struct for an interface
         is already created when it shows up and is kept independently if the
         interface goes UP or DOWN.
      
         This is used in an upcomming commit, where x25 params of an neighbour
         will get configurable through ioctls.
      
      2. NETDEV_CHANGE event makes it possible to handle carrier loss and
         detection. If carrier is lost, clean up everything related to this
         neighbour by calling x25_link_terminated().
      
      3. Also call x25_link_terminated() for NETDEV_DOWN events and remove the
         call to x25_clear_forward_by_dev() in x25_route_device_down(), as
         this is already called by x25_kill_by_neigh() which gets called by
         x25_link_terminated().
      
      4. Do nothing for NETDEV_UP and NETDEV_GOING_DOWN events, as these will
         be handled in layer 2 (LAPB) and layer3 (X.25) will be informed by
         layer2 when layer2 link is established and layer3 link should be
         initiated.
      
      Signed-off-by: default avatarMartin Schiller <ms@dev.tdt.de>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      7eed751b
    • Jakub Kicinski's avatar
      Merge branch 'mlxsw-update-adjacency-index-more-efficiently' · f5d709ff
      Jakub Kicinski authored
      
      
      Ido Schimmel says:
      
      ====================
      mlxsw: Update adjacency index more efficiently
      
      The device supports an operation that allows the driver to issue one
      request to update the adjacency index for all the routes in a given
      virtual router (VR) from old index and size to new ones. This is useful
      in case the configuration of a certain nexthop group is updated and its
      adjacency index changes.
      
      Currently, the driver does not use this operation in an efficient
      manner. It iterates over all the routes using the nexthop group and
      issues an update request for the VR if it is not the same as the
      previous VR.
      
      Instead, this patch set tracks the VRs in which the nexthop group is
      used and issues one request for each VR.
      
      Example:
      
      8k IPv6 routes were added in an alternating manner to two VRFs. All the
      routes are using the same nexthop object ('nhid 1').
      
      Before:
      
       Performance counter stats for 'ip nexthop replace id 1 via 2001:db8:1::2 dev swp3':
      
                  16,385      devlink:devlink_hwmsg
      
             4.255933213 seconds time elapsed
      
             0.000000000 seconds user
             0.666923000 seconds sys
      
      Number of EMAD transactions corresponds to number of routes using the
      nexthop group.
      
      After:
      
       Performance counter stats for 'ip nexthop replace id 1 via 2001:db8:1::2 dev swp3':
      
                       3      devlink:devlink_hwmsg
      
             0.077655094 seconds time elapsed
      
             0.000000000 seconds user
             0.076698000 seconds sys
      
      Number of EMAD transactions corresponds to number of VRFs / VRs.
      
      Patch set overview:
      
      Patch #1 is a fix for a bug introduced in previous submission. Detected
      by Coverity.
      
      Patches #2 and #3 are preparations.
      
      Patch #4 tracks the VRs a nexthop group is member of.
      
      Patch #5 uses the membership tracking from the previous patch to issue
      one update request per each VR.
      ====================
      
      Link: https://lore.kernel.org/r/20201125193505.1052466-1-idosch@idosch.org
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      f5d709ff
    • Ido Schimmel's avatar
      mlxsw: spectrum_router: Update adjacency index more efficiently · ff47fa13
      Ido Schimmel authored
      
      
      The device supports an operation that allows the driver to issue one
      request to update the adjacency index for all the routes in a given
      virtual router (VR) from old index and size to new ones. This is useful
      in case the configuration of a certain nexthop group is updated and its
      adjacency index changes.
      
      Currently, the driver does not use this operation in an efficient
      manner. It iterates over all the routes using the nexthop group and
      issues an update request for the VR if it is not the same as the
      previous VR.
      
      Instead, use the VR tracking added in the previous patch to update the
      adjacency index once for each VR currently using the nexthop group.
      
      Example:
      
      8k IPv6 routes were added in an alternating manner to two VRFs. All the
      routes are using the same nexthop object ('nhid 1').
      
      Before:
      
      # perf stat -e devlink:devlink_hwmsg --filter='incoming==0' -- ip nexthop replace id 1 via 2001:db8:1::2 dev swp3
      
       Performance counter stats for 'ip nexthop replace id 1 via 2001:db8:1::2 dev swp3':
      
                  16,385      devlink:devlink_hwmsg
      
             4.255933213 seconds time elapsed
      
             0.000000000 seconds user
             0.666923000 seconds sys
      
      Number of EMAD transactions corresponds to number of routes using the
      nexthop group.
      
      After:
      
      # perf stat -e devlink:devlink_hwmsg --filter='incoming==0' -- ip nexthop replace id 1 via 2001:db8:1::2 dev swp3
      
       Performance counter stats for 'ip nexthop replace id 1 via 2001:db8:1::2 dev swp3':
      
                       3      devlink:devlink_hwmsg
      
             0.077655094 seconds time elapsed
      
             0.000000000 seconds user
             0.076698000 seconds sys
      
      Number of EMAD transactions corresponds to number of VRFs / VRs.
      
      Signed-off-by: default avatarIdo Schimmel <idosch@nvidia.com>
      Reviewed-by: default avatarJiri Pirko <jiri@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      ff47fa13
    • Ido Schimmel's avatar
      mlxsw: spectrum_router: Track nexthop group virtual router membership · d2141a42
      Ido Schimmel authored
      
      
      For each nexthop group, track in which virtual routers (VRs) the group is
      used. This is going to be used by the next patch to perform a more
      efficient adjacency index update whenever the group's adjacency index
      changes.
      
      Signed-off-by: default avatarIdo Schimmel <idosch@nvidia.com>
      Reviewed-by: default avatarJiri Pirko <jiri@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      d2141a42
    • Ido Schimmel's avatar
      mlxsw: spectrum_router: Rollback virtual router adjacency pointer update · 9a4ab10c
      Ido Schimmel authored
      
      
      In the rare case where the adjacency pointer cannot be updated for a
      given virtual router, rollback the operation so that virtual routers
      that are already using the new index will use the old one again.
      
      Signed-off-by: default avatarIdo Schimmel <idosch@nvidia.com>
      Reviewed-by: default avatarJiri Pirko <jiri@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      9a4ab10c
    • Ido Schimmel's avatar
      mlxsw: spectrum_router: Pass virtual router parameters directly instead of pointer · 40e4413d
      Ido Schimmel authored
      
      
      mlxsw_sp_adj_index_mass_update_vr() only needs the virtual router's
      identifier and protocol, so pass them directly. In a subsequent patch
      the caller will not have access to the pointer.
      
      Signed-off-by: default avatarIdo Schimmel <idosch@nvidia.com>
      Reviewed-by: default avatarJiri Pirko <jiri@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      40e4413d
    • Ido Schimmel's avatar
      mlxsw: spectrum_router: Fix error handling issue · 1c2c5eb6
      Ido Schimmel authored
      Return error to the caller instead of suppressing it.
      
      Fixes: e3ddfb45
      
       ("mlxsw: spectrum_router: Allow returning errors from mlxsw_sp_nexthop_group_refresh()")
      Addresses-Coverity: ("Error handling issues  (CHECKED_RETURN)")
      Signed-off-by: default avatarIdo Schimmel <idosch@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      1c2c5eb6
    • Linus Torvalds's avatar
      Merge tag 'asm-generic-fixes-5.10-2' of... · c84e1efa
      Linus Torvalds authored
      Merge tag 'asm-generic-fixes-5.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic
      
      Pull asm-generic fix from Arnd Bergmann:
       "Add correct MAX_POSSIBLE_PHYSMEM_BITS setting to asm-generic.
      
        This is a single bugfix for a bug that Stefan Agner found on 32-bit
        Arm, but that exists on several other architectures"
      
      * tag 'asm-generic-fixes-5.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
        arch: pgtable: define MAX_POSSIBLE_PHYSMEM_BITS where needed
      c84e1efa
    • Linus Torvalds's avatar
      Merge tag 'arm-soc-fixes-v5.10-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 303bc934
      Linus Torvalds authored
      Pull ARM SoC fixes from Arnd Bergmann:
       "Another set of patches for devicetree files and Arm SoC specific
        drivers:
      
         - A fix for OP-TEE shared memory on non-SMP systems
      
         - multiple code fixes for the OMAP platform, including one regression
           for the CPSW network driver and a few runtime warning fixes
      
         - Some DT patches for the Rockchip RK3399 platform, in particular
           fixing the MMC device ordering that recently became
           nondeterministic with async probe.
      
         - Multiple DT fixes for the Tegra platform, including a regression
           fix for suspend/resume on TX2
      
         - A regression fix for a user-triggered fault in the NXP dpio driver
      
         - A regression fix for a bug caused by an earlier bug fix in the
           xilinx firmware driver
      
         - Two more DTC warning fixes
      
         - Sylvain Lemieux steps down as maintainer for the NXP LPC32xx
           platform"
      
      * tag 'arm-soc-fixes-v5.10-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (24 commits)
        arm64: tegra: Fix Tegra234 VDK node names
        arm64: tegra: Wrong AON HSP reg property size
        arm64: tegra: Fix USB_VBUS_EN0 regulator on Jetson TX1
        arm64: tegra: Correct the UART for Jetson Xavier NX
        arm64: tegra: Disable the ACONNECT for Jetson TX2
        optee: add writeback to valid memory type
        firmware: xilinx: Use hash-table for api feature check
        firmware: xilinx: Fix SD DLL node reset issue
        soc: fsl: dpio: Get the cpumask through cpumask_of(cpu)
        ARM: dts: dra76x: m_can: fix order of clocks
        bus: ti-sysc: suppress err msg for timers used as clockevent/source
        MAINTAINERS: Remove myself as LPC32xx maintainers
        arm64: dts: qcom: clear the warnings caused by empty dma-ranges
        arm64: dts: broadcom: clear the warnings caused by empty dma-ranges
        ARM: dts: am437x-l4: fix compatible for cpsw switch dt node
        arm64: dts: rockchip: Reorder LED triggers from mmc devices on rk3399-roc-pc.
        arm64: dts: rockchip: Assign a fixed index to mmc devices on rk3399 boards.
        arm64: dts: rockchip: Remove system-power-controller from pmic on Odroid Go Advance
        arm64: dts: rockchip: fix NanoPi R2S GMAC clock name
        ARM: OMAP2+: Manage MPU state properly for omap_enter_idle_coupled()
        ...
      303bc934
    • Linus Torvalds's avatar
      Merge tag 'net-5.10-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 79c0c1f0
      Linus Torvalds authored
      Pull networking fixes from Jakub Kicinski:
       "Networking fixes for 5.10-rc6, including fixes from the WiFi driver,
        and CAN subtrees.
      
        Current release - regressions:
      
         - gro_cells: reduce number of synchronize_net() calls
      
         - ch_ktls: release a lock before jumping to an error path
      
        Current release - always broken:
      
         - tcp: Allow full IP tos/IPv6 tclass to be reflected in L3 header
      
        Previous release - regressions:
      
         - net/tls: fix missing received data after fast remote close
      
         - vsock/virtio: discard packets only when socket is really closed
      
         - sock: set sk_err to ee_errno on dequeue from errq
      
         - cxgb4: fix the panic caused by non smac rewrite
      
        Previous release - always broken:
      
         - tcp: fix corner cases around setting ECN with BPF selection of
           congestion control
      
         - tcp: fix race condition when creating child sockets from syncookies
           on loopback interface
      
         - usbnet: ipheth: fix connectivity with iOS 14
      
         - tun: honor IOCB_NOWAIT flag
      
         - net/packet: fix packet receive on L3 devices without visible hard
           header
      
         - devlink: Make sure devlink instance and port are in same net
           namespace
      
         - net: openvswitch: fix TTL decrement action netlink message format
      
         - bonding: wait for sysfs kobject destruction before freeing struct
           slave
      
         - net: stmmac: fix upstream patch applied to the wrong context
      
         - bnxt_en: fix return value and unwind in probe error paths
      
        Misc:
      
         - devlink: add extra layer of categorization to the reload stats uAPI
           before it's released"
      
      * tag 'net-5.10-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (68 commits)
        sock: set sk_err to ee_errno on dequeue from errq
        mptcp: fix NULL ptr dereference on bad MPJ
        net: openvswitch: fix TTL decrement action netlink message format
        can: af_can: can_rx_unregister(): remove WARN() statement from list operation sanity check
        can: m_can: m_can_dev_setup(): add support for bosch mcan version 3.3.0
        can: m_can: fix nominal bitiming tseg2 min for version >= 3.1
        can: m_can: m_can_open(): remove IRQF_TRIGGER_FALLING from request_threaded_irq()'s flags
        can: mcp251xfd: mcp251xfd_probe(): bail out if no IRQ was given
        can: gs_usb: fix endianess problem with candleLight firmware
        ch_ktls: lock is not freed
        net/tls: Protect from calling tls_dev_del for TLS RX twice
        devlink: Make sure devlink instance and port are in same net namespace
        devlink: Hold rtnl lock while reading netdev attributes
        ptp: clockmatrix: bug fix for idtcm_strverscmp
        enetc: Let the hardware auto-advance the taprio base-time of 0
        gro_cells: reduce number of synchronize_net() calls
        net: stmmac: fix incorrect merge of patch upstream
        ipv6: addrlabel: fix possible memory leak in ip6addrlbl_net_init
        Documentation: netdev-FAQ: suggest how to post co-dependent series
        ibmvnic: enhance resetting status check during module exit
        ...
      79c0c1f0
    • Jakub Kicinski's avatar
      Merge branch 'net-sched-fix-over-mtu-packet-of-defrag-in' · 4be074e6
      Jakub Kicinski authored
      
      
      wenxu says:
      
      ====================
      net/sched: fix over mtu packet of defrag in
      
      Currently kernel tc subsystem can do conntrack in act_ct. But when several
      fragment packets go through the act_ct, function tcf_ct_handle_fragments
      will defrag the packets to a big one. But the last action will redirect
      mirred to a device which maybe lead the reassembly big packet over the mtu
      of target device.
      
      The first patch fix miss init the qdisc_skb_cb->mru
      The send one refactor the hanle of xmit in act_mirred and prepare for the
      third one
      The last one add implict packet fragment support to fix the over mtu for
      defrag in act_ct.
      ====================
      
      Link: https://lore.kernel.org/r/1606276883-6825-1-git-send-email-wenxu@ucloud.cn
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      4be074e6
    • wenxu's avatar
      net/sched: sch_frag: add generic packet fragment support. · c129412f
      wenxu authored
      
      
      Currently kernel tc subsystem can do conntrack in cat_ct. But when several
      fragment packets go through the act_ct, function tcf_ct_handle_fragments
      will defrag the packets to a big one. But the last action will redirect
      mirred to a device which maybe lead the reassembly big packet over the mtu
      of target device.
      
      This patch add support for a xmit hook to mirred, that gets executed before
      xmiting the packet. Then, when act_ct gets loaded, it configs that hook.
      The frag xmit hook maybe reused by other modules.
      
      Signed-off-by: default avatarwenxu <wenxu@ucloud.cn>
      Acked-by: default avatarCong Wang <cong.wang@bytedance.com>
      Acked-by: default avatarJamal Hadi Salim <jhs@mojatatu.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      c129412f
    • wenxu's avatar
      net/sched: act_mirred: refactor the handle of xmit · fa6d6399
      wenxu authored
      
      
      This one is prepare for the next patch.
      
      Signed-off-by: default avatarwenxu <wenxu@ucloud.cn>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      fa6d6399
    • wenxu's avatar
      net/sched: fix miss init the mru in qdisc_skb_cb · aadaca9e
      wenxu authored
      The mru in the qdisc_skb_cb should be init as 0. Only defrag packets in the
      act_ct will set the value.
      
      Fixes: 038ebb1a
      
       ("net/sched: act_ct: fix miss set mru for ovs after defrag in act_ct")
      Signed-off-by: default avatarwenxu <wenxu@ucloud.cn>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      aadaca9e
    • Jakub Kicinski's avatar
      Merge branch 'add-chacha20-poly1305-cipher-to-kernel-tls' · fb3158ea
      Jakub Kicinski authored
      
      
      Vadim Fedorenko says:
      
      ====================
      Add CHACHA20-POLY1305 cipher to Kernel TLS
      
      RFC 7905 defines usage of ChaCha20-Poly1305 in TLS connections. This
      cipher is widely used nowadays and it's good to have a support for it
      in TLS connections in kernel.
      ====================
      
      Link: https://lore.kernel.org/r/1606231490-653-1-git-send-email-vfedorenko@novek.ru
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      fb3158ea
    • Vadim Fedorenko's avatar
      selftests/tls: add CHACHA20-POLY1305 to tls selftests · 4f336e88
      Vadim Fedorenko authored
      
      
      Add new cipher as a variant of standard tls selftests
      
      Signed-off-by: default avatarVadim Fedorenko <vfedorenko@novek.ru>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      4f336e88
    • Vadim Fedorenko's avatar
      net/tls: add CHACHA20-POLY1305 configuration · 74ea6106
      Vadim Fedorenko authored
      
      
      Add ChaCha-Poly specific configuration code.
      
      Signed-off-by: default avatarVadim Fedorenko <vfedorenko@novek.ru>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      74ea6106
    • Vadim Fedorenko's avatar
      net/tls: add CHACHA20-POLY1305 specific behavior · a6acbe62
      Vadim Fedorenko authored
      
      
      RFC 7905 defines special behavior for ChaCha-Poly TLS sessions.
      The differences are in the calculation of nonce and the absence
      of explicit IV. This behavior is like TLSv1.3 partly.
      
      Signed-off-by: default avatarVadim Fedorenko <vfedorenko@novek.ru>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      a6acbe62
    • Vadim Fedorenko's avatar
      net/tls: add CHACHA20-POLY1305 specific defines and structures · 923c40c4
      Vadim Fedorenko authored
      
      
      To provide support for ChaCha-Poly cipher we need to define
      specific constants and structures.
      
      Signed-off-by: default avatarVadim Fedorenko <vfedorenko@novek.ru>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      923c40c4
    • Vadim Fedorenko's avatar
      net/tls: make inline helpers protocol-aware · 6942a284
      Vadim Fedorenko authored
      
      
      Inline functions defined in tls.h have a lot of AES-specific
      constants. Remove these constants and change argument to struct
      tls_prot_info to have an access to cipher type in later patches
      
      Signed-off-by: default avatarVadim Fedorenko <vfedorenko@novek.ru>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      6942a284
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 80e1e176
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Three small fixes in the UFS driver: two are for power management
        issues and the third is to fix a slew of problem in the sysfs code"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: ufs: Fix race between shutdown and runtime resume flow
        scsi: ufs: Make sure clk scaling happens only when HBA is runtime ACTIVE
        scsi: ufs: Fix unexpected values from ufshcd_read_desc_param()
      80e1e176
    • Linus Torvalds's avatar
      Merge tag 'io_uring-5.10-2020-11-27' of git://git.kernel.dk/linux-block · 9223e74f
      Linus Torvalds authored
      Pull io_uring fixes from Jens Axboe:
      
       - Out of bounds fix for the cq size cap from earlier this release (Joseph)
      
       - iov_iter type check fix (Pavel)
      
       - Files grab + cancelation fix (Pavel)
      
      * tag 'io_uring-5.10-2020-11-27' of git://git.kernel.dk/linux-block:
        io_uring: fix files grab/cancel race
        io_uring: fix ITER_BVEC check
        io_uring: fix shift-out-of-bounds when round up cq size
      9223e74f
    • Linus Torvalds's avatar
      Merge tag 'block-5.10-2020-11-27' of git://git.kernel.dk/linux-block · d021c3e5
      Linus Torvalds authored
      Pull block fix from Jens Axboe:
       "Just a single fix, for a crash in the keyslot manager"
      
      * tag 'block-5.10-2020-11-27' of git://git.kernel.dk/linux-block:
        block/keyslot-manager: prevent crash when num_slots=1
      d021c3e5
    • Linus Torvalds's avatar
      Merge tag 'for-5.10-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · a17a3ca5
      Linus Torvalds authored
      Pull btrfs fixes from David Sterba:
       "A few fixes for various warnings that accumulated over past two weeks:
      
         - tree-checker: add missing return values for some errors
      
         - lockdep fixes
            - when reading qgroup config and starting quota rescan
            - reverse order of quota ioctl lock and VFS freeze lock
      
         - avoid accessing potentially stale fs info during device scan,
           reported by syzbot
      
         - add scope NOFS protection around qgroup relation changes
      
         - check for running transaction before flushing qgroups
      
         - fix tracking of new delalloc ranges for some cases"
      
      * tag 'for-5.10-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        btrfs: fix lockdep splat when enabling and disabling qgroups
        btrfs: do nofs allocations when adding and removing qgroup relations
        btrfs: fix lockdep splat when reading qgroup config on mount
        btrfs: tree-checker: add missing returns after data_ref alignment checks
        btrfs: don't access possibly stale fs_info data for printing duplicate device
        btrfs: tree-checker: add missing return after error in root_item
        btrfs: qgroup: don't commit transaction when we already hold the handle
        btrfs: fix missing delalloc new bit for new delalloc ranges
      a17a3ca5
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · d41e9b22
      Linus Torvalds authored
      Pull rdma fixes from Jason Gunthorpe:
       "Two security issues and several small bug fixes. Things seem to have
        stabilized for this release here.
      
        Summary:
      
         - Significant out of bounds access security issue in i40iw
      
         - Fix misuse of mmu notifiers in hfi1
      
         - Several errors in the register map/usage in hns
      
         - Missing error returns in mthca"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
        RDMA/hns: Bugfix for memory window mtpt configuration
        RDMA/hns: Fix retry_cnt and rnr_cnt when querying QP
        RDMA/hns: Fix wrong field of SRQ number the device supports
        IB/hfi1: Ensure correct mm is used at all times
        RDMA/i40iw: Address an mmap handler exploit in i40iw
        IB/mthca: fix return value of error branch in mthca_init_cq()
      d41e9b22