public inbox for linux-bcache@vger.kernel.org
 help / color / mirror / Atom feed
From: Kent Overstreet <koverstreet-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
To: Amit Kale <akale-FZ1t8LVTR2ZWk0Htik3J/w@public.gmane.org>
Cc: "thornber-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org"
	<thornber-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	device-mapper development
	<dm-devel-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	"kent.overstreet-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org"
	<kent.overstreet-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Mike Snitzer <snitzer-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	LKML <linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"linux-bcache-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-bcache-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: [dm-devel] Announcement: STEC EnhanceIO SSD caching software for Linux kernel
Date: Thu, 24 Jan 2013 15:45:24 -0800	[thread overview]
Message-ID: <20130124234524.GQ26407@google.com> (raw)
In-Reply-To: <20130117113940.GI10411-jC9Py7bek1znysI04z7BkA@public.gmane.org>

On Thu, Jan 17, 2013 at 03:39:40AM -0800, Kent Overstreet wrote:
> Suppose I could fill out the bcache version...
> 
> On Thu, Jan 17, 2013 at 05:52:00PM +0800, Amit Kale wrote:
> > 11. Error conditions - Handling power failures, intermittent and permanent device failures.
> 
> Power failures and device failures yes, intermittent failures are not
> explicitly handled.

Coworker pointed out bcache actually does handle some intermittent io errors. I
just added error handling to the documentation: 
http://atlas.evilpiepirate.org/git/linux-bcache.git/tree/Documentation/bcache.txt?h=bcache-dev

To cut and paste,

Bcache tries to transparently handle IO errors to/from the cache device without
affecting normal operation; if it sees too many errors (the threshold is
configurable, and defaults to 0) it shuts down the cache device and switches all
the backing devices to passthrough mode.

 - For reads from the cache, if they error we just retry the read from the
   backing device.

 - For writethrough writes, if the write to the cache errors we just switch to
   invalidating the data at that lba in the cache (i.e. the same thing we do for
   a write that bypasses the cache)
 
 - For writeback writes, we currently pass that error back up to the
   filesystem/userspace. This could be improved - we could retry it as a write
   that skips the cache so we don't have to error the write.

 - When we detach, we first try to flush any dirty data (if we were running in
   writeback mode). It currently doesn't do anything intelligent if it fails to
   read some of the dirty data, though.

  parent reply	other threads:[~2013-01-24 23:45 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <C4B5704C6FEB5244B2A1BCC8CF83B86B07CE4D6F3C@MYMBX.MY.STEC-INC.AD>
     [not found] ` <CAMM=eLdgD8GKeK48SU2rfC49u3H4WRf9-xFxM4ymVPbKkx+mCw@mail.gmail.com>
     [not found]   ` <C4B5704C6FEB5244B2A1BCC8CF83B86B07CE4D70CE@MYMBX.MY.STEC-INC.AD>
     [not found]     ` <20130116104546.GA3869@raspberrypi>
2013-01-17  9:52       ` [dm-devel] Announcement: STEC EnhanceIO SSD caching software for Linux kernel Amit Kale
2013-01-17 11:39         ` Kent Overstreet
     [not found]           ` <20130117113940.GI10411-jC9Py7bek1znysI04z7BkA@public.gmane.org>
2013-01-17 17:17             ` Amit Kale
2013-01-24 23:45             ` Kent Overstreet [this message]
     [not found]         ` <C4B5704C6FEB5244B2A1BCC8CF83B86B07CE4D720A-AQg6BlXVjylhNUoibfp7lHKnxlUjViKd@public.gmane.org>
2013-01-17 13:26           ` thornber-H+wXaHxf7aLQT0dZR+AlfA
2013-01-17 17:53             ` Amit Kale
     [not found]               ` <C4B5704C6FEB5244B2A1BCC8CF83B86B07CE4D7248-AQg6BlXVjylhNUoibfp7lHKnxlUjViKd@public.gmane.org>
2013-01-17 18:36                 ` Jason Warr
     [not found]                   ` <50F844A3.9020300-/cow75dQlsI@public.gmane.org>
2013-01-18  9:08                     ` Amit Kale
2013-01-18 15:56                       ` Jason Warr
     [not found]                         ` <50F970A3.4000403-/cow75dQlsI@public.gmane.org>
2013-01-18 16:11                           ` thornber-H+wXaHxf7aLQT0dZR+AlfA
2013-01-18 16:45                             ` Jason Warr
     [not found]                               ` <50F97C0F.9010405-/cow75dQlsI@public.gmane.org>
2013-01-18 17:42                                 ` thornber-H+wXaHxf7aLQT0dZR+AlfA
2013-01-18 17:44                                 ` Amit Kale
     [not found]                                   ` <C4B5704C6FEB5244B2A1BCC8CF83B86B07CE4D7345-AQg6BlXVjylhNUoibfp7lHKnxlUjViKd@public.gmane.org>
2013-01-18 18:36                                     ` Jason Warr
2013-01-18 21:25                                       ` [LSF/MM TOPIC] " Darrick J. Wong
     [not found]                                         ` <20130118212543.GB6425-yuuUpGxbzT9UbpRmUfBrXUB+6BGkLq7r@public.gmane.org>
2013-01-18 21:37                                           ` Mike Snitzer
     [not found]                                             ` <20130118213759.GA30278-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-01-21  5:26                                               ` Amit Kale
2013-01-21 13:09                                                 ` [LSF/MM TOPIC] " Mike Snitzer
     [not found]                                                   ` <20130121130951.GA16574-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-01-21 13:58                                                     ` [LSF/MM TOPIC] Re: [dm-devel] " thornber-H+wXaHxf7aLQT0dZR+AlfA
2013-01-22  5:00                                                     ` Amit Kale
2013-02-04 20:33                                             ` Kent Overstreet
2013-01-18 16:12                           ` Amit Kale
     [not found]                       ` <C4B5704C6FEB5244B2A1BCC8CF83B86B07CE4D72F1-AQg6BlXVjylhNUoibfp7lHKnxlUjViKd@public.gmane.org>
2013-01-24 23:55                         ` Kent Overstreet
2013-01-17 18:50                 ` thornber-H+wXaHxf7aLQT0dZR+AlfA
2013-01-18  7:03                   ` Amit Kale

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=20130124234524.GQ26407@google.com \
    --to=koverstreet-hpiqsd4aklfqt0dzr+alfa@public.gmane.org \
    --cc=akale-FZ1t8LVTR2ZWk0Htik3J/w@public.gmane.org \
    --cc=dm-devel-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=kent.overstreet-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=linux-bcache-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=snitzer-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=thornber-H+wXaHxf7aLQT0dZR+AlfA@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