block: fix race between request completion and timeout handling