LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Wouter Verhelst <w@uter.be>
To: Pavel Machek <pavel@ucw.cz>
Cc: Paul Clements <paul.clements@steeleye.com>,
	nbd-general@lists.sourceforge.net,
	Laurent Vivier <Laurent.Vivier@bull.net>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-kernel@vger.kernel.org
Subject: Re: [Nbd] [PATCH 1/1] NBD: allow nbd to be used locally
Date: Mon, 24 Mar 2008 21:37:45 +0100	[thread overview]
Message-ID: <20080324203744.GA13603@goa.grep.be> (raw)
In-Reply-To: <20080311100904.GA807@elf.ucw.cz>

On Tue, Mar 11, 2008 at 11:09:04AM +0100, Pavel Machek wrote:
> On Mon 2008-03-10 13:26:34, Paul Clements wrote:
> > Pavel Machek wrote:
> >
> >>> This patch allows a Network Block Device to be mounted locally 
> >>> (nbd-client to nbd-server over 127.0.0.1).
> >>>
> >>> It creates a kthread to avoid the deadlock described in NBD tools 
> >>> documentation. So, if nbd-client hangs waiting for pages, the kblockd 
> >>> thread can continue its work and free pages.
> >>
> >> What happens if your new kthread blocks on memory allocation?
> >
> > Well, we expect that. The reason for the new thread is so that it hangs, 
> > rather than kblockd hanging (which on a UP system brings all I/O to a 
> > halt). As long as kblockd can continue making progress, we eventually free 
> > up memory and then NBD can finish its requests, too.
> 
> ....unless all the memory is in dirty buffers for nbd, and nbd server
> is swapped out or something?

Note that I'm not a kernel hacker, so might be terribly mistaken here...

but I feel I should point out that this patch solves the issue that no
two block devices can flush their dirty buffers at the same time.
Without this patch, you can't write to a _filesystem_ on an NBD device
if that's connected to a server on the localhost. You are correct that
this does not solve the deadlock in swapping to NBD devices, but that's
not the only existing deadlock issue in NBD to localhost...

-- 
<Lo-lan-do> Home is where you have to wash the dishes.
  -- #debian-devel, Freenode, 2004-09-22

  reply	other threads:[~2008-03-24 20:38 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-09 22:47 Paul Clements
2008-03-10 10:29 ` Pavel Machek
2008-03-10 17:26   ` Paul Clements
2008-03-11 10:09     ` Pavel Machek
2008-03-24 20:37       ` Wouter Verhelst [this message]
2008-03-24 21:58         ` [Nbd] " Pavel Machek

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=20080324203744.GA13603@goa.grep.be \
    --to=w@uter.be \
    --cc=Laurent.Vivier@bull.net \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nbd-general@lists.sourceforge.net \
    --cc=paul.clements@steeleye.com \
    --cc=pavel@ucw.cz \
    --subject='Re: [Nbd] [PATCH 1/1] NBD: allow nbd to be used locally' \
    /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

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 NNTP newsgroup(s).