Updates from version 20 (git log):
- cbuild: Fix fc28 RPM creation
- buildlib: build static packages in RPM based distro test
- cbuild: extend CLI to pass --with[out] options to rpmbuild
- ibacm: Fix proper return value from ib_acme
- ibacm: Remove trailing blanks
- cmtime: Fix QP resource leak
- librdmacm: Change server default address to any address.
- mlx5: Handle TIRN for RSS QP
- mlx5: Expose device srq number via the DV API
- mlx5: Expose device pd number via the DV API
- Documentation: fix a typo in librdmacm doc
- verbs: Fix MODIFY_QP and OPEN_QP kabi definitions
- Fix travis build
- rpm: Add flag to include static libraries in the build
- mlx5: Add DEVX API to query EQN
- mlx5: Add DEVX API for UAR
- mlx5: CQE size control
- ibacm: Flush cache in provider when local address is removed
- ibacm: Check return value when deleting a cache entry
- debian: Include static libraries in the build
- verbs: Add RDMA_STATIC_PROVIDERS
- verbs: Expose the struct verbs_device_ops for each provider to the linker
- Add a travis test for static libraries
- pkg-config: If static libraries are enabled add Requires.private
- Generate complete and sanitized static libraries
- verbs: Do not include dynamic loading in static libraries
- verbs: Move all dynamic driver opening code to dynamic_driver.c
- debian: drop ibacm sysV init script
- libhns: Add mw support for hip08
- mlx5: Control Scatter to CQE via mlx5dv_create_qp
- Update kernel headers
- bnxt_re/lib: Fix flush list processing during poll_cq
- bnxt_re/lib: Fix the frequency of acquiring flush lock
- bnxt_re/lib: Remove db_lock around doorbell ring
- bnxt_re/lib: Reduce memory barrier calls
- libhns: Bugfix for atomic operation in user mode
- libhns: Add local invalidate MR support for hip08
- mlx5: Allow passing a flow tag value in mlx5dv_create_flow
- librdmacm: Allow RDMA CM use with connected QP when it is not managing the QP
- ibacm: remove endpoint IP address from provider when address deleted
- travis: Fix travis failures
- mlx5: Add support for DEVX object as a flow destination
- mlx5: Add DV DEVX APIs to reg/dereg user memory
- mlx5: Introduce DEVX object and its DV APIs
- mlx5: Expose device handles for RAW QP via the DV API
- mlx5: Add loopback flags to QP creation
- mlx5: Allow passing flow action in mlx5dv_create_flow
- mlx5: Allow passing flow flags
- verbs: Add IDRs array attribute type to ioctl() interface
- verbs: Make fill_attr* able to handle invalid input
- providers/i40iw: Add SEND_WITH_INVAL support
- libhns: Add atomic support for hip08 user mode
- rpm: Set perl dependencies on Fedora
- cbuild: Add Ubuntu Bionic
- Fix check-build when the --build argument is present
- Copy .clang-format from the kernel
- pkg-config: Move Libs.private to after Libs
- Add attribute(unused) to the dummy symver macros
- verbs: Replace the ibv_get_device_list man page with markdown
- verbs: Remove ibv_register_driver from the PRIVATE stanza
- verbs: Remove support for libnl1
- verbs: If the uverbs module is not loaded allow get_devices to retry init
- mlx5: Enable allocating a DEVX context
- Extend verbs_device_ops to get private data as part of alloc_context
- bnxt_re: Add shared receive queue support to broadcom's roce driver
- buildlib: update SUSE validation targets
- mlx5: Add packet reformat flow action
- mlx5: Add modify header flow action
- verbs: Expose a new accessor to be used with enum values
- mlx5: Fix flow tag mask
- Update library version to be 21.0