Provided by: libibverbs-dev_24.0-2_amd64 bug


       mlx5dv - Direct verbs for mlx5 devices
       This  is low level access to mlx5 devices to perform data path operations, without general
       branching performed by ibv_post_send(3).


       The libibverbs API is an abstract one. It is agnostic to any underlying provider  specific
       implementation.  While this abstraction has the advantage of user applications portability
       it has a performance  penalty.  For  some  applications  optimizing  performance  is  more
       important than portability.

       The mlx5 direct verbs API is intended for such applications.  It exposes mlx5 specific low
       level data path (send/receive/completion) operations, allowing the application  to  bypass
       the libibverbs data path API.

       This  interface  consists  from  one  hardware  specific  header file with relevant inline
       functions and conversion logic from ibverbs structures to mlx5 specific structures.

       The direct include of mlx5dv.h together with linkage to mlx5 library will allow  usage  of
       this new interface.

       Once  an  application  uses the direct flow the locking scheme is fully managed by itself.
       There is an expectation that no mixed flows in the data path  for  both  direct/non-direct
       access will be by same application.


       All  Mellanox  NIC devices starting from Connect-IB (Connect-IB, ConnectX-4, ConnectX-4Lx,
       ConnectX-5, ...) implement the mlx5 API, thus using the mlx5 direct verbs does  not  limit
       the applications to a single NIC HW device thus keeping some level of portability.


       ibv_post_send(3), verbs(7), mlx5dv_is_supported(3)


       Leon Romanovsky <>