From: "Huang, Ying" <ying.huang@intel.com>
To: Bharata B Rao <bharata@amd.com>
Cc: <linux-mm@kvack.org>, <linux-kernel@vger.kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Zi Yan <ziy@nvidia.com>, Yang Shi <shy828301@gmail.com>,
Baolin Wang <baolin.wang@linux.alibaba.com>,
"Oscar Salvador" <osalvador@suse.de>,
Matthew Wilcox <willy@infradead.org>
Subject: Re: [RFC 0/6] migrate_pages(): batch TLB flushing
Date: Wed, 28 Sep 2022 09:46:01 +0800 [thread overview]
Message-ID: <878rm42rvq.fsf@yhuang6-desk2.ccr.corp.intel.com> (raw)
In-Reply-To: <b9fc8a52-74b5-2f78-fbf6-8b473c6a8a36@amd.com> (Bharata B. Rao's message of "Tue, 27 Sep 2022 16:16:42 +0530")
Bharata B Rao <bharata@amd.com> writes:
> On 9/23/2022 1:22 PM, Huang, Ying wrote:
>> Bharata B Rao <bharata@amd.com> writes:
>>>
>>> Thanks for the patchset. I find it hitting the following BUG() when
>>> running mmtests/autonumabench:
>>>
>>> kernel BUG at mm/migrate.c:2432!
>>>
>>> This is BUG_ON(!list_empty(&migratepages)) in migrate_misplaced_page().
>>
>> Thank you very much for reporting! I haven't reproduced this yet. But
>> I will pay special attention to this when develop the next version, even
>> if I cannot reproduce this finally.
>
> The following change fixes the above reported BUG_ON().
>
> diff --git a/mm/migrate.c b/mm/migrate.c
> index a0de0d9b4d41..c11dd82245e5 100644
> --- a/mm/migrate.c
> +++ b/mm/migrate.c
> @@ -1197,7 +1197,7 @@ static int migrate_page_unmap(new_page_t get_new_page, free_page_t put_new_page,
> * references and be restored.
> */
> /* restore the page to right list. */
> - if (rc != -EAGAIN)
> + if (rc == -EAGAIN)
> ret = NULL;
>
> migrate_page_undo_page(page, page_was_mapped, anon_vma, locked, ret);
>
> The pages that returned from unmapping stage with -EAGAIN used to
> end up on "ret" list rather than continuing on the "from" list.
Yes. You are right. Thank you very much!
Digging some history, it is found that the code was correct in previous
versions, but became wrong for mistake during code rebasing. Will be
more careful in the future and try to organize the patchset better to
make it easier to review the changes.
Best Regards,
Huang, Ying
next prev parent reply other threads:[~2022-09-28 1:46 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-21 6:06 Huang Ying
2022-09-21 6:06 ` [RFC 1/6] mm/migrate_pages: separate huge page and normal pages migration Huang Ying
2022-09-21 15:55 ` Zi Yan
2022-09-22 1:14 ` Huang, Ying
2022-09-22 6:03 ` Baolin Wang
2022-09-22 6:22 ` Huang, Ying
2022-09-21 6:06 ` [RFC 2/6] mm/migrate_pages: split unmap_and_move() to _unmap() and _move() Huang Ying
2022-09-21 16:08 ` Zi Yan
2022-09-22 1:15 ` Huang, Ying
2022-09-22 6:36 ` Baolin Wang
2022-09-26 9:28 ` Alistair Popple
2022-09-26 18:06 ` Yang Shi
2022-09-27 0:02 ` Alistair Popple
2022-09-27 1:51 ` Huang, Ying
2022-09-27 20:34 ` John Hubbard
2022-09-27 20:57 ` Yang Shi
2022-09-28 0:59 ` Alistair Popple
2022-09-28 1:41 ` Huang, Ying
2022-09-28 1:44 ` John Hubbard
2022-09-28 1:49 ` Yang Shi
2022-09-28 1:56 ` John Hubbard
2022-09-28 2:14 ` Yang Shi
2022-09-28 2:57 ` John Hubbard
2022-09-28 3:25 ` Yang Shi
2022-09-28 3:39 ` Yang Shi
2022-09-27 20:56 ` Yang Shi
2022-09-27 20:54 ` Yang Shi
2022-09-21 6:06 ` [RFC 3/6] mm/migrate_pages: restrict number of pages to migrate in batch Huang Ying
2022-09-21 16:10 ` Zi Yan
2022-09-21 16:15 ` Zi Yan
2022-09-22 1:15 ` Huang, Ying
2022-09-21 6:06 ` [RFC 4/6] mm/migrate_pages: batch _unmap and _move Huang Ying
2022-09-21 6:06 ` [RFC 5/6] mm/migrate_pages: share more code between " Huang Ying
2022-09-21 6:06 ` [RFC 6/6] mm/migrate_pages: batch flushing TLB Huang Ying
2022-09-21 15:47 ` [RFC 0/6] migrate_pages(): batch TLB flushing Zi Yan
2022-09-22 1:45 ` Huang, Ying
2022-09-22 3:47 ` haoxin
2022-09-22 4:36 ` Huang, Ying
2022-09-22 12:50 ` Bharata B Rao
2022-09-23 7:52 ` Huang, Ying
2022-09-27 10:46 ` Bharata B Rao
2022-09-28 1:46 ` Huang, Ying [this message]
2022-09-26 9:11 ` Alistair Popple
2022-09-27 11:21 ` haoxin
2022-09-28 2:01 ` Huang, Ying
2022-09-28 3:33 ` haoxin
2022-09-28 4:53 ` Huang, Ying
2022-11-01 14:49 ` Hesham Almatary
2022-11-02 3:14 ` Huang, Ying
2022-11-02 14:13 ` Hesham Almatary
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=878rm42rvq.fsf@yhuang6-desk2.ccr.corp.intel.com \
--to=ying.huang@intel.com \
--cc=akpm@linux-foundation.org \
--cc=baolin.wang@linux.alibaba.com \
--cc=bharata@amd.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=osalvador@suse.de \
--cc=shy828301@gmail.com \
--cc=willy@infradead.org \
--cc=ziy@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox