Fix a write hang with throttling due to timer reenterability / triggerability

nfs-proxy-old
Vitaliy Filippov 2022-03-28 01:42:06 +03:00
parent 65d08e067e
commit 79ebda933e
1 changed files with 2 additions and 1 deletions

View File

@ -544,12 +544,13 @@ resume_4:
if (ref_us > exec_us + throttle_threshold_us)
{
// Pause reply
PRIV(op)->op_state = 5;
// Remember that the timer can in theory be called right here
tfd->set_timer_us(ref_us-exec_us, false, [this, op](int timer_id)
{
PRIV(op)->op_state++;
ringloop->wakeup();
});
PRIV(op)->op_state = 5;
return 1;
}
}