Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b15136e9 authored by Ingo Molnar's avatar Ingo Molnar
Browse files

sched: fix fastcall mismatch in completion APIs



Jeff Dike noticed that wait_for_completion_interruptible()'s prototype
had a mismatched fastcall.

Fix this by removing the fastcall attributes from all the completion APIs.

Found-by: default avatarJeff Dike <jdike@linux.intel.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 7378547f
Loading
Loading
Loading
Loading
+9 −9
Original line number Original line Diff line number Diff line
@@ -42,15 +42,15 @@ static inline void init_completion(struct completion *x)
	init_waitqueue_head(&x->wait);
	init_waitqueue_head(&x->wait);
}
}


extern void FASTCALL(wait_for_completion(struct completion *));
extern void wait_for_completion(struct completion *);
extern int FASTCALL(wait_for_completion_interruptible(struct completion *x));
extern int wait_for_completion_interruptible(struct completion *x);
extern unsigned long FASTCALL(wait_for_completion_timeout(struct completion *x,
extern unsigned long wait_for_completion_timeout(struct completion *x,
						   unsigned long timeout));
						   unsigned long timeout);
extern unsigned long FASTCALL(wait_for_completion_interruptible_timeout(
extern unsigned long wait_for_completion_interruptible_timeout(
			struct completion *x, unsigned long timeout));
			struct completion *x, unsigned long timeout);


extern void FASTCALL(complete(struct completion *));
extern void complete(struct completion *);
extern void FASTCALL(complete_all(struct completion *));
extern void complete_all(struct completion *);


#define INIT_COMPLETION(x)	((x).done = 0)
#define INIT_COMPLETION(x)	((x).done = 0)


+5 −5
Original line number Original line Diff line number Diff line
@@ -3820,7 +3820,7 @@ __wake_up_sync(wait_queue_head_t *q, unsigned int mode, int nr_exclusive)
}
}
EXPORT_SYMBOL_GPL(__wake_up_sync);	/* For internal use only */
EXPORT_SYMBOL_GPL(__wake_up_sync);	/* For internal use only */


void fastcall complete(struct completion *x)
void complete(struct completion *x)
{
{
	unsigned long flags;
	unsigned long flags;


@@ -3832,7 +3832,7 @@ void fastcall complete(struct completion *x)
}
}
EXPORT_SYMBOL(complete);
EXPORT_SYMBOL(complete);


void fastcall complete_all(struct completion *x)
void complete_all(struct completion *x)
{
{
	unsigned long flags;
	unsigned long flags;


@@ -3884,13 +3884,13 @@ wait_for_common(struct completion *x, long timeout, int state)
	return timeout;
	return timeout;
}
}


void fastcall __sched wait_for_completion(struct completion *x)
void __sched wait_for_completion(struct completion *x)
{
{
	wait_for_common(x, MAX_SCHEDULE_TIMEOUT, TASK_UNINTERRUPTIBLE);
	wait_for_common(x, MAX_SCHEDULE_TIMEOUT, TASK_UNINTERRUPTIBLE);
}
}
EXPORT_SYMBOL(wait_for_completion);
EXPORT_SYMBOL(wait_for_completion);


unsigned long fastcall __sched
unsigned long __sched
wait_for_completion_timeout(struct completion *x, unsigned long timeout)
wait_for_completion_timeout(struct completion *x, unsigned long timeout)
{
{
	return wait_for_common(x, timeout, TASK_UNINTERRUPTIBLE);
	return wait_for_common(x, timeout, TASK_UNINTERRUPTIBLE);
@@ -3906,7 +3906,7 @@ int __sched wait_for_completion_interruptible(struct completion *x)
}
}
EXPORT_SYMBOL(wait_for_completion_interruptible);
EXPORT_SYMBOL(wait_for_completion_interruptible);


unsigned long fastcall __sched
unsigned long __sched
wait_for_completion_interruptible_timeout(struct completion *x,
wait_for_completion_interruptible_timeout(struct completion *x,
					  unsigned long timeout)
					  unsigned long timeout)
{
{