From: Christoph Hellwig <hch@infradead.org>
To: Ming Lei <ming.lei@canonical.com>
Cc: Jens Axboe <axboe@fb.com>,
linux-kernel@vger.kernel.org, linux-block@vger.kernel.org,
Christoph Hellwig <hch@infradead.org>,
Dave Chinner <david@fromorbit.com>,
"supporter:XFS FILESYSTEM" <xfs@oss.sgi.com>
Subject: Re: [PATCH v6 5/8] fs: xfs: replace BIO_MAX_SECTORS with BIO_MAX_PAGES
Date: Wed, 1 Jun 2016 06:48:16 -0700 [thread overview]
Message-ID: <20160601134816.GA20963@infradead.org> (raw)
In-Reply-To: <1464615294-9946-6-git-send-email-ming.lei@canonical.com>
On Mon, May 30, 2016 at 09:34:33PM +0800, Ming Lei wrote:
> diff --git a/fs/xfs/xfs_buf.c b/fs/xfs/xfs_buf.c
> index e71cfbd..e5d713b 100644
> --- a/fs/xfs/xfs_buf.c
> +++ b/fs/xfs/xfs_buf.c
> @@ -1157,9 +1157,7 @@ xfs_buf_ioapply_map(
>
> next_chunk:
> atomic_inc(&bp->b_io_remaining);
> - nr_pages = BIO_MAX_SECTORS >> (PAGE_SHIFT - BBSHIFT);
> - if (nr_pages > total_nr_pages)
> - nr_pages = total_nr_pages;
> + nr_pages = min(total_nr_pages, BIO_MAX_PAGES);
>
> bio = bio_alloc(GFP_NOIO, nr_pages);
While I think this is a useful cleanup on it's own I think
you'd make everyones life easier if bio_alloc simply clamped down
the passed nr_pages value to the maximum allowed.
WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@infradead.org>
To: Ming Lei <ming.lei@canonical.com>
Cc: linux-block@vger.kernel.org,
Christoph Hellwig <hch@infradead.org>,
linux-kernel@vger.kernel.org,
"supporter:XFS FILESYSTEM" <xfs@oss.sgi.com>,
Jens Axboe <axboe@fb.com>
Subject: Re: [PATCH v6 5/8] fs: xfs: replace BIO_MAX_SECTORS with BIO_MAX_PAGES
Date: Wed, 1 Jun 2016 06:48:16 -0700 [thread overview]
Message-ID: <20160601134816.GA20963@infradead.org> (raw)
In-Reply-To: <1464615294-9946-6-git-send-email-ming.lei@canonical.com>
On Mon, May 30, 2016 at 09:34:33PM +0800, Ming Lei wrote:
> diff --git a/fs/xfs/xfs_buf.c b/fs/xfs/xfs_buf.c
> index e71cfbd..e5d713b 100644
> --- a/fs/xfs/xfs_buf.c
> +++ b/fs/xfs/xfs_buf.c
> @@ -1157,9 +1157,7 @@ xfs_buf_ioapply_map(
>
> next_chunk:
> atomic_inc(&bp->b_io_remaining);
> - nr_pages = BIO_MAX_SECTORS >> (PAGE_SHIFT - BBSHIFT);
> - if (nr_pages > total_nr_pages)
> - nr_pages = total_nr_pages;
> + nr_pages = min(total_nr_pages, BIO_MAX_PAGES);
>
> bio = bio_alloc(GFP_NOIO, nr_pages);
While I think this is a useful cleanup on it's own I think
you'd make everyones life easier if bio_alloc simply clamped down
the passed nr_pages value to the maximum allowed.
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
next prev parent reply other threads:[~2016-06-01 13:48 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-30 13:34 [PATCH v6 0/8] block: prepare for multipage bvecs Ming Lei
2016-05-30 13:34 ` [Drbd-dev] " Ming Lei
2016-05-30 13:34 ` Ming Lei
2016-05-30 13:34 ` [PATCH v6 1/8] block: move bvec iterator into include/linux/bvec.h Ming Lei
2016-05-30 13:34 ` [PATCH v6 2/8] block: move two bvec structure into bvec.h Ming Lei
2016-05-30 13:34 ` [PATCH v6 3/8] block: mark 1st parameter of bvec_iter_advance as const Ming Lei
2016-05-30 13:34 ` [PATCH v6 4/8] iov_iter: use bvec iterator to implement iterate_bvec() Ming Lei
2016-05-30 13:34 ` [PATCH v6 5/8] fs: xfs: replace BIO_MAX_SECTORS with BIO_MAX_PAGES Ming Lei
2016-05-30 13:34 ` Ming Lei
2016-06-01 13:48 ` Christoph Hellwig [this message]
2016-06-01 13:48 ` Christoph Hellwig
2016-06-02 3:32 ` Ming Lei
2016-06-02 3:32 ` Ming Lei
2016-05-30 13:34 ` [PATCH v6 6/8] block: bio: remove BIO_MAX_SECTORS Ming Lei
2016-05-30 13:34 ` [PATCH v6 7/8] block: drbd: avoid to use BIO_MAX_SIZE Ming Lei
2016-05-30 13:34 ` [Drbd-dev] " Ming Lei
2016-05-30 13:34 ` [PATCH v6 8/8] block: mark BIO_MAX_SIZE as obsolete Ming Lei
2016-05-31 16:07 ` Jens Axboe
2016-05-31 15:53 ` [PATCH v6 0/8] block: prepare for multipage bvecs Mike Snitzer
2016-05-31 15:53 ` [Drbd-dev] " Mike Snitzer
2016-05-31 15:53 ` Mike Snitzer
2016-06-01 12:38 ` Ming Lei
2016-06-01 12:38 ` [Drbd-dev] " Ming Lei
2016-06-01 12:38 ` Ming Lei
2016-06-01 13:44 ` Christoph Hellwig
2016-06-01 13:44 ` [Drbd-dev] " Christoph Hellwig
2016-06-01 13:44 ` Christoph Hellwig
2016-06-01 13:51 ` Mike Snitzer
2016-06-01 13:51 ` [Drbd-dev] " Mike Snitzer
2016-06-01 13:51 ` Mike Snitzer
2016-06-01 14:05 ` Christoph Hellwig
2016-06-01 14:05 ` [Drbd-dev] " Christoph Hellwig
2016-06-01 14:05 ` Christoph Hellwig
2016-06-02 2:13 ` Ming Lei
2016-06-02 2:13 ` [Drbd-dev] " Ming Lei
2016-06-02 2:13 ` Ming Lei
2016-06-01 13:43 ` Christoph Hellwig
2016-06-01 13:43 ` [Drbd-dev] " Christoph Hellwig
2016-06-01 13:43 ` Christoph Hellwig
2016-06-01 13:53 ` Hannes Reinecke
2016-06-01 13:53 ` Hannes Reinecke
2016-06-01 13:53 ` [Drbd-dev] " Hannes Reinecke
2016-06-01 13:53 ` Hannes Reinecke
2016-06-01 13:57 ` Mike Snitzer
2016-06-01 13:57 ` [Drbd-dev] " Mike Snitzer
2016-06-01 13:57 ` Mike Snitzer
2016-06-09 16:06 ` Jens Axboe
2016-06-09 16:06 ` [Drbd-dev] " Jens Axboe
2016-06-09 16:06 ` Jens Axboe
2016-06-10 2:44 ` Ming Lei
2016-06-10 2:44 ` [Drbd-dev] " Ming Lei
2016-06-10 2:44 ` Ming Lei
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=20160601134816.GA20963@infradead.org \
--to=hch@infradead.org \
--cc=axboe@fb.com \
--cc=david@fromorbit.com \
--cc=linux-block@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ming.lei@canonical.com \
--cc=xfs@oss.sgi.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.