Re: mlx5 sub function issue

7 messages, 3 authors, 2021-03-11 · open the first message on its own page

Re: mlx5 sub function issue

From: ze wang <hidden>
Date: 2021-03-08 07:22:44

Hi Parav,

Thanks for the answer.
There are more than two hundred CPUs on our machine, we're planning to
put SFs into the containers, This may requires allocate one SF per
CPU,so we want to know the upper limit of creating SFs.

By the way, the latest version of the MFT download center is 4.16.1-9,
does this meet the 4.16.52 version requirements? If not satisfied,
where can I get mft-4.16.52?

Ze Wang


Parav Pandit [off-list ref] 於 2021年3月8日週一 下午1:17寫道:
Hi Ze Wang,



How many SFs do you prefer to create?
What applications would you like to run on more than 128 sfs?
How many CPUs do you have in system which will use this many sfs?



You need to use following.

mlxconfig tool from mft tools version 4.16.52 or higher to set number of SF.

mlxconfig -d b3:00.0  PF_BAR2_ENABLE=0 PER_PF_NUM_SF=1 PF_SF_BAR_SIZE=8
mlxconfig -d b3:00.0  PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8
mlxconfig -d b3:00.1  PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8

Cold reboot power cycle of the system as this changes the BAR size in device



Parav



From: ze wang <redacted>
Sent: Monday, March 8, 2021 7:22 AM
To: Saeed Mahameed <saeedm@nvidia.com>; Parav Pandit <redacted>
Subject: mlx5 sub function issue



Hi all,
      I have some confusion with mlx5 sub function feature. I tested it with Mellanox ConnectX-6 Dx recently, then I

found the maximum amount of SF in each PF is just 128,I‘m not sure if there is a problem with my configuration,

or there are some limits of SF in ConnectX-6.
Here is the environment:
system: CentOS Linux release 7.9.2009
NIC:  Mellanox Technologies MT2892 Family [ConnectX-6 Dx]
firmware-version: 22.29.2002 (MT_0000000430)
kernel: net-next master branch https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/
mlxconfig:
PF_BAR2_ENABLE    True(1)
PF_BAR2_SIZE      8
PER_PF_NUM_SF     True(1)
PF_TOTAL_SF       65535
PF_SF_BAR_SIZE    0

When I tried to create more SF:

~# devlink port add pci/0000:b3:00.0 flavour pcisf pfnum 0 sfnum 128
devlink answers: No space left on device

Is there anything missed in configuration? Can I create more sub functions in ConnectX-6?

Trully yours,
wangze

Re: mlx5 sub function issue

From: David Ahern <hidden>
Date: 2021-03-08 15:49:12

On 3/8/21 12:21 AM, ze wang wrote:
mlxconfig tool from mft tools version 4.16.52 or higher to set number of SF.

mlxconfig -d b3:00.0  PF_BAR2_ENABLE=0 PER_PF_NUM_SF=1 PF_SF_BAR_SIZE=8
mlxconfig -d b3:00.0  PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8
mlxconfig -d b3:00.1  PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8

Cold reboot power cycle of the system as this changes the BAR size in device
Is that capability going to be added to devlink?

Re: mlx5 sub function issue

From: ze wang <hidden>
Date: 2021-03-09 03:05:22

Hi David,
      I can see that the variable settings are in effect:
# mlxconfig -d b3:00.0 s PF_BAR2_ENABLE=0 PER_PF_NUM_SF=1 PF_SF_BAR_SIZE=8
# mlxconfig -d b3:00.0 s PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8
# mlxconfig -d b3:00.1 s PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8

after cold reboot:
# mlxconfig -d b3:00.0 q|grep BAR
PF_BAR2_ENABLE                           False(0)
# mlxconfig -d b3:00.0 q|grep SF
Description:    ConnectX-6 Dx EN adapter card; 25GbE; Dual-port SFP28;
PCIe 4.0 x8; Crypto and Secure Boot
         PER_PF_NUM_SF                   True(1)
         PF_TOTAL_SF                         192
         PF_SF_BAR_SIZE                   8
# mlxconfig -d b3:00.1 q|grep SF
Description:    ConnectX-6 Dx EN adapter card; 25GbE; Dual-port SFP28;
PCIe 4.0 x8; Crypto and Secure Boot
         PER_PF_NUM_SF                  True(1)
         PF_TOTAL_SF                        192
         PF_SF_BAR_SIZE                  8

I tried to create as many SF as possible, then I found each PF can
create up to 132 SFs. I want to confirm the maximum number of SFs that
CX6 can create. If the mft version is correct, can I think that CX6
can create up to 132 SFs per PF?

David Ahern [off-list ref] 于2021年3月8日周一 下午11:48写道:
On 3/8/21 12:21 AM, ze wang wrote:
quoted
mlxconfig tool from mft tools version 4.16.52 or higher to set number of SF.

