Re: [PATCH 0/2] new APIs to allocate buffer-cache for superblock in non-movable area

From: Jan Kara
Date: Sat Aug 16 2014 - 14:52:20 EST


On Thu 14-08-14 14:26:10, Andrew Morton wrote:
> On Thu, 14 Aug 2014 14:12:17 +0900 Gioh Kim <gioh.kim@xxxxxxx> wrote:
>
> > This patch try to solve problem that a long-lasting page caches of
> > ext4 superblock and journaling of superblock disturb page migration.
> >
> > I've been testing CMA feature on my ARM-based platform
> > and found that two page caches cannot be migrated.
> > They are page caches of superblock of ext4 filesystem and its journaling data.
> >
> > Current ext4 reads superblock with sb_bread() that allocates page
> > from movable area. But the problem is that ext4 hold the page until
> > it is unmounted. If root filesystem is ext4 the page cannot be migrated forever.
> > And also the journaling data for the superblock cannot be migreated.
> >
> > I introduce a new API for allocating page cache from non-movable area.
> > It is useful for ext4/ext3 and others that want to hold page cache for a long time.
>
> All seems reasonable to me. The additional overhead in buffer.c from
> additional function arguments is regrettable but I don't see a
> non-hacky alternative.
>
> One vital question which the changelog doesn't really address (it
> should): how important is this patch? Is your test system presently
> "completely dead in the water utterly unusable" or "occasionally not
> quite as good as it could be". Somewhere in between?
I would be also interested in how much these patches make things better.
Because I would expect all metadata that is currently journalled to be
unmovable as well.

Honza
--
Jan Kara <jack@xxxxxxx>
SUSE Labs, CR
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/