[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5888A7A2.9060907@foxmail.com>
Date: Wed, 25 Jan 2017 21:26:58 +0800
From: Yisheng Xie <ysxie@...mail.com>
To: Michal Hocko <mhocko@...nel.org>,
Yisheng Xie <xieyisheng1@...wei.com>
Cc: linux-mm@...ck.org, linux-kernel@...r.kernel.org,
n-horiguchi@...jp.nec.com, akpm@...ux-foundation.org,
minchan@...nel.org, vbabka@...e.cz, guohanjun@...wei.com,
qiuxishi@...wei.com
Subject: Re: [PATCH] mm/migration: make isolate_movable_page always defined
Hi, Michal,
Thanks for reviewing.
On 01/25/2017 08:01 PM, Michal Hocko wrote:
> On Wed 25-01-17 18:36:03, Yisheng Xie wrote:
>> Define isolate_movable_page as a static inline function when
>> CONFIG_MIGRATION is not enable. It should return false
>> here which means failed to isolate movable pages.
>>
>> This patch do not have any functional change but to resolve compile
>> error caused by former commit "HWPOISON: soft offlining for non-lru
>> movable page" with CONFIG_MIGRATION disabled.
>>
>> Signed-off-by: Yisheng Xie <xieyisheng1@...wei.com>
>> ---
>> include/linux/migrate.h | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/include/linux/migrate.h b/include/linux/migrate.h
>> index ae8d475..631a8c8 100644
>> --- a/include/linux/migrate.h
>> +++ b/include/linux/migrate.h
>> @@ -56,6 +56,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 bool isolate_movable_page(struct page *page, isolate_mode_t mode)
>> + { return false; }
> OK, so we return false here which will make __soft_offline_page return
> true all the way up. Is this really what we want? Don't we want to
> return EBUSY in that case? The error code propagation here is just
> one big mess.
That's right, my stupid coding really make a big mess here.
I will make another version for patch "HWPOISON:
soft offlining for non-lru movable page" to avoid that.
Thanks
Yisheng Xie.
>>
>> static inline int migrate_prep(void) { return -ENOSYS; }
>> static inline int migrate_prep_local(void) { return -ENOSYS; }
>> --
>> 1.7.12.4
>>
Powered by blists - more mailing lists