mstlink command crashes with core dump when used on Oracle Linux 8

The mstlink command crashes when run on an Oracle Linux 8 system running Unbreakable Enterprise Kernel Release 6. The following output is typical:

sudo mstlink -d 13:00.1
/usr/include/c++/8/bits/stl_vector.h:932: std::vector<_Tp, _Alloc>::reference
std::vector<_Tp, _Alloc>::operator[](std::vector<_Tp, _Alloc>::size_type)
[with _Tp = unsigned int; _Alloc = std::allocator<unsigned int>;
std::vector< Tp, _Alloc>::reference = unsigned int& std::vector<_Tp,
_Alloc>::size_type = long unsigned int]: Assertion '__builtin_expect(__n <
this->size(), true)' failed.
Aborted (core dumped)

This issue is related to system-wide hardening changes introduced upstream and present in Oracle Linux 8. The upstream tools in the mstflint package, including mstlink do not adequately cater for these hardening changes. Alternate tools can be used to gather and configure link information, including ip link, ethtool, ifstat, and ibv_devinfo.

(Bug ID 30993407)