Dachepalli, Sudhir wrote: > scsi_req_map_sg::i=2,len=1024,data_len=3072,off=2048,PAGE_SIZE=4096,byte > s=1024,nr_vecs=0, nr_pages=0 > if (bio_add_pc_page(q, bio, page, bytes, off) != > bytes) { > printk("scsi_req_map_sg:: calling > bio_put \n"); > > printk("scsi_req_map_sg::i=%d,len=%d,data_len=%d,off=%d,PAGE_SIZE=%ld,by > tes=%d,nr_vecs=%d, nr_pages=%d\n", > > i,len,data_len,off,PAGE_SIZE,bytes,nr_vecs,nr_pages); > if( bio->bi_io_vec == NULL ) I think Boaz's first patch in this thread that counts the offsets correctly should be merged. I am not sure about the second one. If allocating a bio with zero vecs is valid, then I guess the patch should be merged. bio_alloc_bioset looks like it allows this, but people probably never do it (just when they hit bugs like this one :)). But I think if we are counting segments correctly we will not need that patch for this problem will we Boaz? Boaz, maybe you could also send the first patch in a seperate mail so that it can be merged (I do not think James wants to cut and paste two patches from one mail). Also, you do not want to use scsi_execute_async. I am trying to kill it. The original patches, never had that function and the later patches had a warning that you should not use it and that you should just use the request and the blk_rq* helpers directly. - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html