Subject: Re: glibc 2.26 refuses to run on CentOS 6.8

From: Danny Milosavljevic <[email-masked]>
Date: Mon, 19 Feb 2018 23:46:03 +0100

Hi Ricardo,

> Does this work even though the official minimum kernel version for glibc
> 2.26 is 3.2.0?

I think so, BUT the patchset looks pretty similar to what would happen
if you specified the configure flag except for one spot.
So maybe Nix found out some ill effects.

The most worrying part in glibc is

#if __LINUX_KERNEL_VERSION < 0x040300
# undef __ASSUME_ACCEPT4_SYSCALL
# undef __ASSUME_SENDMSG_SYSCALL
# undef __ASSUME_RECVMSG_SYSCALL
# undef __ASSUME_CONNECT_SYSCALL
# undef __ASSUME_RECVFROM_SYSCALL
# undef __ASSUME_SENDTO_SYSCALL
#endif

So that would have to be watched out for.

__ASSUME_CONNECT_SYSCALL is some scary stuff.  Getting it wrong could break all
networking in the system.

> The Red Hat kernels are a bit special in that they are not just old
> kernels, but heavily patched to work with newer software.  The Nix
> people wrote that they have confirmed that 2.6.32 works up to
> glibc-2.26-131.

Oh, I didn't know that.  If it's tested that way, let's use it that way
for the time being.

> If there was a way to test for kernel features instead of looking at the
> kernel version I’d do that instead of looking for a way to relax the
> lower kernel version bound.

Yeah...