[Nix-dev] end-of-life kernels

Mathijs Kwik mathijs at bluescreen303.nl
Wed Dec 26 12:42:37 CET 2012


On Mon, Nov 19, 2012 at 3:37 PM, Eelco Dolstra
<eelco.dolstra at logicblox.com> wrote:
> Hi,
>
> On 19/11/12 15:28, Lluís Batlle i Rossell wrote:
>
>>>> But I imagine Eelco wants glibc to be built for 3.5 kernels or above.
>>>
>>> Stdenv has "--enable-kernel=2.6.35".
>>
>> Do you favour a higher value?
>
> Is there a good reason for a higher value?  Certainly it can't be higher than
> 3.2 since that's our default kernel.  And of course people may well want to run
> Nixpkgs on Linux distributions that have much older kernels.

Looking at glibc's sources shows:

/* statfs fills in f_flags since 2.6.36.  */
#if __LINUX_KERNEL_VERSION >= 0x020624
# define __ASSUME_STATFS_F_FLAGS        1
#endif

/* prlimit64 is available in 2.6.36.  */
#if __LINUX_KERNEL_VERSION >= 0x020624
# define __ASSUME_PRLIMIT64     1
#endif

/* sendmmsg is available in 2.6.39.  */
#if __LINUX_KERNEL_VERSION >= 0x020627
# define __ASSUME_SENDMMSG      1
#endif

/* getcpu is a syscall for x86-64 since 3.1.  */
#if defined __x86_64__ && __LINUX_KERNEL_VERSION >= 0x030100
# define __ASSUME_GETCPU_SYSCALL        1
#endif

The only performance-increaser is probably sendmmsg, for servers such
as node.js and nginx.
The others are probably not called a lot, so emulating them won't hurt.

I would still opt for choosing --enable-kernel=3.2 (our current default kernel)
That way, people can keep on using their old/current kernels on stdenv
merge, and on every future stdenv-upgrade we move this number up to
the previous default kernel version.

A glibc-compat package (with --enable-kernel=2.6.16, which is
glibc2.17's minimum anyway) will probably do the trick for people who
want to test old kernel configs (yes this will cause rebuilds for
them, but I think most usecases for these setup aren't that big and
don't change too often)



>
> --
> Eelco Dolstra | LogicBlox, Inc. | http://nixos.org/~eelco/
> _______________________________________________
> nix-dev mailing list
> nix-dev at lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev


More information about the nix-dev mailing list