Patch "maple_tree: fix 32 bit mas_next testing" has been added to the 6.4-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    maple_tree: fix 32 bit mas_next testing

to the 6.4-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     maple_tree-fix-32-bit-mas_next-testing.patch
and it can be found in the queue-6.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 70ce8be704471e08ed1ded16dce6133861ad57bc
Author: Liam R. Howlett <Liam.Howlett@xxxxxxxxxx>
Date:   Wed Jul 12 13:39:15 2023 -0400

    maple_tree: fix 32 bit mas_next testing
    
    [ Upstream commit 7a93c71a6714ca1a9c03d70432dac104b0cfb815 ]
    
    The test setup of mas_next is dependent on node entry size to create a 2
    level tree, but the tests did not account for this in the expected value
    when shifting beyond the scope of the tree.
    
    Fix this by setting up the test to succeed depending on the node entries
    which is dependent on the 32/64 bit setup.
    
    Link: https://lkml.kernel.org/r/20230712173916.168805-1-Liam.Howlett@xxxxxxxxxx
    Fixes: 120b116208a0 ("maple_tree: reorganize testing to restore module testing")
    Signed-off-by: Liam R. Howlett <Liam.Howlett@xxxxxxxxxx>
    Reported-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Closes: https://lore.kernel.org/linux-mm/CAMuHMdV4T53fOw7VPoBgPR7fP6RYqf=CBhD_y_vOg53zZX_DnA@xxxxxxxxxxxxxx/
    Tested-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
    Cc: <stable@xxxxxxxxxxxxxxx>
    Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/lib/test_maple_tree.c b/lib/test_maple_tree.c
index 261bad680f81d..fad668042f3e7 100644
--- a/lib/test_maple_tree.c
+++ b/lib/test_maple_tree.c
@@ -1863,13 +1863,16 @@ static noinline void __init next_prev_test(struct maple_tree *mt)
 						   725};
 	static const unsigned long level2_32[] = { 1747, 2000, 1750, 1755,
 						   1760, 1765};
+	unsigned long last_index;
 
 	if (MAPLE_32BIT) {
 		nr_entries = 500;
 		level2 = level2_32;
+		last_index = 0x138e;
 	} else {
 		nr_entries = 200;
 		level2 = level2_64;
+		last_index = 0x7d6;
 	}
 
 	for (i = 0; i <= nr_entries; i++)
@@ -1976,7 +1979,7 @@ static noinline void __init next_prev_test(struct maple_tree *mt)
 
 	val = mas_next(&mas, ULONG_MAX);
 	MT_BUG_ON(mt, val != NULL);
-	MT_BUG_ON(mt, mas.index != ULONG_MAX);
+	MT_BUG_ON(mt, mas.index != last_index);
 	MT_BUG_ON(mt, mas.last != ULONG_MAX);
 
 	val = mas_prev(&mas, 0);



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux