syscall slowdown when repeat fork/exit/wait (LTP fork13)
This commit is contained in:
@ -491,14 +491,15 @@ retry_alloc:
|
|||||||
|
|
||||||
ret = wait_event_interruptible(wqhln->wq_syscall, wqhln->req);
|
ret = wait_event_interruptible(wqhln->wq_syscall, wqhln->req);
|
||||||
|
|
||||||
if (ret) {
|
|
||||||
return -EINTR;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Remove per-process wait queue head */
|
/* Remove per-process wait queue head */
|
||||||
irqflags = ihk_ikc_spinlock_lock(&c->wq_list_lock);
|
irqflags = ihk_ikc_spinlock_lock(&c->wq_list_lock);
|
||||||
list_del(&wqhln->list);
|
list_del(&wqhln->list);
|
||||||
ihk_ikc_spinlock_unlock(&c->wq_list_lock, irqflags);
|
ihk_ikc_spinlock_unlock(&c->wq_list_lock, irqflags);
|
||||||
|
if (ret) {
|
||||||
|
kfree(wqhln);
|
||||||
|
return -EINTR;
|
||||||
|
}
|
||||||
kfree(wqhln);
|
kfree(wqhln);
|
||||||
|
|
||||||
if (c->param.request_va->number == 61 &&
|
if (c->param.request_va->number == 61 &&
|
||||||
|
|||||||
Reference in New Issue
Block a user