Intermittent storage (dm-crypt?) freeze - regression 6.4->6.5
Mikulas Patocka
mpatocka at redhat.com
Wed Nov 1 05:16:37 PDT 2023
On Wed, 1 Nov 2023, Hannes Reinecke wrote:
> And that is something I've been wondering (for quite some time now):
> What _is_ the appropriate error handling for -ENOMEM?
> At this time, we assume it to be a retryable error and re-run the queue
> in the hope that things will sort itself out.
> But if they don't we're stuck.
> Can we somehow figure out if we make progress during submission, and (at
> least) issue a warning once we detect a stall?
The appropriate way is to use mempools. mempool_alloc (with
__GFP_DIRECT_RECLAIM) can't ever fail.
But some kernel code does GFP_NOIO allocations in the I/O path and the
authors hope that they get away with it.
Mikulas
More information about the Linux-nvme
mailing list