mlxconfig -d b3:00.0  PF_BAR2_ENABLE=0 PER_PF_NUM_SF=1 PF_SF_BAR_SIZE=8
mlxconfig -d b3:00.0  PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8
mlxconfig -d b3:00.1  PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8

Cold reboot power cycle of the system as this changes the BAR size in device
Is that capability going to be added to devlink?

RE: mlx5 sub function issue

From: Parav Pandit <hidden>
Date: 2021-03-09 12:34:31

Hi David,
From: David Ahern <redacted>
Sent: Monday, March 8, 2021 9:18 PM

On 3/8/21 12:21 AM, ze wang wrote:
quoted
mlxconfig tool from mft tools version 4.16.52 or higher to set number of SF.

mlxconfig -d b3:00.0  PF_BAR2_ENABLE=0 PER_PF_NUM_SF=1
PF_SF_BAR_SIZE=8 mlxconfig -d b3:00.0  PER_PF_NUM_SF=1
PF_TOTAL_SF=192
quoted
PF_SF_BAR_SIZE=8 mlxconfig -d b3:00.1  PER_PF_NUM_SF=1
PF_TOTAL_SF=192
quoted
PF_SF_BAR_SIZE=8

Cold reboot power cycle of the system as this changes the BAR size in
device
Is that capability going to be added to devlink?
Yes, want to expose as devlink resource at per controller level.
However devlink resource doesn’t have enough plumbing available to define controller, pf annotation which was the primary blocker for lacking this info right now.

RE: mlx5 sub function issue

From: Parav Pandit <hidden>
Date: 2021-03-09 12:37:26

Hi Ze Wang,
From: ze wang <redacted>
Sent: Tuesday, March 9, 2021 8:34 AM

Hi David,
      I can see that the variable settings are in effect:
# mlxconfig -d b3:00.0 s PF_BAR2_ENABLE=0 PER_PF_NUM_SF=1
PF_SF_BAR_SIZE=8 # mlxconfig -d b3:00.0 s PER_PF_NUM_SF=1
PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8 # mlxconfig -d b3:00.1 s
PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8

after cold reboot:
# mlxconfig -d b3:00.0 q|grep BAR
PF_BAR2_ENABLE                           False(0)
# mlxconfig -d b3:00.0 q|grep SF
Description:    ConnectX-6 Dx EN adapter card; 25GbE; Dual-port SFP28;
PCIe 4.0 x8; Crypto and Secure Boot
         PER_PF_NUM_SF                   True(1)
         PF_TOTAL_SF                         192
         PF_SF_BAR_SIZE                   8
# mlxconfig -d b3:00.1 q|grep SF
Description:    ConnectX-6 Dx EN adapter card; 25GbE; Dual-port SFP28;
PCIe 4.0 x8; Crypto and Secure Boot
         PER_PF_NUM_SF                  True(1)
         PF_TOTAL_SF                        192
         PF_SF_BAR_SIZE                  8

I tried to create as many SF as possible, then I found each PF can create up to
132 SFs. I want to confirm the maximum number of SFs that
CX6 can create. If the mft version is correct, can I think that CX6 can create up
to 132 SFs per PF?
Do  you have VFs enabled on the system? mlxconfig -d b3:00.0 q | grep VF
If so, please disable SRIOV.
David Ahern [off-list ref] 于2021年3月8日周一 下午11:48写道
:
quoted
On 3/8/21 12:21 AM, ze wang wrote:
quoted
mlxconfig tool from mft tools version 4.16.52 or higher to set number of
SF.
quoted
quoted
mlxconfig -d b3:00.0  PF_BAR2_ENABLE=0 PER_PF_NUM_SF=1
PF_SF_BAR_SIZE=8 mlxconfig -d b3:00.0  PER_PF_NUM_SF=1
PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8 mlxconfig -d b3:00.1
PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8

Cold reboot power cycle of the system as this changes the BAR size
in device
Is that capability going to be added to devlink?

Re: mlx5 sub function issue

From: ze wang <hidden>
Date: 2021-03-10 09:30:04

Hi Parav,
      Thanks for your help. I did enabled VFs, and after turning off
SR-IOV, it works.
Now the each PF can create 255 SFs, which is probably enough for us.
Is it convenient
to reveal how many SFs can be created at most?

Ze Wang

Parav Pandit [off-list ref] 于2021年3月9日周二 下午8:36写道:
Hi Ze Wang,
quoted
From: ze wang <redacted>
Sent: Tuesday, March 9, 2021 8:34 AM

Hi David,
      I can see that the variable settings are in effect:
# mlxconfig -d b3:00.0 s PF_BAR2_ENABLE=0 PER_PF_NUM_SF=1
PF_SF_BAR_SIZE=8 # mlxconfig -d b3:00.0 s PER_PF_NUM_SF=1
PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8 # mlxconfig -d b3:00.1 s
PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8

