Move the definition of the igt_atomic_section[] into a C file, leaving
the declaration in the header so as not to upset headertest!

Signed-off-by: Chris Wilson <[email protected]>
---
 drivers/gpu/drm/i915/Makefile               |  1 +
 drivers/gpu/drm/i915/selftests/igt_atomic.c | 42 +++++++++++++++++++++
 drivers/gpu/drm/i915/selftests/igt_atomic.h | 41 +-------------------
 3 files changed, 44 insertions(+), 40 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/selftests/igt_atomic.c

diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
index 1a2fad832a4d..5992ef800534 100644
--- a/drivers/gpu/drm/i915/Makefile
+++ b/drivers/gpu/drm/i915/Makefile
@@ -252,6 +252,7 @@ i915-$(CONFIG_DRM_I915_SELFTEST) += \
        gem/selftests/igt_gem_utils.o \
        selftests/i915_random.o \
        selftests/i915_selftest.o \
+       selftests/igt_atomic.o \
        selftests/igt_flush_test.o \
        selftests/igt_live_test.o \
        selftests/igt_mmap.o \
diff --git a/drivers/gpu/drm/i915/selftests/igt_atomic.c 
b/drivers/gpu/drm/i915/selftests/igt_atomic.c
new file mode 100644
index 000000000000..1cacb45ef290
--- /dev/null
+++ b/drivers/gpu/drm/i915/selftests/igt_atomic.c
@@ -0,0 +1,42 @@
+#include <linux/preempt.h>
+#include <linux/bottom_half.h>
+#include <linux/irqflags.h>
+
+#include "igt_atomic.h"
+
+static void __preempt_begin(void)
+{
+       preempt_disable();
+}
+
+static void __preempt_end(void)
+{
+       preempt_enable();
+}
+
+static void __softirq_begin(void)
+{
+       local_bh_disable();
+}
+
+static void __softirq_end(void)
+{
+       local_bh_enable();
+}
+
+static void __hardirq_begin(void)
+{
+       local_irq_disable();
+}
+
+static void __hardirq_end(void)
+{
+       local_irq_enable();
+}
+
+const struct igt_atomic_section igt_atomic_phases[] = {
+       { "preempt", __preempt_begin, __preempt_end },
+       { "softirq", __softirq_begin, __softirq_end },
+       { "hardirq", __hardirq_begin, __hardirq_end },
+       { }
+};
diff --git a/drivers/gpu/drm/i915/selftests/igt_atomic.h 
b/drivers/gpu/drm/i915/selftests/igt_atomic.h
index 93ec89f487ec..1991798abf4b 100644
--- a/drivers/gpu/drm/i915/selftests/igt_atomic.h
+++ b/drivers/gpu/drm/i915/selftests/igt_atomic.h
@@ -6,51 +6,12 @@
 #ifndef IGT_ATOMIC_H
 #define IGT_ATOMIC_H
 
-#include <linux/preempt.h>
-#include <linux/bottom_half.h>
-#include <linux/irqflags.h>
-
-static void __preempt_begin(void)
-{
-       preempt_disable();
-}
-
-static void __preempt_end(void)
-{
-       preempt_enable();
-}
-
-static void __softirq_begin(void)
-{
-       local_bh_disable();
-}
-
-static void __softirq_end(void)
-{
-       local_bh_enable();
-}
-
-static void __hardirq_begin(void)
-{
-       local_irq_disable();
-}
-
-static void __hardirq_end(void)
-{
-       local_irq_enable();
-}
-
 struct igt_atomic_section {
        const char *name;
        void (*critical_section_begin)(void);
        void (*critical_section_end)(void);
 };
 
-static const struct igt_atomic_section igt_atomic_phases[] = {
-       { "preempt", __preempt_begin, __preempt_end },
-       { "softirq", __softirq_begin, __softirq_end },
-       { "hardirq", __hardirq_begin, __hardirq_end },
-       { }
-};
+extern const struct igt_atomic_section igt_atomic_phases[];
 
 #endif /* IGT_ATOMIC_H */
-- 
2.25.0.rc0

_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to