On Wed, Dec 20 2006, Jens Axboe wrote: > On Wed, Dec 20 2006, FUJITA Tomonori wrote: > > This adds SG_IO support to SG v4. > > > > Signed-off-by: FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx> > > --- > > block/bsg.c | 23 +++++++++++++++++++++-- > > 1 files changed, 21 insertions(+), 2 deletions(-) > > > > diff --git a/block/bsg.c b/block/bsg.c > > index 6d139d2..9dc5d36 100644 > > --- a/block/bsg.c > > +++ b/block/bsg.c > > @@ -945,8 +945,27 @@ bsg_ioctl(struct inode *inode, struct fi > > void __user *uarg = (void __user *) arg; > > return scsi_cmd_ioctl(file, bd->disk, cmd, uarg); > > } > > - case SG_IO: > > - return -EINVAL; > > + case SG_IO: { > > + struct request *rq; > > + struct bio *bio; > > + struct sg_io_v4 hdr; > > + > > + if (copy_from_user(&hdr, uarg, sizeof(hdr))) > > + return -EFAULT; > > + > > + rq = bsg_map_hdr(bd, &hdr); > > + if (IS_ERR(rq)) > > + return PTR_ERR(rq); > > + > > + bio = rq->bio; > > Pointless assignment. In fact the bio can be completely removed. > > + blk_execute_rq(bd->queue, bd->disk, rq, 0); > > + blk_complete_sgv4_hdr_rq(rq, &hdr, bio); My mistake, the bio assignment is fine and of course needed. -- Jens Axboe - 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