From 28b6e41142c035b46d2784de399c5dadfa5ce429 Mon Sep 17 00:00:00 2001 From: Daniel Vetter Date: Sun, 16 Mar 2014 14:40:32 +0100 Subject: [PATCH] lib/igt_debugfs: implement a singleton igt_debugfs_t instance Allows us to remove every so little bit of boilerplate from tests, once it's all rolled out. Signed-off-by: Daniel Vetter --- lib/igt_debugfs.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c index 79b2618b..4a338487 100644 --- a/lib/igt_debugfs.c +++ b/lib/igt_debugfs.c @@ -121,6 +121,22 @@ void igt_debugfs_init(igt_debugfs_t *debugfs) igt_assert(__igt_debugfs_init(debugfs)); } +static igt_debugfs_t *__igt_debugfs_singleton(void) +{ + static igt_debugfs_t singleton; + static bool init_done = false; + + if (init_done) + return &singleton; + + if (__igt_debugfs_init(&singleton)) { + init_done = true; + return &singleton; + } else { + return NULL; + } +} + /** * igt_debugfs_open: * @debugfs: debugfs access structure