Thread (25 messages) 25 messages, 10 authors, 2016-03-25

Re: Page migration issue with UBIFS

From: Richard Weinberger <richard@nod.at>
Date: 2016-03-15 16:02:19
Also in: linux-fsdevel, lkml

Christoph,

Am 15.03.2016 um 16:37 schrieb Christoph Hellwig:
On Tue, Mar 15, 2016 at 04:32:40PM +0100, Richard Weinberger wrote:
quoted
quoted
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

--
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/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help