From: "Jun'ichi Nomura" <j-nomura@ce.jp.nec.com>
To: Mikulas Patocka <mpatocka@redhat.com>
Cc: Kiyoshi Ueda <k-ueda@ct.jp.nec.com>,
Mike Snitzer <snitzer@redhat.com>,
dm-devel@redhat.com, Michael Christie <mchristi@redhat.com>,
agk@redhat.com
Subject: Re: [k-ueda@ct.jp.nec.com: Re: request-based dm-multipath]
Date: Fri, 17 Apr 2009 18:46:36 +0900 [thread overview]
Message-ID: <49E84FFC.3050709@ce.jp.nec.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0904161952340.312@hs20-bc2-1.build.redhat.com>
Mikulas Patocka wrote:
> On Thu, 16 Apr 2009, Jun'ichi Nomura wrote:
>> The main purpose of request-based dm patches is to provide a framework
>> to implement optimal path selectors in non-intrusive way.
>>
>> As you mentioned, it might be possible to implement a good path
>> selector at bio-level by checking internals of underlying devices'
>> request queues and/or I/O schedulers.
>>
>> However, requiring knowledge/assumptions of internals of other layer
>> is not a right approach.
>
> There is also a number of functions that any driver can call on queue to
> access the queue state (see blkdev.h).
>
> So if you add one more function (something like
> blk_queue_can_merge_at_this_point(struct request_queue *, sector_t),
> there's nothing wrong about it, it's much less intrusive than adding an
> alternate i/o path.
And it means exposing the I/O scheduler internal to let
the path selector guess its behavior, which is what I would like to avoid.
I think existing block layer interfaces are not doing that.
>> Or, splitting the request-based multipath driver out of dm would trash
>> the existing userspace tools and libraries, so that's not good either.
>> Thus we chose the design of 'adding request-based mapping feature to dm'.
>> It doesn't break existing target drivers and userspace tools.
>> The feature is enabled only for request-based target drivers.
>> If you want to add a bio-specific new feature, it's still possible.
>
> I don't want to pull multipath out of dm. I want it to use the standard
> i/o path in dm.
>
> I am convinced that the path balacing can be solved without using
> requests.
The point is not about 'can' or 'cannot'.
My point is that by adding the request-based mapping interface,
path selectors can be implemented in a clean and maintainable way.
Thanks,
--
Jun'ichi Nomura, NEC Corporation
prev parent reply other threads:[~2009-04-17 9:46 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20090410151914.GA3800@redhat.com>
[not found] ` <20090410153102.GC3800@redhat.com>
2009-04-15 19:09 ` [k-ueda@ct.jp.nec.com: Re: request-based dm-multipath] Mikulas Patocka
2009-04-15 20:18 ` Mike Snitzer
2009-04-15 22:24 ` Mikulas Patocka
2009-04-16 7:29 ` Hannes Reinecke
2009-04-16 9:30 ` Jun'ichi Nomura
2009-04-17 2:01 ` Mikulas Patocka
2009-04-17 9:46 ` Jun'ichi Nomura [this message]
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=49E84FFC.3050709@ce.jp.nec.com \
--to=j-nomura@ce.jp.nec.com \
--cc=agk@redhat.com \
--cc=dm-devel@redhat.com \
--cc=k-ueda@ct.jp.nec.com \
--cc=mchristi@redhat.com \
--cc=mpatocka@redhat.com \
--cc=snitzer@redhat.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.