Hi Tejun, On Wed, Apr 08, 2020 at 04:14:47PM -0400, Tejun Heo wrote: > Currently, at the time of completeion, there's no way of knowing how big a > request was. blk-iocost will need this information to account for IO size when > calculating expected latencies. > > This patch adds rq->io_data_len which remembers blk_rq_bytes() at the time the > request gets issued. The field is enabled iff CONFIG_BLK_IO_DATA_LEN is set and > doesn't increase the size of the struct even when enabled. Almost all __blk_mq_end_request() follow blk_update_request(), so the completed bytes can be passed to __blk_mq_end_request(), then we can avoid to introduce this field. Also there is just 20 callers of __blk_mq_end_request(), looks this kind of change shouldn't be too big. Thanks, Ming