aboutsummaryrefslogtreecommitdiffstats
path: root/lib/rwsem.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-01-30 07:33:00 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:33:00 -0500
commitd50efc6c40620b2e11648cac64ebf4a824e40382 (patch)
treedaf951117c86f2d4875216eee9e708a0c01c9e4b /lib/rwsem.c
parent3a556b26a2718e48aa2b6ce06ea4875ddcd0778e (diff)
x86: fix UML and -regparm=3
introduce the "asmregparm" calling convention: for functions implemented in assembly with a fixed regparm input parameters calling convention. mark the semaphore and rwsem slowpath functions with that. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Miklos Szeredi <mszeredi@suse.cz> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'lib/rwsem.c')
-rw-r--r--lib/rwsem.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/rwsem.c b/lib/rwsem.c
index 7d02700a4b0e..3e3365e5665e 100644
--- a/lib/rwsem.c
+++ b/lib/rwsem.c
@@ -187,7 +187,7 @@ rwsem_down_failed_common(struct rw_semaphore *sem,
187/* 187/*
188 * wait for the read lock to be granted 188 * wait for the read lock to be granted
189 */ 189 */
190struct rw_semaphore fastcall __sched * 190asmregparm struct rw_semaphore __sched *
191rwsem_down_read_failed(struct rw_semaphore *sem) 191rwsem_down_read_failed(struct rw_semaphore *sem)
192{ 192{
193 struct rwsem_waiter waiter; 193 struct rwsem_waiter waiter;
@@ -201,7 +201,7 @@ rwsem_down_read_failed(struct rw_semaphore *sem)
201/* 201/*
202 * wait for the write lock to be granted 202 * wait for the write lock to be granted
203 */ 203 */
204struct rw_semaphore fastcall __sched * 204asmregparm struct rw_semaphore __sched *
205rwsem_down_write_failed(struct rw_semaphore *sem) 205rwsem_down_write_failed(struct rw_semaphore *sem)
206{ 206{
207 struct rwsem_waiter waiter; 207 struct rwsem_waiter waiter;
@@ -216,7 +216,7 @@ rwsem_down_write_failed(struct rw_semaphore *sem)
216 * handle waking up a waiter on the semaphore 216 * handle waking up a waiter on the semaphore
217 * - up_read/up_write has decremented the active part of count if we come here 217 * - up_read/up_write has decremented the active part of count if we come here
218 */ 218 */
219struct rw_semaphore fastcall *rwsem_wake(struct rw_semaphore *sem) 219asmregparm struct rw_semaphore *rwsem_wake(struct rw_semaphore *sem)
220{ 220{
221 unsigned long flags; 221 unsigned long flags;
222 222
@@ -236,7 +236,7 @@ struct rw_semaphore fastcall *rwsem_wake(struct rw_semaphore *sem)
236 * - caller incremented waiting part of count and discovered it still negative 236 * - caller incremented waiting part of count and discovered it still negative
237 * - just wake up any readers at the front of the queue 237 * - just wake up any readers at the front of the queue
238 */ 238 */
239struct rw_semaphore fastcall *rwsem_downgrade_wake(struct rw_semaphore *sem) 239asmregparm struct rw_semaphore *rwsem_downgrade_wake(struct rw_semaphore *sem)
240{ 240{
241 unsigned long flags; 241 unsigned long flags;
242 242