From: Mel Gorman <mgorman@suse.de>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Linux-MM <linux-mm@kvack.org>,
Linux-Netdev <netdev@vger.kernel.org>,
LKML <linux-kernel@vger.kernel.org>,
David Miller <davem@davemloft.net>, Neil Brown <neilb@suse.de>,
Peter Zijlstra <a.p.zijlstra@chello.nl>
Subject: Re: [PATCH 00/14] Swap-over-NBD without deadlocking v5
Date: Thu, 7 Jul 2011 10:47:37 +0100 [thread overview]
Message-ID: <20110707094737.GG15285@suse.de> (raw)
In-Reply-To: <20110706165146.be7ab61b.akpm@linux-foundation.org>
On Wed, Jul 06, 2011 at 04:51:46PM -0700, Andrew Morton wrote:
> On Mon, 20 Jun 2011 14:12:06 +0100
> Mel Gorman <mgorman@suse.de> wrote:
>
> > Swapping over NBD is something that is technically possible but not
> > often advised. While there are number of guides on the internet
> > on how to configure it and nbd-client supports a -swap switch to
> > "prevent deadlocks", the fact of the matter is a machine using NBD
> > for swap can be locked up within minutes if swap is used intensively.
> >
> > The problem is that network block devices do not use mempools like
> > normal block devices do. As the host cannot control where they receive
> > packets from, they cannot reliably work out in advance how much memory
> > they might need.
> >
> > Some years ago, Peter Ziljstra developed a series of patches that
> > supported swap over an NFS that some distributions are carrying in
> > their kernels. This patch series borrows very heavily from Peter's work
> > to support swapping over NBD (the relatively straight-forward case)
> > and uses throttling instead of dynamically resized memory reserves
> > so the series is not too unwieldy for review.
>
> I have to say, I look over these patches and my mind wants to turn to
> things like puppies. And ice cream.
>
People do love puppies and ice cream!
> There's quite some complexity added here in areas which are already
> reliably unreliable and afaik swap-over-NBD is not a thing which a lot
> of people want to do. I can see that swap-over-NFS would be useful to
> some people, and the fact that distros are carrying swap-over-NFS
> patches has weight.
>
> Do these patches lead on to swap-over-NFS? If so, how much more
> additional complexity are we buying into for that?
Swap-over-NFS is the primary motivation. As you say, distributions are
carrying this and have been for some time. Based on my asking about the
background, the primary user is clusters of blades that are diskless
or have extremely limited storage with no possibility of expansion (be
it due to physical dimensions or maintenance overhead). They require
an amount of infrequently used swap for their workloads. They are
connected to some sort of SAN that may or may not be running Linux
but that exports NFS so they want to stick a swapfile on it.
Swap-over-NBD is the simplier case that can be used if the SAN
is running Linux. Almost all of the compexity required to support
swap-over-NBD is reused for swap-over-NFS (obviously the NBD-specific
bits are not reused).
Additional complexity is required for swap-over-NFS but affects the
core kernel far less than this series. I do not have a series prepared
but from what's in a distro kernel, supporting NFS requires extending
address_space_operations for swapfile activation/deactivation with
some minor helpers and the bulk of the remaining complexity within
NFS itself.
--
Mel Gorman
SUSE Labs
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2011-07-07 9:47 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-20 13:12 [PATCH 00/14] Swap-over-NBD without deadlocking v5 Mel Gorman
2011-06-20 13:12 ` [PATCH 01/14] mm: Serialize access to min_free_kbytes Mel Gorman
2011-07-06 23:44 ` Andrew Morton
2011-07-07 9:17 ` Mel Gorman
2011-06-20 13:12 ` [PATCH 02/14] mm: sl[au]b: Add knowledge of PFMEMALLOC reserve pages Mel Gorman
2011-06-20 13:12 ` [PATCH 03/14] mm: Introduce __GFP_MEMALLOC to allow access to emergency reserves Mel Gorman
2011-06-20 13:12 ` [PATCH 04/14] mm: allow PF_MEMALLOC from softirq context Mel Gorman
2011-06-20 13:12 ` [PATCH 05/14] mm: Ignore mempolicies when using ALLOC_NO_WATERMARK Mel Gorman
2011-06-20 13:12 ` [PATCH 06/14] net: Introduce sk_allocation() to allow addition of GFP flags depending on the individual socket Mel Gorman
2011-06-20 13:12 ` [PATCH 07/14] netvm: Allow the use of __GFP_MEMALLOC by specific sockets Mel Gorman
2011-06-20 13:12 ` [PATCH 08/14] netvm: Allow skb allocation to use PFMEMALLOC reserves Mel Gorman
2011-06-20 13:12 ` [PATCH 09/14] netvm: Propagate page->pfmemalloc to skb Mel Gorman
2011-06-20 13:12 ` [PATCH 10/14] netvm: Set PF_MEMALLOC as appropriate during SKB processing Mel Gorman
2011-06-20 13:12 ` [PATCH 11/14] mm: Micro-optimise slab to avoid a function call Mel Gorman
2011-06-20 13:12 ` [PATCH 12/14] nbd: Set SOCK_MEMALLOC for access to PFMEMALLOC reserves Mel Gorman
2011-06-20 13:12 ` [PATCH 13/14] mm: Throttle direct reclaimers if PF_MEMALLOC reserves are low and swap is backed by network storage Mel Gorman
2011-06-20 13:12 ` [PATCH 14/14] mm: Account for the number of times direct reclaimers get throttled Mel Gorman
2011-07-06 23:51 ` [PATCH 00/14] Swap-over-NBD without deadlocking v5 Andrew Morton
2011-07-07 9:47 ` Mel Gorman [this message]
2011-07-07 12:58 ` Christoph Hellwig
2011-07-15 14:10 ` Mel Gorman
2011-07-15 15:27 ` Christoph Hellwig
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=20110707094737.GG15285@suse.de \
--to=mgorman@suse.de \
--cc=a.p.zijlstra@chello.nl \
--cc=akpm@linux-foundation.org \
--cc=davem@davemloft.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=neilb@suse.de \
--cc=netdev@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 NNTP newsgroup(s).