All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mel Gorman <mgorman@suse.de>
To: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Christoph Hellwig <hch@infradead.org>,
	Linux-MM <linux-mm@kvack.org>,
	Linux-Netdev <netdev@vger.kernel.org>,
	Linux-NFS <linux-nfs@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	David Miller <davem@davemloft.net>,
	Trond Myklebust <Trond.Myklebust@netapp.com>,
	Neil Brown <neilb@suse.de>
Subject: Re: [PATCH 03/10] mm: Add support for a filesystem to control swap files
Date: Mon, 12 Sep 2011 12:56:05 +0100	[thread overview]
Message-ID: <20110912115605.GB3207@suse.de> (raw)
In-Reply-To: <1315821369.26517.21.camel@twins>

On Mon, Sep 12, 2011 at 11:56:09AM +0200, Peter Zijlstra wrote:
> On Mon, 2011-09-12 at 10:34 +0100, Mel Gorman wrote:
> > On Mon, Sep 12, 2011 at 11:04:45AM +0200, Peter Zijlstra wrote:
> > > On Fri, 2011-09-09 at 09:36 -0400, Christoph Hellwig wrote:
> > > > The equivalent of ->direct_IO should be used for both reads and writes.
> > > 
> > > So the difference between DIO and swapIO is that swapIO needs the block
> > > map pinned in memory.. So at the very least you'll need those
> > > swap_{activate,deactivate} aops. The read/write-page thingies could
> > > indeed be shared with DIO.
> > > 
> > 
> > I'm travelling at the moment so it'll be later in the week when I investigate
> > properly but I agree swap_[de|a]ctivate are still necessary. NFS does not
> > need to pin a block map but it's still necessary for calling xs_set_memalloc.
> 
> Right.. but I think the hope was that we could replace the current swap
> bmap hackery with this and simplify the normal swap bits. But yeah,
> networked filesystems don't really bother with block maps on the client
> side ;-)

I took a look at what was involved with doing the block lookups in
ext4. It's what led to patch 4 of this series because it was necessary that
the filesystem get the same information as the generic handler. It got a
bit messy but looked like it would have worked if I kept at it. I stopped
because I did nt see a major advantage with swap_writepage() looking up
the block map instead of having looked it up in advance with bmap() but
I could have missed something.

WARNING: multiple messages have this Message-ID (diff)
From: Mel Gorman <mgorman@suse.de>
To: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Christoph Hellwig <hch@infradead.org>,
	Linux-MM <linux-mm@kvack.org>,
	Linux-Netdev <netdev@vger.kernel.org>,
	Linux-NFS <linux-nfs@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	David Miller <davem@davemloft.net>,
	Trond Myklebust <Trond.Myklebust@netapp.com>,
	Neil Brown <neilb@suse.de>
Subject: Re: [PATCH 03/10] mm: Add support for a filesystem to control swap files
Date: Mon, 12 Sep 2011 12:56:05 +0100	[thread overview]
Message-ID: <20110912115605.GB3207@suse.de> (raw)
In-Reply-To: <1315821369.26517.21.camel@twins>

On Mon, Sep 12, 2011 at 11:56:09AM +0200, Peter Zijlstra wrote:
> On Mon, 2011-09-12 at 10:34 +0100, Mel Gorman wrote:
> > On Mon, Sep 12, 2011 at 11:04:45AM +0200, Peter Zijlstra wrote:
> > > On Fri, 2011-09-09 at 09:36 -0400, Christoph Hellwig wrote:
> > > > The equivalent of ->direct_IO should be used for both reads and writes.
> > > 
> > > So the difference between DIO and swapIO is that swapIO needs the block
> > > map pinned in memory.. So at the very least you'll need those
> > > swap_{activate,deactivate} aops. The read/write-page thingies could
> > > indeed be shared with DIO.
> > > 
> > 
> > I'm travelling at the moment so it'll be later in the week when I investigate
> > properly but I agree swap_[de|a]ctivate are still necessary. NFS does not
> > need to pin a block map but it's still necessary for calling xs_set_memalloc.
> 
> Right.. but I think the hope was that we could replace the current swap
> bmap hackery with this and simplify the normal swap bits. But yeah,
> networked filesystems don't really bother with block maps on the client
> side ;-)

