• P
    net/mlx5: E-Switch, let user to enable disable metadata · 7bf481d7
    Parav Pandit 提交于
    Currently each packet inserted in eswitch is tagged with a internal
    metadata to indicate source vport. Metadata tagging is not always
    needed. Metadata insertion is needed for multi-port RoCE, failover
    between representors and stacked devices. In many other cases,
    metadata enablement is not needed.
    
    Metadata insertion slows down the packet processing rate of the E-switch
    when it is in switchdev mode.
    
    Below table show performance gain with metadata disabled for VXLAN
    offload rules in both SMFS and DMFS steering mode on ConnectX-5 device.
    
    ----------------------------------------------
    | steering | metadata | pkt size | rx pps    |
    | mode     |          |          | (million) |
    ----------------------------------------------
    | smfs     | disabled | 128Bytes | 42        |
    ----------------------------------------------
    | smfs     | enabled  | 128Bytes | 36        |
    ----------------------------------------------
    | dmfs     | disabled | 128Bytes | 42        |
    ----------------------------------------------
    | dmfs     | enabled  | 128Bytes | 36        |
    ----------------------------------------------
    
    Hence, allow user to disable metadata using driver specific devlink
    parameter. Metadata setting of the eswitch is applicable only for the
    switchdev mode.
    
    Example to show and disable metadata before changing eswitch mode:
    $ devlink dev param show pci/0000:06:00.0 name esw_port_metadata
    pci/0000:06:00.0:
      name esw_port_metadata type driver-specific
        values:
          cmode runtime value true
    
    $ devlink dev param set pci/0000:06:00.0 \
    	  name esw_port_metadata value false cmode runtime
    
    $ devlink dev eswitch set pci/0000:06:00.0 mode switchdev
    Signed-off-by: NParav Pandit <parav@nvidia.com>
    Reviewed-by: NRoi Dayan <roid@nvidia.com>
    Reviewed-by: NVu Pham <vuhuong@nvidia.com>
    Signed-off-by: NSaeed Mahameed <saeedm@nvidia.com>
    ---
    changelog:
    v1->v2:
     - added performance numbers in commit log
     - updated commit log and documentation for switchdev mode
     - added explicit note on when user can disable metadata in
       documentation
    7bf481d7
mlx5.rst 21.9 KB