Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1552497 > unrolled thread
| Started by | Ming Lei <tom.leiming@gmail.com> |
|---|---|
| First post | 2017-01-06 04:40 +0100 |
| Last post | 2017-01-06 04:40 +0100 |
| Articles | 1 — 1 participant |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH v1 12/54] dm: limit the max bio size as BIO_MAX_PAGES * PAGE_SIZE Ming Lei <tom.leiming@gmail.com> - 2017-01-06 04:40 +0100
| From | Ming Lei <tom.leiming@gmail.com> |
|---|---|
| Date | 2017-01-06 04:40 +0100 |
| Subject | Re: [PATCH v1 12/54] dm: limit the max bio size as BIO_MAX_PAGES * PAGE_SIZE |
| Message-ID | <sWtxM-45k-3@gated-at.bofh.it> |
On Wed, Jan 4, 2017 at 12:43 AM, Mike Snitzer <snitzer@redhat.com> wrote: > On Tue, Dec 27 2016 at 10:56am -0500, > Ming Lei <tom.leiming@gmail.com> wrote: > >> For BIO based DM, some targets aren't ready for dealing with >> bigger incoming bio than 1Mbyte, such as crypt target. >> >> Signed-off-by: Ming Lei <tom.leiming@gmail.com> >> --- >> drivers/md/dm.c | 11 ++++++++++- >> 1 file changed, 10 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/md/dm.c b/drivers/md/dm.c >> index 3086da5664f3..6139bf7623f7 100644 >> --- a/drivers/md/dm.c >> +++ b/drivers/md/dm.c >> @@ -899,7 +899,16 @@ int dm_set_target_max_io_len(struct dm_target *ti, sector_t len) >> return -EINVAL; >> } >> >> - ti->max_io_len = (uint32_t) len; >> + /* >> + * BIO based queue uses its own splitting. When multipage bvecs >> + * is switched on, size of the incoming bio may be too big to >> + * be handled in some targets, such as crypt. >> + * >> + * When these targets are ready for the big bio, we can remove >> + * the limit. >> + */ >> + ti->max_io_len = min_t(uint32_t, len, >> + (BIO_MAX_PAGES * PAGE_SIZE)); >> >> return 0; >> } >> -- >> 2.7.4 > > dm_set_target_max_io_len() is already meant to be called by the .ctr > hook for each DM target. So why not just have the dm-crypt target (and > other targets if needed) pass your reduced $len? > > That way only targets that need to be fixed (e.g. dm-crypt) impose this > limit. Looks better way, and I will do it in V2. Thanks, Ming Lei
Back to top | Article view | linux.kernel
csiph-web