diff options
author | Robert Hensing <robert@roberthensing.nl> | 2023-05-15 20:29:07 +0200 |
---|---|---|
committer | Robert Hensing <robert@roberthensing.nl> | 2023-05-15 20:32:57 +0200 |
commit | 81bc5f3db8f9ba812836036d5d3e54e933ca2cd6 (patch) | |
tree | 1cc7d4020a09caea806990e908076eb13239cce3 | |
parent | 4633d9cf38f770a58e67c764c1ed656a2aa2b006 (diff) |
pkgs/linux: Vendor maple tree patch
Fetching from a maintainer tree can be unreliable as commits or even repos may be removed.
-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 0000000000000..47e1bbbd5a68d --- /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 3a76ed2d08823..2330db4e68c39 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 = { |