after cold reboot:
# mlxconfig -d b3:00.0 q|grep BAR
PF_BAR2_ENABLE                           False(0)
# mlxconfig -d b3:00.0 q|grep SF
Description:    ConnectX-6 Dx EN adapter card; 25GbE; Dual-port SFP28;
PCIe 4.0 x8; Crypto and Secure Boot
         PER_PF_NUM_SF                   True(1)
         PF_TOTAL_SF                         192
         PF_SF_BAR_SIZE                   8
# mlxconfig -d b3:00.1 q|grep SF
Description:    ConnectX-6 Dx EN adapter card; 25GbE; Dual-port SFP28;
PCIe 4.0 x8; Crypto and Secure Boot
         PER_PF_NUM_SF                  True(1)
         PF_TOTAL_SF                        192
         PF_SF_BAR_SIZE                  8

I tried to create as many SF as possible, then I found each PF can create up to
132 SFs. I want to confirm the maximum number of SFs that
CX6 can create. If the mft version is correct, can I think that CX6 can create up
to 132 SFs per PF?
Do  you have VFs enabled on the system? mlxconfig -d b3:00.0 q | grep VF
If so, please disable SRIOV.
quoted
David Ahern [off-list ref] 于2021年3月8日周一 下午11:48写道
:
quoted
On 3/8/21 12:21 AM, ze wang wrote:
quoted
mlxconfig tool from mft tools version 4.16.52 or higher to set number of
SF.
quoted
quoted
mlxconfig -d b3:00.0  PF_BAR2_ENABLE=0 PER_PF_NUM_SF=1
PF_SF_BAR_SIZE=8 mlxconfig -d b3:00.0  PER_PF_NUM_SF=1
PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8 mlxconfig -d b3:00.1
PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8

Cold reboot power cycle of the system as this changes the BAR size
in device
Is that capability going to be added to devlink?

RE: mlx5 sub function issue

From: Parav Pandit <hidden>
Date: 2021-03-11 06:14:05

Hi Ze wang,
From: ze wang <redacted>
Sent: Wednesday, March 10, 2021 2:59 PM

Hi Parav,
      Thanks for your help. I did enabled VFs, and after turning off SR-IOV, it
works.
Happy to hear that.
Now the each PF can create 255 SFs, which is probably enough for us.
Is it convenient
to reveal how many SFs can be created at most?
Yes, it is. We will be doing this, mostly as devlink resource as discussed last time with Jacob, David, Samudrala in past.
It is in my todo list already. Until its available, please use the existing tooling.
Ze Wang

Parav Pandit [off-list ref] 于2021年3月9日周二 下午8:36写道:
quoted
Hi Ze Wang,
quoted
From: ze wang <redacted>
Sent: Tuesday, March 9, 2021 8:34 AM

Hi David,
      I can see that the variable settings are in effect:
# mlxconfig -d b3:00.0 s PF_BAR2_ENABLE=0 PER_PF_NUM_SF=1
PF_SF_BAR_SIZE=8 # mlxconfig -d b3:00.0 s PER_PF_NUM_SF=1
PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8 # mlxconfig -d b3:00.1 s
PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8

after cold reboot:
# mlxconfig -d b3:00.0 q|grep BAR
PF_BAR2_ENABLE                           False(0)
# mlxconfig -d b3:00.0 q|grep SF
Description:    ConnectX-6 Dx EN adapter card; 25GbE; Dual-port SFP28;
PCIe 4.0 x8; Crypto and Secure Boot
         PER_PF_NUM_SF                   True(1)
         PF_TOTAL_SF                         192
         PF_SF_BAR_SIZE                   8
# mlxconfig -d b3:00.1 q|grep SF
Description:    ConnectX-6 Dx EN adapter card; 25GbE; Dual-port SFP28;
PCIe 4.0 x8; Crypto and Secure Boot
         PER_PF_NUM_SF                  True(1)
         PF_TOTAL_SF                        192
         PF_SF_BAR_SIZE                  8

I tried to create as many SF as possible, then I found each PF can
create up to
132 SFs. I want to confirm the maximum number of SFs that
CX6 can create. If the mft version is correct, can I think that CX6
can create up to 132 SFs per PF?
Do  you have VFs enabled on the system? mlxconfig -d b3:00.0 q | grep
VF If so, please disable SRIOV.
quoted
David Ahern [off-list ref] 于2021年3月8日周一 下午11:48写
quoted
quoted
quoted
On 3/8/21 12:21 AM, ze wang wrote:
quoted
mlxconfig tool from mft tools version 4.16.52 or higher to set
number of
SF.
quoted
quoted
mlxconfig -d b3:00.0  PF_BAR2_ENABLE=0 PER_PF_NUM_SF=1
PF_SF_BAR_SIZE=8 mlxconfig -d b3:00.0  PER_PF_NUM_SF=1
PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8 mlxconfig -d b3:00.1
PER_PF_NUM_SF=1 PF_TOTAL_SF=192 PF_SF_BAR_SIZE=8

Cold reboot power cycle of the system as this changes the BAR
size in device
Is that capability going to be added to devlink?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help