Milan Broz <[email protected]>: > Anyway, my understanding is that all device-mapper targets use mempools, > which should ensure that they can process even under memory pressure.
Okay, I just read some more code and docs. dm-integrity fortunately uses bufio for checksums only. And bufio allocates memory without __GFP_IO (thus allocation should not lead to recursion). And bufio claims that "dm-bufio is resistant to allocation failures": https://elixir.bootlin.com/linux/v6.19-rc2/source/drivers/md/dm-bufio.c#L1603 . This still seems to be fragile. So I will change mode to 'D' and hope for the best. :) -- Askar Safin
