diff mbox series

kunit: test: Use an action wrapper instead of a cast

Message ID 20231206082251.586204-1-davidgow@google.com (mailing list archive)
State Accepted
Commit 1bddcf77ce6668692fc15e968fd0870d5524d112
Delegated to: Brendan Higgins
Headers show
Series kunit: test: Use an action wrapper instead of a cast | expand

Commit Message

David Gow Dec. 6, 2023, 8:22 a.m. UTC
We missed one of the casts of kfree() to kunit_action_t in kunit-test,
which was only enabled when debugfs was in use. This could potentially
break CFI.

Use the existing wrapper function instead.

Signed-off-by: David Gow <davidgow@google.com>
---
 lib/kunit/kunit-test.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Rae Moar Dec. 8, 2023, 7:32 p.m. UTC | #1
On Wed, Dec 6, 2023 at 3:23 AM David Gow <davidgow@google.com> wrote:
>
> We missed one of the casts of kfree() to kunit_action_t in kunit-test,
> which was only enabled when debugfs was in use. This could potentially
> break CFI.
>
> Use the existing wrapper function instead.
>
> Signed-off-by: David Gow <davidgow@google.com>

Hello!

This looks good to me. All ready to go.

Reviewed-by: Rae Moar <rmoar@google.com>

Thanks!
-Rae

> ---
>  lib/kunit/kunit-test.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/kunit/kunit-test.c b/lib/kunit/kunit-test.c
> index 3e9c5192d095..ee6927c60979 100644
> --- a/lib/kunit/kunit-test.c
> +++ b/lib/kunit/kunit-test.c
> @@ -559,7 +559,7 @@ static void kunit_log_test(struct kunit *test)
>         KUNIT_EXPECT_TRUE(test, test->log->append_newlines);
>
>         full_log = string_stream_get_string(test->log);
> -       kunit_add_action(test, (kunit_action_t *)kfree, full_log);
> +       kunit_add_action(test, kfree_wrapper, full_log);
>         KUNIT_EXPECT_NOT_ERR_OR_NULL(test,
>                                      strstr(full_log, "put this in log."));
>         KUNIT_EXPECT_NOT_ERR_OR_NULL(test,
> --
> 2.43.0.rc2.451.g8631bc7472-goog
>
diff mbox series

Patch

diff --git a/lib/kunit/kunit-test.c b/lib/kunit/kunit-test.c
index 3e9c5192d095..ee6927c60979 100644
--- a/lib/kunit/kunit-test.c
+++ b/lib/kunit/kunit-test.c
@@ -559,7 +559,7 @@  static void kunit_log_test(struct kunit *test)
 	KUNIT_EXPECT_TRUE(test, test->log->append_newlines);
 
 	full_log = string_stream_get_string(test->log);
-	kunit_add_action(test, (kunit_action_t *)kfree, full_log);
+	kunit_add_action(test, kfree_wrapper, full_log);
 	KUNIT_EXPECT_NOT_ERR_OR_NULL(test,
 				     strstr(full_log, "put this in log."));
 	KUNIT_EXPECT_NOT_ERR_OR_NULL(test,