On Fri, Dec 21, 2018 at 09:56:25AM +0100, Richard Weinberger wrote: > Am Samstag, 15. Dezember 2018, 16:01:30 CET schrieb Richard Weinberger: > > The page migration code assumes that a page with PG_private > > set has its page count elevated by 1. > > UBIFS never did this and therefore the migration code was unable > > to migrate some pages owned by UBIFS. > > The lead to situations where the CMA memory allocator failed to > > allocate memory. > > > > Fix this by using get/put_page when changing PG_private. > > > > Cc: <stable@xxxxxxxxxxxxxxx> > > Cc: zhangjun <openzhangj@xxxxxxxxx> > > Fixes: 4ac1c17b2044 ("UBIFS: Implement ->migratepage()") > > Reported-by: zhangjun <openzhangj@xxxxxxxxx> > > Signed-off-by: Richard Weinberger <richard@xxxxxx> > > FYI, on the XFS side a similar change caused a regression. > https://marc.info/?l=linux-fsdevel&m=154530861202448&w=2 > > Until this regression is not fully understood, including the implications > for UBIFS, I'll not merge this patch. This looks like a reasonable resolution to me: http://lkml.kernel.org/r/20181221093919.GA2337@xxxxxx But let's wait the inclusion (or objection). -- Kirill A. Shutemov