linux-rdma.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Laurence Oberman <loberman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Christoph Hellwig <hch-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
Cc: Bart Van Assche
	<Bart.VanAssche-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-scsi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: Testing latest linux-next 4.9 ib_srp and ib_srpt sees I/O capped at 1MB and no merging
Date: Thu, 22 Dec 2016 12:59:59 -0500 (EST)	[thread overview]
Message-ID: <1357936316.8619285.1482429599286.JavaMail.zimbra@redhat.com> (raw)
In-Reply-To: <20161222154049.GA4638-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>


----- Original Message -----
> From: "Christoph Hellwig" <hch-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
> To: "Laurence Oberman" <loberman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
> Cc: "Christoph Hellwig" <hch-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>, "Bart Van Assche" <Bart.VanAssche-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>,
> linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-scsi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> Sent: Thursday, December 22, 2016 10:40:49 AM
> Subject: Re: Testing latest linux-next 4.9 ib_srp and ib_srpt sees I/O capped at 1MB and no merging
> 
> Hi Laurance,
> 
> please try the patch below:
> 
> ---
> From 69febe1cfb55844862f768447432249781001f9c Mon Sep 17 00:00:00 2001
> From: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
> Date: Thu, 22 Dec 2016 16:38:29 +0100
> Subject: block: add back plugging in __blkdev_direct_IO
> 
> This allows sending larger than 1 MB requess to devices that support
> large I/O sizes.
> 
> Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
> Reported-by: Laurence Oberman <loberman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
> ---
>  fs/block_dev.c | 3 +++
>  fs/iomap.c     | 1 -
>  2 files changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/fs/block_dev.c b/fs/block_dev.c
> index 7c45072..206a92a 100644
> --- a/fs/block_dev.c
> +++ b/fs/block_dev.c
> @@ -328,6 +328,7 @@ __blkdev_direct_IO(struct kiocb *iocb, struct iov_iter
> *iter, int nr_pages)
>  	struct file *file = iocb->ki_filp;
>  	struct inode *inode = bdev_file_inode(file);
>  	struct block_device *bdev = I_BDEV(inode);
> +	struct blk_plug plug;
>  	struct blkdev_dio *dio;
>  	struct bio *bio;
>  	bool is_read = (iov_iter_rw(iter) == READ);
> @@ -353,6 +354,7 @@ __blkdev_direct_IO(struct kiocb *iocb, struct iov_iter
> *iter, int nr_pages)
>  	dio->multi_bio = false;
>  	dio->should_dirty = is_read && (iter->type == ITER_IOVEC);
>  
> +	blk_start_plug(&plug);
>  	for (;;) {
>  		bio->bi_bdev = bdev;
>  		bio->bi_iter.bi_sector = pos >> 9;
> @@ -394,6 +396,7 @@ __blkdev_direct_IO(struct kiocb *iocb, struct iov_iter
> *iter, int nr_pages)
>  		submit_bio(bio);
>  		bio = bio_alloc(GFP_KERNEL, nr_pages);
>  	}
> +	blk_finish_plug(&plug);
>  
>  	if (!dio->is_sync)
>  		return -EIOCBQUEUED;
> diff --git a/fs/iomap.c b/fs/iomap.c
> index 354a123..3adf1e1 100644
> --- a/fs/iomap.c
> +++ b/fs/iomap.c
> @@ -844,7 +844,6 @@ iomap_dio_rw(struct kiocb *iocb, struct iov_iter *iter,
> struct iomap_ops *ops,
>  	size_t count = iov_iter_count(iter);
>  	loff_t pos = iocb->ki_pos, end = iocb->ki_pos + count - 1, ret = 0;
>  	unsigned int flags = IOMAP_DIRECT;
> -	struct blk_plug plug;
>  	struct iomap_dio *dio;
>  
>  	lockdep_assert_held(&inode->i_rwsem);
> --
> 2.1.4
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

Hello Christoph

The patch works and I now see 4MB I/O

# DISK STATISTICS (/sec)
#                   <---------reads---------><---------writes---------><--------averages--------> Pct
#Time     Name       KBytes Merged  IOs Size  KBytes Merged  IOs Size  RWSize  QLen  Wait SvcTim Util
11:53:58 sdah        143360    105   35 4096       0      0    0    0    4096     1    28     28   99
11:53:59 sdah        139264    102   34 4096       0      0    0    0    4096     1    29     29   99
11:54:00 sdah        143360    105   35 4096       0      0    0    0    4096     1    28     28   99

I think you forgot to remove calls to blk_start_plug and blk_finish_plug in fs/iomap.c in your patch.
I took them out and built the test kernel that way.

Let me know if you will just remove those in the final or want a patch.


Thanks fo rthe super quick response

Regards
Laurence
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2016-12-22 17:59 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-08  1:10 [PATCH, RFC 0/5] IB: Optimize DMA mapping Bart Van Assche
     [not found] ` <07c07529-4636-fafb-2598-7358d8a1460d-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
2016-12-08  1:10   ` [PATCH 1/5] treewide: constify most struct dma_map_ops Bart Van Assche
     [not found]     ` <f6b70724-772c-c17f-f1be-1681fab31228-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
2016-12-09 18:20       ` Christoph Hellwig
2016-12-08  1:10   ` [PATCH 2/5] misc: vop: Remove a cast Bart Van Assche
     [not found]     ` <6fff2450-6442-4539-47ff-67f04a593c06-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
2016-12-09 18:20       ` Christoph Hellwig
2016-12-08  1:11   ` [PATCH 3/5] Move dma_ops from archdata into struct device Bart Van Assche
2016-12-09 18:22     ` Christoph Hellwig
2016-12-09 19:13       ` David Woodhouse
2016-12-09 19:46         ` Bart Van Assche
2016-12-08  1:11   ` [PATCH 4/5] IB: Switch from struct ib_dma_mapping_ops to struct dma_mapping_ops Bart Van Assche
     [not found]     ` <25d066c2-59d7-2be7-dd56-e29e99b43620-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
2016-12-09 18:23       ` Christoph Hellwig
2016-12-09 18:24       ` Christoph Hellwig
     [not found]         ` <20161209182429.GF16622-jcswGhMUV9g@public.gmane.org>
2016-12-19 16:42           ` Dennis Dalessandro
     [not found]             ` <52e8398f-a146-721c-3b92-0892b4abbff8-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-12-19 16:55               ` Bart Van Assche
     [not found]                 ` <1482166487.25336.10.camel-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
2016-12-20 19:33                   ` Testing latest linux-next 4.9 ib_srp and ib_srpt Laurence Oberman
     [not found]                     ` <1918919536.8196250.1482262406057.JavaMail.zimbra-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-12-20 19:43                       ` Laurence Oberman
     [not found]                         ` <2052479881.8196880.1482263028727.JavaMail.zimbra-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-12-20 20:44                           ` Laurence Oberman
     [not found]                             ` <1668746735.8200653.1482266682585.JavaMail.zimbra-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-12-20 21:09                               ` Laurence Oberman
2016-12-21  3:31                               ` Laurence Oberman
     [not found]                                 ` <120559766.8215321.1482291094018.JavaMail.zimbra-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-12-21  6:34                                   ` Laurence Oberman
     [not found]                                     ` <1928955380.8220327.1482302041315.JavaMail.zimbra-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-12-21  8:08                                       ` Bart Van Assche
2016-12-22  2:10                                       ` Laurence Oberman
     [not found]                                         ` <1337539588.8422488.1482372617094.JavaMail.zimbra-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-12-22  6:23                                           ` Christoph Hellwig
     [not found]                                             ` <20161222062321.GA30326-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2016-12-22 13:17                                               ` Testing latest linux-next 4.9 ib_srp and ib_srpt sees I/O capped at 1MB and no merging Laurence Oberman
     [not found]                                                 ` <1661819060.8462293.1482412678092.JavaMail.zimbra-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-12-22 15:40                                                   ` Christoph Hellwig
2016-12-22 19:54                                                     ` block: add back plugging in __blkdev_direct_IO kbuild test robot
     [not found]                                                     ` <20161222154049.GA4638-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2016-12-22 17:59                                                       ` Laurence Oberman [this message]
2016-12-22 19:55                                                       ` kbuild test robot
2016-12-08  1:12   ` [PATCH 5/5] treewide: Inline ib_dma_map_*() functions Bart Van Assche
     [not found]     ` <9bdf696e-ec64-d60e-3d7e-7ad5b3000d60-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
2016-12-09 18:23       ` Christoph Hellwig
2016-12-08  6:48   ` [PATCH, RFC 0/5] IB: Optimize DMA mapping Or Gerlitz
     [not found]     ` <CAJ3xEMi4HY9Ehp-V4rP5UieAk=GjAu0X4uEnP-yMDomcFDpHkA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-12-08 16:51       ` Bart Van Assche

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1357936316.8619285.1482429599286.JavaMail.zimbra@redhat.com \
    --to=loberman-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
    --cc=Bart.VanAssche-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org \
    --cc=hch-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org \
    --cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-scsi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).