]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
node_copy: Fix d_max return value
authorLiam R. Howlett <Liam.Howlett@oracle.com>
Wed, 17 Sep 2025 01:00:18 +0000 (21:00 -0400)
committerLiam R. Howlett <Liam.Howlett@oracle.com>
Thu, 2 Oct 2025 17:28:04 +0000 (13:28 -0400)
Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com>
lib/maple_tree.c

index f84c8cef9b063f91e5efe956d41d7afcea08612a..633ee584e755b04fe3d4be65826eea775d6f6391 100644 (file)
@@ -2951,11 +2951,10 @@ unsigned long node_copy(struct ma_state *mas, struct maple_node *src,
                memcpy(d_gaps, s_gaps, size * sizeof(unsigned long));
        }
 
-       d_max = s_max;
-       if (start + size < mt_pivots[s_mt]) {
-               if (s_max > s_pivots[size - 1])
-                       d_max = s_pivots[size - 1];
-       }
+       if (start + size - 1 < mt_pivots[s_mt])
+               d_max = s_pivots[size - 1];
+       else
+               d_max = s_max;
 
        if (d_start + size <= mt_pivots[d_mt])
                d_pivots[size - 1] = d_max;