On Thu, May 24, 2018 at 12:45:15PM +0800, Ming Lei wrote: > This change should have been done after '[PATCH 13/14] blk-mq: Remove > generation seqeunce', otherwise the timed-out request won't be completed > by nvme_cancel_request() at all because we always marked this request as > 'COMPLETE' before calling .timeout(). Yes. Or we should start out with reverting the whole series introducing the gstate. I think it has shown to create much more problems than it solved, and starting from a clean state without it will allow us to iterate much saner.