Please enable JavaScript.
Coggle requires JavaScript to display documents.
support freeze bio based request_queue - Coggle Diagram
support freeze bio based request_queue
idea
grab two refs before submission for blk-mq
one ref is transfered to blk-mq request
put one reference if the bio is merged
put the ref in bio_endio
add one bio flag for checking if put queuing is required in bio_endio()
nvme multipath
same bio is used for both bio queue and blk-mq queue
corner cases
warning in bio_set_dev()
handling queue usage cnt in bio_reset
clear QUEUE_REFFED in bio_uninit()
bio on stack
coner cases
bio_set_dev() overwride bdev
raid has its own .end_io
bio_uninit()
easy to handle
bio_reset()
thinking more
track bio_set_dev()
->bi_bdev is reliable in ->submit_bio()
may change to other dev in ->submit_bio()
track .bi_end_io