GCC 10 finally has the function attribute to allow LTO to be mixed with symbol versions. Use the function attribute instead of the top level inline asm and have cmake deal with all this. Remove the LTO disablement in the packaging files. Distros with GCC 10 will be compatible. Fix several warnings GCC 10 LTO spits out so AZP remains warning free. This is a PR: https://github.com/linux-rdma/rdma-core/pull/880 Jason Gunthorpe (4): libibumad: Check for error returns in get_port() verbs: Simplify the logic assigning vid in ibv_resolve_eth_l2_from_gid() iwpmd: Always copy the ss_family in copy_iwpm_sockaddr() util: Use GCC 10's attribute symver to define compat symbol versions CMakeLists.txt | 13 ++++++++++ buildlib/FindLDSymVer.cmake | 28 ++++++++++++++------- buildlib/config.h.in | 2 ++ iwpmd/iwarp_pm_common.c | 4 +++ libibumad/umad.c | 49 +++++++++++++++++++------------------ libibverbs/verbs.c | 7 ++---- redhat/rdma-core.spec | 7 ------ suse/rdma-core.spec | 2 -- util/symver.h | 9 +++++-- 9 files changed, 72 insertions(+), 49 deletions(-) -- 2.29.2