[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a98db60d-ceb9-2a30-39bb-187125f56627@grimberg.me>
Date: Tue, 6 Nov 2018 19:11:36 -0800
From: Sagi Grimberg <sagi@...mberg.me>
To: Johannes Thumshirn <jthumshirn@...e.de>,
Ming Lei <ming.lei@...hat.com>
Cc: Jens Axboe <axboe@...com>,
Linux Block Layer Mailinglist <linux-block@...r.kernel.org>,
Hannes Reinecke <hare@...e.de>,
Linux Kernel Mailinglist <linux-kernel@...r.kernel.org>,
Jan Kara <jack@...e.cz>
Subject: Re: [PATCH] block: respect virtual boundary mask in bvecs
>> If you mean the real huge page, this patch shouldn't have made a difference
>> because bio_vec->bv_offset is in [0, PAGE_SIZE), and iSer sets virt
>> boundary as 4K - 1.
>>
>> However, things will change after multipage bvec is introduced.
>
>
> Hi Ming,
>
> I've received a blktrace from our customer showing the issue [1].
>
> In this example trace they've submitted (contiguous) 64K I/Os and
> without this patch, they're seeing a lot of splits as indicated by the
> trace.
>
> With the patch applied the I/O is directly issued to the LLDD without
> the splits.
>
> [1] http://beta.suse.com/private/jthumshirn/blktrace.txt
>
This patch makes sense to me. However I agree that we need to clarify
that this addresses cases where PAGE_SIZE-1 > queue_virt_boundary(q).
And also, lets replace "like iser" with "drivers that sets a virtual
boundary constraint" as nvme-rdma does the same thing.
Powered by blists - more mailing lists