On Tue, Jun 09 2009, Kiyoshi Ueda wrote: > Hi Jens, > > +/* > + * Copy request information of the original request to the clone request. > + */ > +static void __blk_rq_prep_clone(struct request *dst, struct request *src) > +{ > + dst->cpu = src->cpu; > + dst->cmd_flags = (rq_data_dir(src) | REQ_NOMERGE); > + dst->cmd_type = src->cmd_type; > + dst->__sector = blk_rq_pos(src); > + dst->__data_len = blk_rq_bytes(src); > + dst->nr_phys_segments = src->nr_phys_segments; > + dst->ioprio = src->ioprio; > + dst->buffer = src->buffer; > + dst->cmd_len = src->cmd_len; > + dst->cmd = src->cmd; Are you making sure that 'src' always exists while 'dst' is alive? -- Jens Axboe -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel