On Thu, 21 Mar 2019, John Dorminy wrote: > I'm thankful for this change making it explicit that this parameter is > not a max IO length but something else. I've been confused by the name > more than once when trying to figure out why IOs weren't coming in as > large as I expected. I wish there were a way for targets to say "I can > accept IO of up to $len" without saying "I want my IO split if it > crosses a multiple of $len, no matter what size it is", and I'm > thankful for this step making it easier if I ever act on that wish... If you want to limit the size of incoming bios, you can use dm_accept_partial_bio. dm_accept_partial_bio accepts a bio and a length. It will reduce the bio to the specified length and send the rest of data in another bio. See this piece of code in the function crypt_map: /* * Check if bio is too large, split as needed. */ if (unlikely(bio->bi_iter.bi_size > (BIO_MAX_PAGES << PAGE_SHIFT)) && (bio_data_dir(bio) == WRITE || cc->on_disk_tag_size)) dm_accept_partial_bio(bio, ((BIO_MAX_PAGES << PAGE_SHIFT) >> SECTOR_SHIFT)); Mikulas -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel