diff --git a/src/server.c b/src/server.c index f786e30d8..24f0c4692 100644 --- a/src/server.c +++ b/src/server.c @@ -5964,6 +5964,12 @@ static int init_srv_requeue(struct server *srv) srv->requeue_tasklet = t; t->process = server_requeue; t->context = srv; + /* + * Run the tasklet once, in the very unlikely event the server + * failed to queue itself when brought up, which could happen if + * a memory allocation failed. + */ + tasklet_wakeup(t); return ERR_NONE; }