Re: [PATCH 2/2] block: defer the use of inline biovecs for discardrequests

From: Mike Snitzer
Date: Mon Jun 28 2010 - 08:46:17 EST


On Mon, Jun 28 2010 at 8:41am -0400,
Jens Axboe <axboe@xxxxxxxxx> wrote:

> On 2010-06-28 14:37, Mike Snitzer wrote:
> > On Mon, Jun 28 2010 at 8:34am -0400,
> > Jens Axboe <axboe@xxxxxxxxx> wrote:
> >
> >> On 2010-06-26 21:56, Mike Snitzer wrote:
> >>> Don't alloc discard bio with a biovec in blkdev_issue_discard. Doing so
> >>> means bio_has_data() will not be true until the SCSI layer adds the
> >>> payload to the discard request via blk_add_request_payload.
> >>
> >> Sorry, this looks horrible.
> >
> > Your judgment isn't giving me much to work with... not sure where I go
> > with "horrible".
>
> The horrible part is working around that issue by fiddling with the
> assignment of the internal vec. THAT looks like a horrible solution
> to that problem.
>
> How about just adding a check to bio_has_data() for non-zero
> bio->bi_vcnt?

Sure, that works.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/