Patch "kunit: Reset suite counter right before running tests" has been added to the 6.6-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

    kunit: Reset suite counter right before running tests

to the 6.6-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:
     kunit-reset-suite-counter-right-before-running-tests.patch
and it can be found in the queue-6.6 subdirectory.

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



commit 5a8ee692f63e9c9f057b19fc0f31b09d34f56560
Author: Michal Wajdeczko <michal.wajdeczko@xxxxxxxxx>
Date:   Wed Oct 4 22:57:00 2023 +0200

    kunit: Reset suite counter right before running tests
    
    [ Upstream commit 2e3c94aed51eabbe9c1c0ee515371ea5441c2fa7 ]
    
    Today we reset the suite counter as part of the suite cleanup,
    called from the module exit callback, but it might not work that
    well as one can try to collect results without unloading a previous
    test (either unintentionally or due to dependencies).
    
    For easy reproduction try to load the kunit-test.ko and then
    collect and parse results from the kunit-example-test.ko load.
    Parser will complain about mismatch of expected test number:
    
    [ ] KTAP version 1
    [ ] 1..1
    [ ]     # example: initializing suite
    [ ]     KTAP version 1
    [ ]     # Subtest: example
    ..
    [ ] # example: pass:5 fail:0 skip:4 total:9
    [ ] # Totals: pass:6 fail:0 skip:6 total:12
    [ ] ok 7 example
    
    [ ] [ERROR] Test: example: Expected test number 1 but found 7
    [ ] ===================== [PASSED] example =====================
    [ ] ============================================================
    [ ] Testing complete. Ran 12 tests: passed: 6, skipped: 6, errors: 1
    
    Since we are now printing suite test plan on every module load,
    right before running suite tests, we should make sure that suite
    counter will also start from 1. Easiest solution seems to be move
    counter reset to the __kunit_test_suites_init() function.
    
    Signed-off-by: Michal Wajdeczko <michal.wajdeczko@xxxxxxxxx>
    Cc: David Gow <davidgow@xxxxxxxxxx>
    Cc: Rae Moar <rmoar@xxxxxxxxxx>
    Reviewed-by: David Gow <davidgow@xxxxxxxxxx>
    Signed-off-by: Shuah Khan <skhan@xxxxxxxxxxxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/lib/kunit/test.c b/lib/kunit/test.c
index e451cfe6143e..7452d1a2acd9 100644
--- a/lib/kunit/test.c
+++ b/lib/kunit/test.c
@@ -740,6 +740,8 @@ int __kunit_test_suites_init(struct kunit_suite * const * const suites, int num_
 		return 0;
 	}
 
+	kunit_suite_counter = 1;
+
 	static_branch_inc(&kunit_running);
 
 	for (i = 0; i < num_suites; i++) {
@@ -766,8 +768,6 @@ void __kunit_test_suites_exit(struct kunit_suite **suites, int num_suites)
 
 	for (i = 0; i < num_suites; i++)
 		kunit_exit_suite(suites[i]);
-
-	kunit_suite_counter = 1;
 }
 EXPORT_SYMBOL_GPL(__kunit_test_suites_exit);
 




[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