On Mon, Oct 10, 2022 at 03:19:16PM +0800, Yuwei Guan wrote: > csd/fifo_time need to be initialized before use again, > otherwise, it will keep the last tag value. > > Signed-off-by: Yuwei Guan <Yuwei.Guan@xxxxxxxxxxxxx> > --- > block/blk-mq.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/block/blk-mq.c b/block/blk-mq.c > index 8070b6c10e8d..f55d41f1d150 100644 > --- a/block/blk-mq.c > +++ b/block/blk-mq.c > @@ -383,6 +383,9 @@ static struct request *blk_mq_rq_ctx_init(struct blk_mq_alloc_data *data, > rq->end_io = NULL; > rq->end_io_data = NULL; > > + /* initialize csd/fifo_time before use */ > + memset(&rq->csd, 0x0, sizeof(rq->csd)); This is a rather unusual spelling of 0. But more importantly what problem with reuse do you actually see here? The csd is always initialized before use as it can't otherwise work. fifo_time also appears to, but the code is a bit convoluted.