Deprecate IoContext submit broken chain logic

The manual invalidation of sqes after a submission of a broken chain is not needed anymore with linux 5.15 and

This also allows SQPOLL to properly function with broken links.

The changes between v1 and v2 were not trivial!

Notable changes:

  • Use a static LinuxVersion object emper::lib::LinuxVersion.
    This reduces the overhead of multiple LINUX_VERSION_* macro calls to a single syscall.
  • Don't initialize a static variable using LINUX_VERSION_* macros. Because this results in n comparisons one for each object file including the header with the static variable.


There is still the possibility that the comparision now done during library initialization of the Emper object file crashed because it may write warnings to a not yet initialized std::stderr. But I think this always can happen when printing messages using the iostreams during library initialization.

Edited by Florian Fischer

Merge request reports