diff --git a/executer/kernel/control.c b/executer/kernel/control.c index df370479..51729da6 100644 --- a/executer/kernel/control.c +++ b/executer/kernel/control.c @@ -497,7 +497,7 @@ retry_alloc: irqflags = ihk_ikc_spinlock_lock(&c->wq_list_lock); list_del(&wqhln->list); ihk_ikc_spinlock_unlock(&c->wq_list_lock, irqflags); - if (ret) { + if (ret && !wqhln->req) { kfree(wqhln); return -EINTR; }