On Wed, May 19, 2021 at 10:05:27AM +0800, Guoqing Jiang wrote: > Agree, not sure why it is added in 10433d04b8e6, cc Christoph. To ensure the assumption that the removal of the call to get_start_sect() was correct. And at the time it was. But 5.12 changed the code to remove bi_partno and keep the original bdev in ->bi_bdev so it became incorret. So yes, the assert should be removed, but the commit it fixes is 309dca309fc3 ("block: store a block_device pointer in struct bio"), not 10433d04b8e6. I'll send you a fix.