kunit: hide unexported try-catch interface in try-catch-impl.h
authorAlan Maguire <alan.maguire@oracle.com>
Mon, 6 Jan 2020 22:28:19 +0000 (22:28 +0000)
committerShuah Khan <skhan@linuxfoundation.org>
Thu, 9 Jan 2020 23:42:09 +0000 (16:42 -0700)
Define function as static inline in try-catch-impl.h to allow it to
be used in kunit itself and tests.  Also remove unused
kunit_generic_try_catch

Co-developed-by: Knut Omang <knut.omang@oracle.com>
Signed-off-by: Knut Omang <knut.omang@oracle.com>
Signed-off-by: Alan Maguire <alan.maguire@oracle.com>
Reviewed-by: Brendan Higgins <brendanhiggins@google.com>
Tested-by: Brendan Higgins <brendanhiggins@google.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
include/kunit/try-catch.h
lib/kunit/test-test.c
lib/kunit/test.c
lib/kunit/try-catch-impl.h [new file with mode: 0644]
lib/kunit/try-catch.c

index 404f336..c507dd4 100644 (file)
@@ -53,11 +53,6 @@ struct kunit_try_catch {
        void *context;
 };
 
-void kunit_try_catch_init(struct kunit_try_catch *try_catch,
-                         struct kunit *test,
-                         kunit_try_catch_func_t try,
-                         kunit_try_catch_func_t catch);
-
 void kunit_try_catch_run(struct kunit_try_catch *try_catch, void *context);
 
 void __noreturn kunit_try_catch_throw(struct kunit_try_catch *try_catch);
@@ -67,9 +62,4 @@ static inline int kunit_try_catch_get_result(struct kunit_try_catch *try_catch)
        return try_catch->try_result;
 }
 
-/*
- * Exposed for testing only.
- */
-void kunit_generic_try_catch_init(struct kunit_try_catch *try_catch);
-
 #endif /* _KUNIT_TRY_CATCH_H */
index 5ebe059..5a6cc04 100644 (file)
@@ -7,6 +7,8 @@
  */
 #include <kunit/test.h>
 
+#include "try-catch-impl.h"
+
 struct kunit_try_catch_test_context {
        struct kunit_try_catch *try_catch;
        bool function_called;
index 36ebf47..58a6227 100644 (file)
@@ -7,11 +7,11 @@
  */
 
 #include <kunit/test.h>
-#include <kunit/try-catch.h>
 #include <linux/kernel.h>
 #include <linux/sched/debug.h>
 
 #include "string-stream.h"
+#include "try-catch-impl.h"
 
 static void kunit_set_failure(struct kunit *test)
 {
diff --git a/lib/kunit/try-catch-impl.h b/lib/kunit/try-catch-impl.h
new file mode 100644 (file)
index 0000000..203ba6a
--- /dev/null
@@ -0,0 +1,27 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Internal kunit try catch implementation to be shared with tests.
+ *
+ * Copyright (C) 2019, Google LLC.
+ * Author: Brendan Higgins <brendanhiggins@google.com>
+ */
+
+#ifndef _KUNIT_TRY_CATCH_IMPL_H
+#define _KUNIT_TRY_CATCH_IMPL_H
+
+#include <kunit/try-catch.h>
+#include <linux/types.h>
+
+struct kunit;
+
+static inline void kunit_try_catch_init(struct kunit_try_catch *try_catch,
+                                       struct kunit *test,
+                                       kunit_try_catch_func_t try,
+                                       kunit_try_catch_func_t catch)
+{
+       try_catch->test = test;
+       try_catch->try = try;
+       try_catch->catch = catch;
+}
+
+#endif /* _KUNIT_TRY_CATCH_IMPL_H */
index 5568683..4a66d16 100644 (file)
@@ -8,12 +8,13 @@
  */
 
 #include <kunit/test.h>
-#include <kunit/try-catch.h>
 #include <linux/completion.h>
 #include <linux/kernel.h>
 #include <linux/kthread.h>
 #include <linux/sched/sysctl.h>
 
+#include "try-catch-impl.h"
+
 void __noreturn kunit_try_catch_throw(struct kunit_try_catch *try_catch)
 {
        try_catch->try_result = -EFAULT;
@@ -106,13 +107,3 @@ void kunit_try_catch_run(struct kunit_try_catch *try_catch, void *context)
 
        try_catch->catch(try_catch->context);
 }
-
-void kunit_try_catch_init(struct kunit_try_catch *try_catch,
-                         struct kunit *test,
-                         kunit_try_catch_func_t try,
-                         kunit_try_catch_func_t catch)
-{
-       try_catch->test = test;
-       try_catch->try = try;
-       try_catch->catch = catch;
-}