All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Phillips <phillips@google.com>
To: ocfs2-devel@oss.oracle.com
Subject: [Ocfs2-devel] OCFS2 features RFC
Date: Wed, 26 Apr 2006 11:34:12 -0700	[thread overview]
Message-ID: <444FBD24.4090403@google.com> (raw)
In-Reply-To: <200604262008.06346.ak@suse.de>

Andi Kleen wrote:
> On Wednesday 26 April 2006 20:06, Mark Fasheh wrote:
>>On Wed, Apr 26, 2006 at 06:11:04AM +0200, Andi Kleen wrote:
>>
>>>Won't you get into deadlocks then when the system is low on memory?
>>>(freeing memory might require write outs on OCFS2 and the user space
>>>cluster might be stuck already)
>>>
>>>Or rather if you rely on user space you would need to make sure
>>>that the basic block write out path works without such possible
>>>deadlocks.
>>
>>The DLM certainly wouldn't be in userspace - there's also a convincing
>>performance argument for it being in kernel.
>>
>>Primarily then I think we're worred about that in the context of something
>>like heartbeat. In that case, we probably want something that can do it's
>>work within some preallocated, mlock'd area. 
> 
> That's not enough - it wouldn't be able to do anything that requires
> memory allocation in the critical path. This includes most system calls.

Indeed.  In general, what we have to do is give such a userspace process
access to the PF_MEMALLOC reserve, simply by setting that flag.  This
introduces a requirement to audit tasks's memory usage, but this isn't
different from what we have to do in kernel anyway.

So we can do this if we want to, but it isn't clear to me why we want
heartbeat in userspace.

Advantages for heartbeat in kernel:

   * Easier to manage reserve memory
   * No memlock requirement
   * Can act on heartbeat timeout with higher precision, possibly
     hard realtime precision

Disadvantages:

   * Handling heartbeat timeout looks a lot like policy
   * Need to invent a mechanism for communicating with userspace
     helpers

I am biased towards heartbeat in kernel, but the issues really need to be
talked out in detail.  The ground rule is that *everything* that can
execute in the block writeout path has to have access to reserve memory.
This includes everything in the failover path, fencing for example.

Regards,

Daniel

  reply	other threads:[~2006-04-26 18:34 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-04-25 18:35 [Ocfs2-devel] OCFS2 features RFC Mark Fasheh
2006-04-25 21:55 ` Christoph Hellwig
2006-04-25 22:24   ` Mark Fasheh
2006-04-26 16:50   ` Daniel Phillips
2006-04-26  4:11 ` Andi Kleen
2006-04-26 18:06   ` Mark Fasheh
2006-04-26 18:08     ` Andi Kleen
2006-04-26 18:34       ` Daniel Phillips [this message]
2006-04-27 20:25 ` Paul Taysom
2006-05-03 23:04 ` [Ocfs2-devel] OCFS2 features RFC - separate journal? Daniel Phillips
2006-05-04  0:29   ` Zach Brown
2006-05-04  0:46     ` Daniel Phillips
2006-05-04 20:56       ` Zach Brown
2006-05-04 20:59         ` Wim Coekaerts
2006-05-04 22:23         ` Daniel Phillips
2006-05-04 22:30           ` Mark Fasheh
2006-05-05  3:05             ` Daniel Phillips
2006-05-05 18:25               ` Mark Fasheh
2006-05-06  3:09                 ` Daniel Phillips
2006-05-05 17:12             ` Paul Taysom
2006-05-05 18:06               ` Daniel Phillips
2006-05-05 18:57               ` Sunil Mushran
2006-05-08 14:28             ` Paul Taysom
2006-05-08 17:43               ` Daniel Phillips
2006-05-08 18:00             ` Paul Taysom
2006-05-08 18:22               ` Daniel Phillips
2006-05-11 20:04 ` [Ocfs2-devel] OCFS2 features RFC Jeff Mahoney
2006-05-11 20:40   ` Paul Taysom
2006-05-11 20:55     ` Joel Becker
2006-05-11 21:16   ` Daniel Phillips
2006-05-17  1:44   ` Mark Fasheh
     [not found]     ` <446BBCF5.7040903@google.com>
     [not found]       ` <20060518024638.GY21588@ca-server1.us.oracle.com>
2006-05-19  0:35         ` Daniel Phillips
2006-05-19 15:16           ` J. Bruce Fields
2006-05-20  6:11           ` Mark Fasheh
2006-05-22 19:18             ` Daniel Phillips
2006-05-22 17:01     ` Paul Taysom
  -- strict thread matches above, loose matches on Subject: below --
2006-05-02 18:22 [Ocfs2-devel] OCFS2 Features RFC Brian Long
2006-05-02 20:29 ` Sunil Mushran

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=444FBD24.4090403@google.com \
    --to=phillips@google.com \
    --cc=ocfs2-devel@oss.oracle.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.