summaryrefslogtreecommitdiffstats
path: root/kernel/sched
diff options
context:
space:
mode:
authorFrederic Weisbecker2015-08-11 18:03:23 +0200
committerFrederic Weisbecker2016-02-13 15:34:28 +0100
commit5fd7a09cfb8c6852f596c1f8c891c6158395250e (patch)
treec136e50a60a4328e7779d01c3972d477883dc39f /kernel/sched
parentLinux 4.5-rc2 (diff)
downloadkernel-qcow2-linux-5fd7a09cfb8c6852f596c1f8c891c6158395250e.tar.gz
kernel-qcow2-linux-5fd7a09cfb8c6852f596c1f8c891c6158395250e.tar.xz
kernel-qcow2-linux-5fd7a09cfb8c6852f596c1f8c891c6158395250e.zip
atomic: Export fetch_or()
Export fetch_or() that's implemented and used internally by the scheduler. We are going to use it for NO_HZ so make it generally available. Reviewed-by: Chris Metcalf <cmetcalf@ezchip.com> Cc: Christoph Lameter <cl@linux.com> Cc: Chris Metcalf <cmetcalf@ezchip.com> Cc: Ingo Molnar <mingo@kernel.org> Cc: Luiz Capitulino <lcapitulino@redhat.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Rik van Riel <riel@redhat.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Diffstat (limited to 'kernel/sched')
-rw-r--r--kernel/sched/core.c14
1 files changed, 0 insertions, 14 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index 9503d590e5ef..7142feb4b92d 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -453,20 +453,6 @@ static inline void init_hrtick(void)
}
#endif /* CONFIG_SCHED_HRTICK */
-/*
- * cmpxchg based fetch_or, macro so it works for different integer types
- */
-#define fetch_or(ptr, val) \
-({ typeof(*(ptr)) __old, __val = *(ptr); \
- for (;;) { \
- __old = cmpxchg((ptr), __val, __val | (val)); \
- if (__old == __val) \
- break; \
- __val = __old; \
- } \
- __old; \
-})
-
#if defined(CONFIG_SMP) && defined(TIF_POLLING_NRFLAG)
/*
* Atomically set TIF_NEED_RESCHED and test for TIF_POLLING_NRFLAG,