diff options
Diffstat (limited to 'pkgs/os-specific')
-rw-r--r-- | pkgs/os-specific/linux/kernel/make-maple-state-reusable-after-mas_empty_area.patch | 21 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernel/patches.nix | 9 |
2 files changed, 24 insertions, 6 deletions
diff --git a/pkgs/os-specific/linux/kernel/make-maple-state-reusable-after-mas_empty_area.patch b/pkgs/os-specific/linux/kernel/make-maple-state-reusable-after-mas_empty_area.patch new file mode 100644 index 00000000000..47e1bbbd5a6 --- /dev/null +++ b/pkgs/os-specific/linux/kernel/make-maple-state-reusable-after-mas_empty_area.patch @@ -0,0 +1,21 @@ +--- a/lib/maple_tree.c ++++ b/lib/maple_tree.c +@@ -5317,15 +5317,9 @@ + + mt = mte_node_type(mas->node); + pivots = ma_pivots(mas_mn(mas), mt); +- if (offset) +- mas->min = pivots[offset - 1] + 1; +- +- if (offset < mt_pivots[mt]) +- mas->max = pivots[offset]; +- +- if (mas->index < mas->min) +- mas->index = mas->min; +- ++ min = mas_safe_min(mas, pivots, offset); ++ if (mas->index < min) ++ mas->index = min; + mas->last = mas->index + size - 1; + return 0; + } diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix index 3a76ed2d088..2330db4e68c 100644 --- a/pkgs/os-specific/linux/kernel/patches.nix +++ b/pkgs/os-specific/linux/kernel/patches.nix @@ -58,13 +58,10 @@ patch = ./export-rt-sched-migrate.patch; }; - make-maple-state-reusable-after-mas_empty_area = rec { + # https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git/patch/?id=39bf07d812b888b23983a9443ad967ca9b61551d + make-maple-state-reusable-after-mas_empty_area = { name = "make-maple-state-reusable-after-mas_empty_area"; - patch = fetchpatch { - name = name + ".patch"; - url = "https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git/patch/?id=39bf07d812b888b23983a9443ad967ca9b61551d"; - hash = "sha256-JHEFq+Gw8Dtl0M8pXcKXpwkaHhbbl5NwTSzvV5qP4hk="; - }; + patch = ./make-maple-state-reusable-after-mas_empty_area.patch; }; fix-em-ice-bonding = { |