IB/mlx5: Respect new UMR capabilities
In some firmware configuration, UMR usage from Virtual Functions is restricted. This information is published to the driver using new capability bits. Avoid using UMRs in these cases and use the Firmware slow-path flow to create mkeys and populate them with Virtual to Physical address translation. Older drivers that do not have this patch, will end up using memory keys that aren't populated with Virtual to Physical address translation that is done part of the UMR work. Reviewed-by: Mark Bloch <markb@mellanox.com> Signed-off-by: Majd Dibbiny <majd@mellanox.com> Signed-off-by: Leon Romanovsky <leonro@mellanox.com> Tested-by: Laurence Oberman <loberman@redhat.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
This commit is contained in:

committed by
Jason Gunthorpe

parent
ea8af0d2f2
commit
c8d75a980f
@@ -916,7 +916,11 @@ struct mlx5_ifc_cmd_hca_cap_bits {
|
||||
u8 reserved_at_202[0x1];
|
||||
u8 ipoib_enhanced_offloads[0x1];
|
||||
u8 ipoib_basic_offloads[0x1];
|
||||
u8 reserved_at_205[0x5];
|
||||
u8 reserved_at_205[0x1];
|
||||
u8 repeated_block_disabled[0x1];
|
||||
u8 umr_modify_entity_size_disabled[0x1];
|
||||
u8 umr_modify_atomic_disabled[0x1];
|
||||
u8 umr_indirect_mkey_disabled[0x1];
|
||||
u8 umr_fence[0x2];
|
||||
u8 reserved_at_20c[0x3];
|
||||
u8 drain_sigerr[0x1];
|
||||
|
Reference in New Issue
Block a user