On Wed, Mar 22, 2023 at 02:50:09PM +0100, Pankaj Raghav wrote: > - if (!parent) > - bio->bi_end_io = zram_page_end_io; > - else > + if (parent) I don't think a non-chained bio without and end_io handler can work. This !parent case seems to come from writeback_store, and as far as I can tell is broken already in the current code as it just fires off an async read without ever waiting for it, using an on-stack bio just to make things complicated. The bvec reading code in zram is a mess, but I have an idea how to clean it up with a little series that should also help with this issue.