1. 08 12月, 2020 2 次提交
  2. 07 12月, 2020 6 次提交
  3. 06 12月, 2020 9 次提交
  4. 05 12月, 2020 4 次提交
  5. 04 12月, 2020 11 次提交
    • L
      net/mlx5: Register mlx5 devices to auxiliary virtual bus · a925b5e3
      Leon Romanovsky 提交于
      Create auxiliary devices under new virtual bus. This will replace
      the custom-made mlx5 ->add()/->remove() interfaces and next patches
      will fill the missing callback and remove the old interface logic.
      
      The attachment of auxiliary drivers to the devices is possible in
      1-to-1 manner only and it requires us to create device for every protocol,
      so that device (module) will be able to connect to it.
      
      System with 2 IB and 1 RoCE cards:
      [leonro@vm ~]$ lspci |grep nox
      00:09.0 Ethernet controller: Mellanox Technologies MT27800 Family [ConnectX-5]
      00:0a.0 Ethernet controller: Mellanox Technologies MT28908 Family [ConnectX-6]
      00:0b.0 Ethernet controller: Mellanox Technologies MT2910 Family [ConnectX-7]
      [leonro@vm ~]$ ls -l /sys/bus/auxiliary/devices/
       mlx5_core.eth.2 -> ../../../devices/pci0000:00/0000:00:0b.0/mlx5_core.eth.2
       mlx5_core.rdma.0 -> ../../../devices/pci0000:00/0000:00:09.0/mlx5_core.rdma.0
       mlx5_core.rdma.1 -> ../../../devices/pci0000:00/0000:00:0a.0/mlx5_core.rdma.1
       mlx5_core.rdma.2 -> ../../../devices/pci0000:00/0000:00:0b.0/mlx5_core.rdma.2
       mlx5_core.vdpa.1 -> ../../../devices/pci0000:00/0000:00:0a.0/mlx5_core.vdpa.1
       mlx5_core.vdpa.2 -> ../../../devices/pci0000:00/0000:00:0b.0/mlx5_core.vdpa.2
      [leonro@vm ~]$ rdma dev
      0: ibp0s9: node_type ca fw 4.6.9999 node_guid 5254:00c0:fe12:3455 sys_image_guid 5254:00c0:fe12:3455
      1: ibp0s10: node_type ca fw 4.6.9999 node_guid 5254:00c0:fe12:3456 sys_image_guid 5254:00c0:fe12:3456
      2: rdmap0s11: node_type ca fw 4.6.9999 node_guid 5254:00c0:fe12:3457 sys_image_guid 5254:00c0:fe12:3457
      
      System with RoCE SR-IOV card with 4 VFs:
      [leonro@vm ~]$ lspci |grep nox
      01:00.0 Ethernet controller: Mellanox Technologies MT28908 Family [ConnectX-6]
      01:00.1 Ethernet controller: Mellanox Technologies MT28908 Family [ConnectX-6 Virtual Function]
      01:00.2 Ethernet controller: Mellanox Technologies MT28908 Family [ConnectX-6 Virtual Function]
      01:00.3 Ethernet controller: Mellanox Technologies MT28908 Family [ConnectX-6 Virtual Function]
      01:00.4 Ethernet controller: Mellanox Technologies MT28908 Family [ConnectX-6 Virtual Function]
      [leonro@vm ~]$ ls -l /sys/bus/auxiliary/devices/
       mlx5_core.eth.0 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.0/mlx5_core.eth.0
       mlx5_core.eth.1 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.1/mlx5_core.eth.1
       mlx5_core.eth.2 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.2/mlx5_core.eth.2
       mlx5_core.eth.3 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.3/mlx5_core.eth.3
       mlx5_core.eth.4 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.4/mlx5_core.eth.4
       mlx5_core.rdma.0 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.0/mlx5_core.rdma.0
       mlx5_core.rdma.1 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.1/mlx5_core.rdma.1
       mlx5_core.rdma.2 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.2/mlx5_core.rdma.2
       mlx5_core.rdma.3 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.3/mlx5_core.rdma.3
       mlx5_core.rdma.4 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.4/mlx5_core.rdma.4
       mlx5_core.vdpa.1 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.1/mlx5_core.vdpa.1
       mlx5_core.vdpa.2 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.2/mlx5_core.vdpa.2
       mlx5_core.vdpa.3 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.3/mlx5_core.vdpa.3
       mlx5_core.vdpa.4 -> ../../../devices/pci0000:00/0000:00:09.0/0000:01:00.4/mlx5_core.vdpa.4
      [leonro@vm ~]$ rdma dev
      0: rocep1s0f0: node_type ca fw 4.6.9999 node_guid 5254:00c0:fe12:3455 sys_image_guid 5254:00c0:fe12:3455
      1: rocep1s0f0v0: node_type ca fw 4.6.9999 node_guid 0000:0000:0000:0000 sys_image_guid 5254:00c0:fe12:3456
      2: rocep1s0f0v1: node_type ca fw 4.6.9999 node_guid 0000:0000:0000:0000 sys_image_guid 5254:00c0:fe12:3457
      3: rocep1s0f0v2: node_type ca fw 4.6.9999 node_guid 0000:0000:0000:0000 sys_image_guid 5254:00c0:fe12:3458
      4: rocep1s0f0v3: node_type ca fw 4.6.9999 node_guid 0000:0000:0000:0000 sys_image_guid 5254:00c0:fe12:3459
      Signed-off-by: NLeon Romanovsky <leonro@nvidia.com>
      a925b5e3
    • L
      net/mlx5_core: Clean driver version and name · 17a7612b
      Leon Romanovsky 提交于
      Remove exposed driver version as it was done in other drivers,
      so module version will work correctly by displaying the kernel
      version for which it is compiled.
      
      And move mlx5_core module name to general include, so auxiliary drivers
      will be able to use it as a basis for a name in their device ID tables.
      Reviewed-by: NParav Pandit <parav@nvidia.com>
      Reviewed-by: NRoi Dayan <roid@nvidia.com>
      Signed-off-by: NLeon Romanovsky <leonro@nvidia.com>
      17a7612b
    • L
      net/mlx5: Properly convey driver version to firmware · 907af0f0
      Leon Romanovsky 提交于
      mlx5 firmware expects driver version in specific format X.X.X, so
      make it always correct and based on real kernel version aligned with
      the driver.
      
      Fixes: 012e50e1 ("net/mlx5: Set driver version into firmware")
      Signed-off-by: NLeon Romanovsky <leonro@nvidia.com>
      907af0f0
    • Y
      net/mlx5: DR, Proper handling of unsupported Connect-X6DX SW steering · d421e466
      Yevgeny Kliteynik 提交于
      STEs format for Connect-X5 and Connect-X6DX different. Currently, on
      Connext-X6DX the SW steering would break at some point when building STEs
      w/o giving a proper error message. Fix this by checking the STE format of
      the current device when initializing domain: add mlx5_ifc definitions for
      Connect-X6DX SW steering, read FW capability to get the current format
      version, and check this version when domain is being created.
      
      Fixes: 26d688e3 ("net/mlx5: DR, Add Steering entry (STE) utilities")
      Signed-off-by: NYevgeny Kliteynik <kliteyn@nvidia.com>
      Signed-off-by: NSaeed Mahameed <saeedm@nvidia.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      d421e466
    • T
      net/mlx5e: kTLS, Enforce HW TX csum offload with kTLS · b336e6b2
      Tariq Toukan 提交于
      Checksum calculation cannot be done in SW for TX kTLS HW offloaded
      packets.
      Offload it to the device, disregard the declared state of the TX
      csum offload feature.
      
      Fixes: d2ead1f3 ("net/mlx5e: Add kTLS TX HW offload support")
      Signed-off-by: NTariq Toukan <tariqt@nvidia.com>
      Reviewed-by: NMaxim Mikityanskiy <maximmi@mellanox.com>
      Reviewed-by: NBoris Pismenny <borisp@nvidia.com>
      Signed-off-by: NSaeed Mahameed <saeedm@nvidia.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      b336e6b2
    • R
      net: mlx5e: fix fs_tcp.c build when IPV6 is not enabled · 8a78a440
      Randy Dunlap 提交于
      Fix build when CONFIG_IPV6 is not enabled by making a function
      be built conditionally.
      
      Fixes these build errors and warnings:
      
      ../drivers/net/ethernet/mellanox/mlx5/core/en_accel/fs_tcp.c: In function 'accel_fs_tcp_set_ipv6_flow':
      ../include/net/sock.h:380:34: error: 'struct sock_common' has no member named 'skc_v6_daddr'; did you mean 'skc_daddr'?
        380 | #define sk_v6_daddr  __sk_common.skc_v6_daddr
            |                                  ^~~~~~~~~~~~
      ../drivers/net/ethernet/mellanox/mlx5/core/en_accel/fs_tcp.c:55:14: note: in expansion of macro 'sk_v6_daddr'
         55 |         &sk->sk_v6_daddr, 16);
            |              ^~~~~~~~~~~
      At top level:
      ../drivers/net/ethernet/mellanox/mlx5/core/en_accel/fs_tcp.c:47:13: warning: 'accel_fs_tcp_set_ipv6_flow' defined but not used [-Wunused-function]
         47 | static void accel_fs_tcp_set_ipv6_flow(struct mlx5_flow_spec *spec, struct sock *sk)
      
      Fixes: 5229a96e ("net/mlx5e: Accel, Expose flow steering API for rules add/del")
      Signed-off-by: NRandy Dunlap <rdunlap@infradead.org>
      Reported-by: Nkernel test robot <lkp@intel.com>
      Signed-off-by: NSaeed Mahameed <saeedm@nvidia.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      8a78a440
    • E
      net/mlx5: Fix wrong address reclaim when command interface is down · 1d2bb5ad
      Eran Ben Elisha 提交于
      When command interface is down, driver to reclaim all 4K page chucks that
      were hold by the Firmeware. Fix a bug for 64K page size systems, where
      driver repeatedly released only the first chunk of the page.
      
      Define helper function to fill 4K chunks for a given Firmware pages.
      Iterate over all unreleased Firmware pages and call the hepler per each.
      
      Fixes: 5adff6a0 ("net/mlx5: Fix incorrect page count when in internal error")
      Signed-off-by: NEran Ben Elisha <eranbe@nvidia.com>
      Signed-off-by: NSaeed Mahameed <saeedm@nvidia.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      1d2bb5ad
    • W
      net: mvpp2: Fix error return code in mvpp2_open() · 82a10dc7
      Wang Hai 提交于
      Fix to return negative error code -ENOENT from invalid configuration
      error handling case instead of 0, as done elsewhere in this function.
      
      Fixes: 4bb04326 ("net: mvpp2: phylink support")
      Reported-by: NHulk Robot <hulkci@huawei.com>
      Signed-off-by: NWang Hai <wanghai38@huawei.com>
      Reviewed-by: NAndrew Lunn <andrew@lunn.ch>
      Link: https://lore.kernel.org/r/20201203141806.37966-1-wanghai38@huawei.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      82a10dc7
    • D
      chelsio/chtls: fix a double free in chtls_setkey() · 391119fb
      Dan Carpenter 提交于
      The "skb" is freed by the transmit code in cxgb4_ofld_send() and we
      shouldn't use it again.  But in the current code, if we hit an error
      later on in the function then the clean up code will call kfree_skb(skb)
      and so it causes a double free.
      
      Set the "skb" to NULL and that makes the kfree_skb() a no-op.
      
      Fixes: d25f2f71 ("crypto: chtls - Program the TLS session Key")
      Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com>
      Link: https://lore.kernel.org/r/X8ilb6PtBRLWiSHp@mwandaSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      391119fb
    • T
      macvlan: Support for high multicast packet rate · d4bff72c
      Thomas Karlsson 提交于
      Background:
      Broadcast and multicast packages are enqueued for later processing.
      This queue was previously hardcoded to 1000.
      
      This proved insufficient for handling very high packet rates.
      This resulted in packet drops for multicast.
      While at the same time unicast worked fine.
      
      The change:
      This patch make the queue length adjustable to accommodate
      for environments with very high multicast packet rate.
      But still keeps the default value of 1000 unless specified.
      
      The queue length is specified as a request per macvlan
      using the IFLA_MACVLAN_BC_QUEUE_LEN parameter.
      
      The actual used queue length will then be the maximum of
      any macvlan connected to the same port. The actual used
      queue length for the port can be retrieved (read only)
      by the IFLA_MACVLAN_BC_QUEUE_LEN_USED parameter for verification.
      
      This will be followed up by a patch to iproute2
      in order to adjust the parameter from userspace.
      Signed-off-by: NThomas Karlsson <thomas.karlsson@paneda.se>
      Link: https://lore.kernel.org/r/dd4673b2-7eab-edda-6815-85c67ce87f63@paneda.seSigned-off-by: NJakub Kicinski <kuba@kernel.org>
      d4bff72c
    • D
      rtw88: debug: Fix uninitialized memory in debugfs code · 74a8c816
      Dan Carpenter 提交于
      This code does not ensure that the whole buffer is initialized and none
      of the callers check for errors so potentially none of the buffer is
      initialized.  Add a memset to eliminate this bug.
      
      Fixes: e3037485 ("rtw88: new Realtek 802.11ac driver")
      Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: NKalle Valo <kvalo@codeaurora.org>
      Link: https://lore.kernel.org/r/X8ilOfVz3pf0T5ec@mwanda
      74a8c816
  6. 03 12月, 2020 8 次提交