[PATCH v2] refcount: trim headers

From: Alexey Dobriyan
Date: Sat Mar 31 2018 - 18:00:49 EST


kernel.h is not needed, but compiler.h is.

mutex.h is not needed only a forward declaration of "struct mutex".

spinlock.h is not needed, spinlock_types.h is enough.

Signed-off-by: Alexey Dobriyan <adobriyan@xxxxxxxxx>
---

arch/x86/include/asm/refcount.h | 1 +
include/linux/refcount.h | 7 ++++---
lib/refcount.c | 2 ++
3 files changed, 7 insertions(+), 3 deletions(-)

--- a/arch/x86/include/asm/refcount.h
+++ b/arch/x86/include/asm/refcount.h
@@ -5,6 +5,7 @@
* PaX/grsecurity.
*/
#include <linux/refcount.h>
+#include <asm/bug.h>

/*
* This is the first portion of the refcount error handling, which lives in
--- a/include/linux/refcount.h
+++ b/include/linux/refcount.h
@@ -3,9 +3,10 @@
#define _LINUX_REFCOUNT_H

#include <linux/atomic.h>
-#include <linux/mutex.h>
-#include <linux/spinlock.h>
-#include <linux/kernel.h>
+#include <linux/compiler.h>
+#include <linux/spinlock_types.h>
+
+struct mutex;

/**
* struct refcount_t - variant of atomic_t specialized for reference counts
--- a/lib/refcount.c
+++ b/lib/refcount.c
@@ -35,7 +35,9 @@
*
*/

+#include <linux/mutex.h>
#include <linux/refcount.h>
+#include <linux/spinlock.h>
#include <linux/bug.h>

#ifdef CONFIG_REFCOUNT_FULL