Re: linux-next: Tree for Jul 6 (mm/memory_failure.c)

From: Randy Dunlap
Date: Mon Jul 06 2020 - 22:53:00 EST


On 7/6/20 5:35 PM, Joonsoo Kim wrote:
> On Mon, Jul 06, 2020 at 09:59:06AM -0700, Randy Dunlap wrote:
>> On 7/6/20 12:40 AM, Stephen Rothwell wrote:
>>> Hi all,
>>>
>>> Changes since 20200703:
>>>
>>
>> on i386:
>>
>> when CONFIG_MIGRATION is not set/enabled:
>>
>> ../mm/memory-failure.c: In function ânew_pageâ:
>> ../mm/memory-failure.c:1688:9: error: implicit declaration of function âalloc_migration_targetâ; did you mean âalloc_migrate_targetâ? [-Werror=implicit-function-declaration]
>> return alloc_migration_target(p, (unsigned long)&mtc);
>> ^~~~~~~~~~~~~~~~~~~~~~
>>
>>
>> --
>> ~Randy
>> Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
>
> Hello,
>
> Thanks for reporting.
>
> Below is the fix for this error.
> Andrew, Could you squash this fix into the patch,
> "mm-migrate-make-a-standard-target-allocation-function.patch"?
>
> Thanks.
>
>
> ------------------->8-------------------
> From 5fac269125dfb2d03e38a75319305e0e70b23a4b Mon Sep 17 00:00:00 2001
> From: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
> Date: Tue, 7 Jul 2020 09:16:58 +0900
> Subject: [PATCH] mm/migrate: fix for
> mm-migrate-make-a-standard-target-allocation-function.patch in mm tree
>
> new_page_nodemask() is renamed to alloc_migration_target in
> mm-migrate-make-a-standard-target-allocation-function.patch, but,
> one declaration for !CONFIG_MIGRATION case is missed. This patch fixes it.
>
> Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>

Works for me. Thanks.

Acked-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> # build-tested


> ---
> include/linux/migrate.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/include/linux/migrate.h b/include/linux/migrate.h
> index 5e9c866..cc56f0d 100644
> --- a/include/linux/migrate.h
> +++ b/include/linux/migrate.h
> @@ -60,8 +60,8 @@ static inline int migrate_pages(struct list_head *l, new_page_t new,
> free_page_t free, unsigned long private, enum migrate_mode mode,
> int reason)
> { return -ENOSYS; }
> -static inline struct page *new_page_nodemask(struct page *page,
> - int preferred_nid, nodemask_t *nodemask)
> +static inline struct page *alloc_migration_target(struct page *page,
> + unsigned long private)
> { return NULL; }
> static inline int isolate_movable_page(struct page *page, isolate_mode_t mode)
> { return -EBUSY; }
>


--
~Randy