[igt-dev] [PATCH i-g-t v2 08/11] lib/kunit: Provide all results cleanup helper
Janusz Krzysztofik
janusz.krzysztofik at linux.intel.com
Mon Oct 9 12:27:59 UTC 2023
Planned changes require a couple of loops around kunit_result_free().
Since we already have such loop, move it into a helper in preparation for
future uses.
Signed-off-by: Janusz Krzysztofik <janusz.krzysztofik at linux.intel.com>
---
lib/igt_kmod.c | 20 ++++++++++++++------
1 file changed, 14 insertions(+), 6 deletions(-)
diff --git a/lib/igt_kmod.c b/lib/igt_kmod.c
index 387efbb59f..fed0855c84 100644
--- a/lib/igt_kmod.c
+++ b/lib/igt_kmod.c
@@ -885,13 +885,25 @@ static void kunit_result_free(struct igt_ktap_result **r,
*r = NULL;
}
+static void kunit_results_free(struct igt_list_head *results,
+ char **suite_name, char **case_name)
+{
+ struct igt_ktap_result *r, *rn;
+
+ igt_list_for_each_entry_safe(r, rn, results, link)
+ kunit_result_free(&r, suite_name, case_name);
+
+ free(*case_name);
+ free(*suite_name);
+}
+
static void
__igt_kunit(struct igt_ktest *tst, const char *name, const char *opts)
{
struct modprobe_data modprobe = { pthread_self(), tst->kmod, opts, 0, };
char *suite_name = NULL, *case_name = NULL;
- struct igt_ktap_result *r, *rn;
struct igt_ktap_results *ktap;
+ struct igt_ktap_result *r;
pthread_mutexattr_t attr;
IGT_LIST_HEAD(results);
unsigned long taints;
@@ -997,11 +1009,7 @@ __igt_kunit(struct igt_ktest *tst, const char *name, const char *opts)
} while (ret == -EINPROGRESS);
- igt_list_for_each_entry_safe(r, rn, &results, link)
- kunit_result_free(&r, &suite_name, &case_name);
-
- free(case_name);
- free(suite_name);
+ kunit_results_free(&results, &suite_name, &case_name);
switch (pthread_mutex_lock(&modprobe.lock)) {
case 0:
--
2.42.0
More information about the igt-dev
mailing list