From 0f03222d88d5fcc01fe1d8b1b486bed9b9ba15bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Milan=20P=C3=A4ssler?= Date: Thu, 7 Jan 2021 01:49:23 +0100 Subject: [PATCH] linux: build with multipath tcp support Starting from Linx 5.6, there is partial upstream support for the Multipath TCP protocol. There are no downsides to enabling it afaict, since applications need to opt-in when creating a socket. From https://github.com/multipath-tcp/mptcp_net-next/wiki: "[...] users of regular TCP continue to get the same type of connection and performance unless MPTCP is requested." --- pkgs/os-specific/linux/kernel/common-config.nix | 5 +++++ pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 7 ------- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index 9bad2280a3a..c4ecf666fcd 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -196,6 +196,11 @@ let INET_UDP_DIAG = module; INET_RAW_DIAG = whenAtLeast "4.14" module; INET_DIAG_DESTROY = whenAtLeast "4.9" yes; + + # enable multipath-tcp + MPTCP = whenAtLeast "5.6" yes; + MPTCP_IPV6 = whenAtLeast "5.6" yes; + INET_MPTCP_DIAG = whenAtLeast "5.9" module; }; wireless = { diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 01c80ea3d80..78f0d5ae287 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -303,6 +303,7 @@ mapAliases ({ libstdcxxHook = throw "libstdcxx hook has been removed because cc-wrapper is now directly aware of the c++ standard library intended to be used."; # 2020-06-22 libqmatrixclient = throw "libqmatrixclient was renamed to libquotient"; # added 2020-04-09 links = links2; # added 2016-01-31 + linux_mptcp_5_9 = linux_5_9; # added 2020-01-07 linux_rpi0 = linux_rpi1; linuxPackages_rpi0 = linuxPackages_rpi1; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fec582facc6..35b4882dad2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18544,13 +18544,6 @@ in linux_mptcp = linux_mptcp_95; - linux_mptcp_5_9 = linux_5_9.override { - structuredExtraConfig = with lib.kernel; { - MPTCP = yes; - MPTCP_IPV6 = yes; - }; - }; - linux_mptcp_95 = callPackage ../os-specific/linux/kernel/linux-mptcp-95.nix { kernelPatches = linux_4_19.kernelPatches; };