Messages in this thread | | | Date | Mon, 28 Jun 2010 08:45:48 -0400 | From | Mike Snitzer <> | Subject | Re: [PATCH 2/2] block: defer the use of inline biovecs for discard requests |
| |
On Mon, Jun 28 2010 at 8:41am -0400, Jens Axboe <axboe@kernel.dk> wrote:
> On 2010-06-28 14:37, Mike Snitzer wrote: > > On Mon, Jun 28 2010 at 8:34am -0400, > > Jens Axboe <axboe@kernel.dk> 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.
| |