stgt.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
To: mitake.hitoshi@lab.ntt.co.jp
Cc: stgt@vger.kernel.org, mitake.hitoshi@gmail.com
Subject: Re: [PATCH] sheepdog: support iSCSI multipath
Date: Fri, 08 Aug 2014 12:37:20 +0900 (JST)	[thread overview]
Message-ID: <20140808.123720.1281009750676927443.fujita.tomonori@lab.ntt.co.jp> (raw)
In-Reply-To: <1407374749-13610-1-git-send-email-mitake.hitoshi@lab.ntt.co.jp>

On Thu,  7 Aug 2014 10:25:49 +0900
Hitoshi Mitake <mitake.hitoshi@lab.ntt.co.jp> wrote:

> This patch implements iSCSI multipath support in sheepdog backing
> store driver. Below is a brief description of the feature:
> 
> The main problem of enabling iSCSI multipath for sheepdog's VDI is
> keeping coherence of tgtd's internal inode data structure. Assume tgt
> A and B have logical units which point same sheepdog VDI. After
> initialization of the logical units, A and B have copies of inode
> object in their address space (let's X denote this object). When an
> initiator sends write request to A and the request causes COW, A
> creates a new object and updates the inode object X (let's X' denote
> the updated one).
> 
> After the update by A, A can die with hardware faults. In such a case,
> the initiator detects a connection error and switch its target to B if
> iSCSI multipath is configured correctly. But the problem can arise at
> this point. Because B doesn't know the update caused by A and its
> internal inode object is still X, not X'. B creates requests based on
> X, so it can read obsolete data which is already hidden by X' or
> update X' in wrong manner.
> 
> For solving the above problem, sheepdog implements inode object
> coherence protocol which mocks MSI protocol of shared memory multicore
> processors. With this mechanism sheepdog can prevent requests which
> are based on obsolete inode objects. This patch let sheepdog driver of
> tgtd adopt the coherence protocol.
> 
> Signed-off-by: Hitoshi Mitake <mitake.hitoshi@lab.ntt.co.jp>
> ---
>  usr/bs_sheepdog.c | 97 ++++++++++++++++++++++++++++++++++++++++++++++---------
>  1 file changed, 81 insertions(+), 16 deletions(-)

Applied, thanks.

      reply	other threads:[~2014-08-08  3:37 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-07  1:25 [PATCH] sheepdog: support iSCSI multipath Hitoshi Mitake
2014-08-08  3:37 ` FUJITA Tomonori [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=20140808.123720.1281009750676927443.fujita.tomonori@lab.ntt.co.jp \
    --to=fujita.tomonori@lab.ntt.co.jp \
    --cc=mitake.hitoshi@gmail.com \
    --cc=mitake.hitoshi@lab.ntt.co.jp \
    --cc=stgt@vger.kernel.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 read-only IMAP folder(s) and NNTP newsgroup(s).