I took a look at what was involved with doing the block lookups in
ext4. It's what led to patch 4 of this series because it was necessary that
the filesystem get the same information as the generic handler. It got a
bit messy but looked like it would have worked if I kept at it. I stopped
because I did nt see a major advantage with swap_writepage() looking up
the block map instead of having looked it up in advance with bmap() but
I could have missed something.

--
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>

  reply	other threads:[~2011-09-12 11:56 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-09 11:00 [RFC PATCH 00/10] Swap-over-NFS without deadlocking v1 Mel Gorman
2011-09-09 11:00 ` Mel Gorman
2011-09-09 11:00 ` [PATCH 01/10] netvm: Prevent a stream-specific deadlock Mel Gorman
2011-09-09 11:00   ` Mel Gorman
2011-09-09 11:00 ` [PATCH 02/10] selinux: tag avc cache alloc as non-critical Mel Gorman
2011-09-09 11:00   ` Mel Gorman
2011-09-09 11:00 ` [PATCH 03/10] mm: Add support for a filesystem to control swap files Mel Gorman
2011-09-09 11:00   ` Mel Gorman
2011-09-09 13:00   ` Christoph Hellwig
2011-09-09 13:00     ` Christoph Hellwig
2011-09-09 13:00     ` Christoph Hellwig
2011-09-09 13:15     ` Mel Gorman
2011-09-09 13:15       ` Mel Gorman
2011-09-09 13:36       ` Christoph Hellwig
2011-09-09 13:36         ` Christoph Hellwig
2011-09-12  9:04         ` Peter Zijlstra
2011-09-12  9:04           ` Peter Zijlstra
2011-09-12  9:34           ` Mel Gorman
2011-09-12  9:34             ` Mel Gorman
2011-09-12  9:34             ` Mel Gorman
2011-09-12  9:56             ` Peter Zijlstra
2011-09-12  9:56               ` Peter Zijlstra
2011-09-12 11:56               ` Mel Gorman [this message]
2011-09-12 11:56                 ` Mel Gorman
2011-09-12 12:06                 ` Peter Zijlstra
2011-09-12 12:06                   ` Peter Zijlstra
2011-09-09 11:00 ` [PATCH 04/10] mm: swap: Implement generic handlers for swap-related address ops Mel Gorman
2011-09-09 11:00   ` Mel Gorman
2011-09-09 11:00 ` [PATCH 05/10] mm: Methods for teaching filesystems about PG_swapcache pages Mel Gorman
2011-09-09 11:00   ` Mel Gorman
2011-09-09 11:00 ` [PATCH 06/10] nfs: teach the NFS client how to treat " Mel Gorman
2011-09-09 11:00   ` Mel Gorman
2011-09-09 11:00 ` [PATCH 07/10] nfs: disable data cache revalidation for swapfiles Mel Gorman
2011-09-09 11:00   ` Mel Gorman
2011-09-09 11:00 ` [PATCH 08/10] nfs: enable swap on NFS Mel Gorman
2011-09-09 11:00   ` Mel Gorman
2011-09-09 11:00 ` [PATCH 09/10] nfs: Prevent page allocator recursions with swap over NFS Mel Gorman
2011-09-09 11:00   ` Mel Gorman
2011-09-09 11:00 ` [PATCH 10/10] Avoid dereferencing bd_disk during swap_entry_free for network storage Mel Gorman
2011-09-09 11:00   ` Mel Gorman
2011-09-09 13:02   ` Christoph Hellwig
2011-09-09 13:02     ` 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=20110912115605.GB3207@suse.de \
    --to=mgorman@suse.de \
    --cc=Trond.Myklebust@netapp.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=davem@davemloft.net \
    --cc=hch@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-nfs@vger.kernel.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 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.