Re: [PATCH] ubifs: Get/put page when changing PG_private

From: Kirill A. Shutemov
Date: Mon Dec 17 2018 - 05:59:55 EST


On Sat, Dec 15, 2018 at 04:01:30PM +0100, Richard Weinberger wrote:
> 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.

Looks good to me.

Acked-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>

> Cc: <stable@xxxxxxxxxxxxxxx>
> Cc: zhangjun <openzhangj@xxxxxxxxx>
> Fixes: 4ac1c17b2044 ("UBIFS: Implement ->migratepage()")

It is fair to reference the commit here. But I believe the bug itself
predates the commit and relevant not only for migration.

We might make it clear in the commit message.

--
Kirill A. Shutemov