From 656335cd8bd4b09868180a7f87976525d94f95f6 Mon Sep 17 00:00:00 2001 From: talyz Date: Thu, 5 Jul 2018 18:21:07 +0200 Subject: [PATCH] linux: Temporary fix for issue #42755 Fix a serious issue with the xen-netfront driver introduced in upstream commit f599c64fdf7d ("xen-netfront: Fix race between device setup and open") where the MTU of the device cannot be set properly. This should be removed once it's included in upstream. --- pkgs/os-specific/linux/kernel/patches.nix | 20 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 20 ++++++++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix index 69495e5fc439..e0826aaa9d48 100644 --- a/pkgs/os-specific/linux/kernel/patches.nix +++ b/pkgs/os-specific/linux/kernel/patches.nix @@ -59,4 +59,24 @@ rec { }; }; + # https://github.com/NixOS/nixpkgs/issues/42755 + xen-netfront_fix_mismatched_rtnl_unlock = rec { + name = "xen-netfront_fix_mismatched_rtnl_unlock"; + patch = fetchpatch { + name = name + ".patch"; + url = https://github.com/torvalds/linux/commit/cb257783c2927b73614b20f915a91ff78aa6f3e8.patch; + sha256 = "0xhblx2j8wi3kpnfpgjjwlcwdry97ji2aaq54r3zirk5g5p72zs8"; + }; + }; + + # https://github.com/NixOS/nixpkgs/issues/42755 + xen-netfront_update_features_after_registering_netdev = rec { + name = "xen-netfront_update_features_after_registering_netdev"; + patch = fetchpatch { + name = name + ".patch"; + url = https://github.com/torvalds/linux/commit/45c8184c1bed1ca8a7f02918552063a00b909bf5.patch; + sha256 = "1l8xq02rd7vakxg52xm9g4zng0ald866rpgm8kjlh88mwwyjkrwv"; + }; + }; + } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9f7b57295566..b054048be438 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13688,6 +13688,11 @@ with pkgs; [ kernelPatches.bridge_stp_helper kernelPatches.cpu-cgroup-v2."4.4" kernelPatches.modinst_arg_list_too_long + # https://github.com/NixOS/nixpkgs/issues/42755 + # Remove these xen-netfront patches once they're included in + # upstream! Fixes https://github.com/NixOS/nixpkgs/issues/42755 + kernelPatches.xen-netfront_fix_mismatched_rtnl_unlock + kernelPatches.xen-netfront_update_features_after_registering_netdev ]; }; @@ -13696,6 +13701,11 @@ with pkgs; [ kernelPatches.bridge_stp_helper kernelPatches.cpu-cgroup-v2."4.9" kernelPatches.modinst_arg_list_too_long + # https://github.com/NixOS/nixpkgs/issues/42755 + # Remove these xen-netfront patches once they're included in + # upstream! Fixes https://github.com/NixOS/nixpkgs/issues/42755 + kernelPatches.xen-netfront_fix_mismatched_rtnl_unlock + kernelPatches.xen-netfront_update_features_after_registering_netdev ]; }; @@ -13706,6 +13716,11 @@ with pkgs; # when adding a new linux version kernelPatches.cpu-cgroup-v2."4.11" kernelPatches.modinst_arg_list_too_long + # https://github.com/NixOS/nixpkgs/issues/42755 + # Remove these xen-netfront patches once they're included in + # upstream! Fixes https://github.com/NixOS/nixpkgs/issues/42755 + kernelPatches.xen-netfront_fix_mismatched_rtnl_unlock + kernelPatches.xen-netfront_update_features_after_registering_netdev ]; }; @@ -13717,6 +13732,11 @@ with pkgs; # kernelPatches.cpu-cgroup-v2."4.11" kernelPatches.modinst_arg_list_too_long kernelPatches.bcm2835_mmal_v4l2_camera_driver # Only needed for 4.16! + # https://github.com/NixOS/nixpkgs/issues/42755 + # Remove these xen-netfront patches once they're included in + # upstream! Fixes https://github.com/NixOS/nixpkgs/issues/42755 + kernelPatches.xen-netfront_fix_mismatched_rtnl_unlock + kernelPatches.xen-netfront_update_features_after_registering_netdev ]; };