* [PATCH] locks should not be needed for reading completion state
@ 2015-01-17 4:05 Nicholas Mc Guire
2015-02-04 14:37 ` [tip:locking/core] sched/completion: Remove unnecessary -> wait.lock serialization when " tip-bot for Nicholas Mc Guire
0 siblings, 1 reply; 2+ messages in thread
From: Nicholas Mc Guire @ 2015-01-17 4:05 UTC (permalink / raw)
To: Ingo Molnar; +Cc: Peter Zijlstra, linux-kernel, Nicholas Mc Guire
Signed-off-by: Nicholas Mc Guire <der.herr@hofr.at>
---
Should that not be enough to wrap it into ACCESS_ONCE() here ?
Not a wild performance benefit - but might be worth it anyway
kernel/sched/completion.c | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/kernel/sched/completion.c b/kernel/sched/completion.c
index 607f852..7c5cd70 100644
--- a/kernel/sched/completion.c
+++ b/kernel/sched/completion.c
@@ -288,13 +288,6 @@ EXPORT_SYMBOL(try_wait_for_completion);
*/
bool completion_done(struct completion *x)
{
- unsigned long flags;
- int ret = 1;
-
- spin_lock_irqsave(&x->wait.lock, flags);
- if (!x->done)
- ret = 0;
- spin_unlock_irqrestore(&x->wait.lock, flags);
- return ret;
+ return !ACCESS_ONCE(x->done);
}
EXPORT_SYMBOL(completion_done);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [tip:locking/core] sched/completion: Remove unnecessary -> wait.lock serialization when reading completion state
2015-01-17 4:05 [PATCH] locks should not be needed for reading completion state Nicholas Mc Guire
@ 2015-02-04 14:37 ` tip-bot for Nicholas Mc Guire
0 siblings, 0 replies; 2+ messages in thread
From: tip-bot for Nicholas Mc Guire @ 2015-02-04 14:37 UTC (permalink / raw)
To: linux-tip-commits
Cc: hpa, der.herr, peterz, linux-kernel, tglx, torvalds, mingo
Commit-ID: de30ec47302c101c7badc8fe687641fd75e596e7
Gitweb: http://git.kernel.org/tip/de30ec47302c101c7badc8fe687641fd75e596e7
Author: Nicholas Mc Guire <der.herr@hofr.at>
AuthorDate: Sat, 17 Jan 2015 05:05:34 +0100
Committer: Ingo Molnar <mingo@kernel.org>
CommitDate: Wed, 4 Feb 2015 07:57:36 +0100
sched/completion: Remove unnecessary ->wait.lock serialization when reading completion state
Signed-off-by: Nicholas Mc Guire <der.herr@hofr.at>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Link: http://lkml.kernel.org/r/1421467534-22834-1-git-send-email-der.herr@hofr.at
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
kernel/sched/completion.c | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/kernel/sched/completion.c b/kernel/sched/completion.c
index 607f852..9d1fe32d 100644
--- a/kernel/sched/completion.c
+++ b/kernel/sched/completion.c
@@ -288,13 +288,6 @@ EXPORT_SYMBOL(try_wait_for_completion);
*/
bool completion_done(struct completion *x)
{
- unsigned long flags;
- int ret = 1;
-
- spin_lock_irqsave(&x->wait.lock, flags);
- if (!x->done)
- ret = 0;
- spin_unlock_irqrestore(&x->wait.lock, flags);
- return ret;
+ return !!ACCESS_ONCE(x->done);
}
EXPORT_SYMBOL(completion_done);
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-02-04 14:38 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-17 4:05 [PATCH] locks should not be needed for reading completion state Nicholas Mc Guire
2015-02-04 14:37 ` [tip:locking/core] sched/completion: Remove unnecessary -> wait.lock serialization when " tip-bot for Nicholas Mc Guire
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.