All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bill Davidsen <davidsen@tmr.com>
To: Alberto Alonso <alberto@ggsys.net>
Cc: Goswin von Brederlow <brederlo@informatik.uni-tuebingen.de>,
	Mike Accetta <maccetta@laurelnetworks.com>,
	Neil Brown <neilb@suse.de>,
	linux-raid@vger.kernel.org
Subject: Re: Software RAID when it works and when it doesn't
Date: Tue, 23 Oct 2007 18:45:57 -0400	[thread overview]
Message-ID: <471E79A5.5020607@tmr.com> (raw)
In-Reply-To: <1192777672.16416.495.camel@w100>

Alberto Alonso wrote:
> On Thu, 2007-10-18 at 17:26 +0200, Goswin von Brederlow wrote:
>   
>> Mike Accetta <maccetta@laurelnetworks.com> writes:
>>     
>
>   
>> What I would like to see is a timeout driven fallback mechanism. If
>> one mirror does not return the requested data within a certain time
>> (say 1 second) then the request should be duplicated on the other
>> mirror. If the first mirror later unchokes then it remains in the
>> raid, if it fails it gets removed. But (at least reads) should not
>> have to wait for that process.
>>
>> Even better would be if some write delay could also be used. The still
>> working mirror would get an increase in its serial (so on reboot you
>> know one disk is newer). If the choking mirror unchokes then it can
>> write back all the delayed data and also increase its serial to
>> match. Otherwise it gets really failed. But you might have to use
>> bitmaps for this or the cache size would limit its usefullnes.
>>
>> MfG
>>         Goswin
>>     
>
> I think a timeout on both: reads and writes is a must. Basically I
> believe that all problems that I've encountered issues using software
> raid would have been resolved by using a timeout within the md code.
>
> This will keep a server from crashing/hanging when the underlying 
> driver doesn't properly handle hard drive problems. MD can be 
> smarter than the "dumb" drivers.
>
> Just my thoughts though, as I've never got an answer as to whether or
> not md can implement its own timeouts.

I'm not sure the timeouts are the problem, even if md did its own 
timeout, it then needs a way to tell the driver (or device) to stop 
retrying. I don't believe that's available, certainly not everywhere, 
and anything other than everywhere would turn the md code into a nest of 
exceptions.

-- 
bill davidsen <davidsen@tmr.com>
  CTO TMR Associates, Inc
  Doing interesting things with small computers since 1979


  parent reply	other threads:[~2007-10-23 22:45 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-13 18:40 Software RAID when it works and when it doesn't Alberto Alonso
2007-10-13 22:46 ` Eyal Lebedinsky
2007-10-13 22:50 ` Neil Brown
2007-10-14  5:57   ` Alberto Alonso
2007-10-16 21:57     ` Mike Accetta
2007-10-16 22:29       ` Richard Scobie
2007-10-17 21:53       ` Support
2007-10-18 15:26       ` Goswin von Brederlow
2007-10-19  7:07         ` Alberto Alonso
2007-10-19 15:02           ` Justin Piszcz
2007-10-20 13:45             ` Michael Tokarev
2007-10-20 13:55               ` Justin Piszcz
2007-10-26 16:11             ` Goswin von Brederlow
2007-10-26 16:11               ` Justin Piszcz
2007-10-23 22:45           ` Bill Davidsen [this message]
2007-10-24  5:50             ` Alberto Alonso
2007-10-24 20:04               ` Bill Davidsen
2007-10-24 20:18                 ` Alberto Alonso
2007-10-26 16:12                 ` Goswin von Brederlow
2007-10-26 17:09                   ` Alberto Alonso
2007-10-27 15:26                     ` Bill Davidsen
2007-11-02  8:47                       ` Alberto Alonso
     [not found] ` <471241F8.50205@harddata.com>
2007-10-14 18:22   ` Alberto Alonso

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=471E79A5.5020607@tmr.com \
    --to=davidsen@tmr.com \
    --cc=alberto@ggsys.net \
    --cc=brederlo@informatik.uni-tuebingen.de \
    --cc=linux-raid@vger.kernel.org \
    --cc=maccetta@laurelnetworks.com \
    --cc=neilb@suse.de \
    /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.