epoll_wait(): make sure to schedule in offload
Change-Id: I435416cb0ac005a03cd995bf1aae75c9ce7b2082
This commit is contained in:
committed by
Masamichi Takagi
parent
0f6c36870c
commit
5e44c9c9f9
@ -242,6 +242,10 @@ long do_syscall(struct syscall_request *req, int cpu)
|
||||
unsigned long flags;
|
||||
DECLARE_WAITQ_ENTRY(scd_wq_entry, cpu_local_var(current));
|
||||
|
||||
if (req->number == __NR_epoll_wait ||
|
||||
req->number == __NR_epoll_pwait)
|
||||
goto schedule;
|
||||
|
||||
cpu_pause();
|
||||
|
||||
/* Spin if not preemptable */
|
||||
@ -270,6 +274,7 @@ long do_syscall(struct syscall_request *req, int cpu)
|
||||
continue;
|
||||
}
|
||||
|
||||
schedule:
|
||||
flags = cpu_disable_interrupt_save();
|
||||
|
||||
/* Try to sleep until notified */
|
||||
|
||||
Reference in New Issue
Block a user