On Wed, Nov 28, 2018 at 06:46:13PM +1100, Dave Chinner wrote: > Maybe we should be chaining bios for discontig buffers rather than > submitting them individually - that keeps the whole chain around > until all bios in the chain have completed, right? No, it doesn't. It just keeps the head of the chain around. But we generally submit one buffer per map, only if each map was bigger than BIO_MAX_PAGE * PAGE_SIZE we'd submit multiple bios. That should always be bigger than our buffer sizes. We also have the additional problem that a single bio submitted by the file system can be split into multiple by the block layer, which happens for raid 5 at least, but at least that splitting is driven by the drivers make_request function, so it can do smarts there.