Page MenuHomeFreeBSD

linux: bump the default version from 3.10.0 to 3.17.0
ClosedPublic

Authored by trasz on Jan 11 2021, 10:58 PM.
Tags
None
Referenced Files
Unknown Object (File)
Feb 19 2024, 12:23 PM
Unknown Object (File)
Feb 19 2024, 12:23 PM
Unknown Object (File)
Feb 19 2024, 12:23 PM
Unknown Object (File)
Feb 19 2024, 12:11 PM
Unknown Object (File)
Feb 16 2024, 9:58 AM
Unknown Object (File)
Dec 20 2023, 3:31 AM
Unknown Object (File)
Dec 12 2023, 5:08 PM
Unknown Object (File)
Nov 30 2023, 4:15 PM
Subscribers

Details

Summary

This is required for Qt5, as found in Ubuntu Focal. The library contains
the minimum kernel version encoded in an ELF note; this makes rtld ignore
it altogether, with a confusing error message. Without it, things fail
like this:

$ konsole: error while loading shared libraries: libQt5Core.so.5: cannot
open shared object file: No such file or directory

For reference, the Qt kernel version requirements can be found at:
https://github.com/qt/qtbase/blob/dev/src/corelib/global/minimum-linux_p.h

Sponsored by: The FreeBSD Foundation

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 36124
Build 33013: arc lint + arc unit

Event Timeline

emaste added a subscriber: emaste.

I didn't see any new system calls between Linux 3.10.0 and 3.17.0

This revision is now accepted and ready to land.Jan 11 2021, 11:12 PM

Hmm, from your link:

/* Minimum Linux kernel version:
 * We require the following features in Qt (unconditional, no fallback):
 *   Feature                    Added in version        Macro
 * - inotify_init1              before 2.6.12-rc12
 * - futex(2)                   before 2.6.12-rc12
 * - FUTEX_WAKE_OP              2.6.14                  FUTEX_OP
 * - linkat(2)                  2.6.17                  O_TMPFILE && QT_CONFIG(linkat)
 * - FUTEX_PRIVATE_FLAG         2.6.22
 * - O_CLOEXEC                  2.6.23
 * - eventfd                    2.6.23
 * - pipe2 & dup3               2.6.27
 * - accept4                    2.6.28
 * - renameat2                  3.16                    QT_CONFIG(renameat2)
 * - getrandom                  3.17                    QT_CONFIG(getentropy)
 * - statx                      4.11                    QT_CONFIG(statx)
 */

renameat2 added via D21590
getrandom added in b1ba0846f1e61d42212a0f3200bf63f1d032436a

Yup. We're still missing statx(2), but the ones above will do for now.