of: unittest: Run overlay apply/revert sequence three times
authorGeert Uytterhoeven <geert+renesas@glider.be>
Tue, 22 Aug 2023 10:22:34 +0000 (12:22 +0200)
committerRob Herring <robh@kernel.org>
Wed, 23 Aug 2023 19:35:45 +0000 (14:35 -0500)
Run the test for the overlay apply/revert sequence three times, to
test if there are unbalanced of_node_put() calls causing reference
counts to become negative.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/a9fb4eb560c58d11a7f167bc78a137b46e76cf15.1692699743.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
drivers/of/unittest.c

index 939e33a..33c20ed 100644 (file)
@@ -3066,6 +3066,7 @@ static void __init of_unittest_overlay_notify(void)
 static void __init of_unittest_overlay(void)
 {
        struct device_node *bus_np = NULL;
+       unsigned int i;
 
        if (platform_driver_register(&unittest_driver)) {
                unittest(0, "could not register unittest driver\n");
@@ -3103,7 +3104,8 @@ static void __init of_unittest_overlay(void)
        of_unittest_overlay_2();
        of_unittest_overlay_3();
        of_unittest_overlay_4();
-       of_unittest_overlay_5();
+       for (i = 0; i < 3; i++)
+               of_unittest_overlay_5();
        of_unittest_overlay_6();
        of_unittest_overlay_8();