[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <56E8320B.8040807@nod.at>
Date: Tue, 15 Mar 2016 17:02:19 +0100
From: Richard Weinberger <richard@....at>
To: Christoph Hellwig <hch@...radead.org>
Cc: "Kirill A. Shutemov" <kirill@...temov.name>,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
"linux-mtd@...ts.infradead.org" <linux-mtd@...ts.infradead.org>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Boris Brezillon <boris.brezillon@...e-electrons.com>,
Maxime Ripard <maxime.ripard@...e-electrons.com>,
David Gstir <david@...ma-star.at>,
Dave Chinner <david@...morbit.com>,
Artem Bityutskiy <dedekind1@...il.com>,
"Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>,
Alexander Kaplan <alex@...tthing.co>
Subject: Re: Page migration issue with UBIFS
Christoph,
Am 15.03.2016 um 16:37 schrieb Christoph Hellwig:
> On Tue, Mar 15, 2016 at 04:32:40PM +0100, Richard Weinberger wrote:
>>> Or if ->page_mkwrite() was called, why the page is not dirty?
>>
>> BTW: UBIFS does not implement ->migratepage(), could this be a problem?
>
> This might be the reason. I can't reall make sense of
> buffer_migrate_page, but it seems to migrate buffer_head state to
> the new page.
Oh, yes. This makes a lot of sense.
> I'd love to know why CMA even tries to migrate pages that don't have a
> ->migratepage method, this seems incredibly dangerous to me.
CMA folks, can you please clarify? :-)
UBIFS cannot use buffer_migrate_page() as this function assumes a
buffer head and UBIFS works on top of an MTD.
This is most likely why ->migratepage() was never implemented in UBIFS.
Also the documentation is not clear, reads more like an not required optimization:
migrate_page: This is used to compact the physical memory usage.
If the VM wants to relocate a page (maybe off a memory card
that is signalling imminent failure) it will pass a new page
and an old page to this function. migrate_page should
transfer any private data across and update any references
that it has to the page.
...assuming s/migrate_page/migratepage.
Thanks,
//richard
Powered by blists - more mailing lists