From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 102A7C61CE8 for ; Fri, 13 Jun 2025 01:41:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6F6FA6B007B; Thu, 12 Jun 2025 21:41:23 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6CE796B0089; Thu, 12 Jun 2025 21:41:23 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 60D736B008A; Thu, 12 Jun 2025 21:41:23 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 4231E6B007B for ; Thu, 12 Jun 2025 21:41:23 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id CED735B900 for ; Fri, 13 Jun 2025 01:41:22 +0000 (UTC) X-FDA: 83548674804.03.1C4D89A Received: from out30-124.freemail.mail.aliyun.com (out30-124.freemail.mail.aliyun.com [115.124.30.124]) by imf18.hostedemail.com (Postfix) with ESMTP id B62401C0009 for ; Fri, 13 Jun 2025 01:41:19 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=GLXkZTiK; spf=pass (imf18.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.124 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com; dmarc=pass (policy=none) header.from=linux.alibaba.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749778881; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=CSzFqjAOdYOhtCVpEGFFODIRgXuSQjCJncahjlXIPOY=; b=E6suCC+P4WrHfbBADQOLzPwBIgaIB/mw5cqFKmt5eKb02PSNLnD1VtXeoCx/npTKqBAiIp BFY2DCUdcdufOjlB88TOrPJnaTHR9D8V59PiqP0wpWSBDfdpdpEFnimgizSJ2qzZVmm4ZV vBrDTOQ4FBCGWNY1tYPCUVlxzVmaWRk= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749778881; a=rsa-sha256; cv=none; b=QcrpexgMBFJ5KfdORufai0WDta1KgzSD2e8tHQipMdwwdWrqmXX911qiwIHlSDoPQvY9Ln IE102L2J3zl+NJaP8udI5ywYThzLMeIiyoErz7T+fPRiAVd5sXiZXJfmXG5Bq+xFrY4jd5 IliY26SbsjwAv/6sZnm4LnZ32GQQZTU= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=GLXkZTiK; spf=pass (imf18.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.124 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com; dmarc=pass (policy=none) header.from=linux.alibaba.com DKIM-Signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.alibaba.com; s=default; t=1749778876; h=Message-ID:Date:MIME-Version:Subject:To:From:Content-Type; bh=CSzFqjAOdYOhtCVpEGFFODIRgXuSQjCJncahjlXIPOY=; b=GLXkZTiKArup2m3MOW4/PMKZZ9uWl0Q6B/rWTi6L9PtEX89NcIBv3e3QTfx0cZ/SylOP+Tv7A2h7vuI4OpMQxNv+cSEPDZLQQ/3l1w2tfmB0RrMvgVZMFAK0+zY/qnQexGdOuIGJc/buc+IPykyVqmIqHMnFw/ZWB2cqlp1AiUU= Received: from 30.74.144.147(mailfrom:baolin.wang@linux.alibaba.com fp:SMTPD_---0Wdic67h_1749778874 cluster:ay36) by smtp.aliyun-inc.com; Fri, 13 Jun 2025 09:41:15 +0800 Message-ID: <28221305-14de-4e46-a9f4-8bf90c7b32c0@linux.alibaba.com> Date: Fri, 13 Jun 2025 09:41:14 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 1/2] selftests: khugepaged: fix the shmem collapse failure To: Zi Yan Cc: akpm@linux-foundation.org, david@redhat.com, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com, baohua@kernel.org, shuah@kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org References: From: Baolin Wang In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspam-User: X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: B62401C0009 X-Stat-Signature: xs7j1hs5nyxbi1iwqyayfxwwmbw9r7mo X-HE-Tag: 1749778879-768365 X-HE-Meta: U2FsdGVkX1+43owYsOwlYQTdf4VmsZrofdFlD6SrIXvCnhHaz4MX+oKWRunBBuLb+a21BcFAMpMxM1o3pNJfuTpFXcySmLXxd25PEfe5R+IuqFgdA+lauLj/wdMr4eyqzEkeOqIBs7sQbbUUGXrp29ygFwnF4CHP2UQOAwvaOzBaCs4p/QhMtUUc9LxZSFcluw1HsnjL36ncZhl6pQ7V86zGc1jhi6PaYnvtsOk2SdljVkr6ISdZom+fHT4TA2vsT2rfko7U7pKFaoOLXapC6Wo8cmOcPI7s6JVntmtUiWsdJiMAX6cGOwZFlbgfeSM4MsZ4qwCuEBU6VYludaXaZ6rAD58nEiT6f00EFfzzfys9TCjpvmoYIbDEoOekczohRoqbL1v3Zqzia4gYCIHAXiDGMkfuPmiLa+KkCxrAp2VxnUSUwlvhhCReuZJlrcpX/DO0xXYWzhgurtcEqvCBWEMG+bDlidw85B5ItH8pR+qsoq+3oKIpwnKVRx9sx5qLVCDalIHRZk6GEf+ZJyQ092qCvUnQh9AAAp1NVPJFLXG52DUGfXWx077WzIYURproOvlLf5i+h22Ud9TsDKIJ0dljfJ/PdQJRu9qxhx2tfNnZ97spd8sk9aoL0QQ8MqUDnQang3h2OKkpz2oa/3++ZP1Qs4SV6YMAH6DfSThsn/ieu03HKARXnCetWk7s9QQOxYkdwIlJ4xT+spAHy7u9mziq8r5YfC56E0wFJ/HE3ICedg+k3pv4YmbEFCbakOvQ2wDJDZJDoeLCjkdU2xcBljtIzgwjt3GPo+Frx7/vB/3yzaGfzk6bzSt7HohLxs9yw7nSlaV/ll1U3SqlKRM9chXvf88RTdymAqwTMkZeVagpJWEe7sG+fsymbCwYckEd10wF6+lNN4ZMTDoN7p1a1zXqq82j3eudfn4pt2OPs/BamxF35p4osmbCAQ9BoIk3ks1cZPGhjzFdyjH7dWf nDRycCn0 jz0P/ww7Rn0Ni+W8AqLHtXd64gITr4u7xn76IfGH8iOUDJOGZ5rpS6iWD2ki6Qb1L3kJ9gtgmjHdAjqojJwIIgnBBXP4x3klLyC+ygk87A5p1EieUBE6LpkQ60sMqKRYdY/JX1E7s61JQFdtFZzgjOb3ltZdE3O3rHnQS6zHIF6uoIbIz/RfQmhgOTJe+Rma2ni81/qnOAoTM5ceXw4QDkkR9U/K7dqvT8atECfVP8buO/b1aA1YkzrwHbN612AvCySRaR+2VqeSDr4CWBu9iIJ8jxSS56LsGxhSuXcyO8qUZRoXTN5Vgj5SK9ldbPRzopdD9JQufTltmtouraNtBiB1S1A== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 2025/6/12 23:46, Zi Yan wrote: > On 11 Jun 2025, at 23:54, Baolin Wang wrote: > >> When running the khugepaged selftest for shmem (./khugepaged all:shmem), >> I encountered the following test failures: >> " >> Run test: collapse_full (khugepaged:shmem) >> Collapse multiple fully populated PTE table.... Fail >> ... >> Run test: collapse_single_pte_entry (khugepaged:shmem) >> Collapse PTE table with single PTE entry present.... Fail >> ... >> Run test: collapse_full_of_compound (khugepaged:shmem) >> Allocate huge page... OK >> Split huge page leaving single PTE page table full of compound pages... OK >> Collapse PTE table full of compound pages.... Fail >> " >> >> The reason for the failure is that, it will set MADV_NOHUGEPAGE to prevent >> khugepaged from continuing to scan shmem VMA after khugepaged finishes >> scanning in the wait_for_scan() function. Moreover, shmem requires a refault >> to establish PMD mappings. >> >> However, after commit 2b0f922323cc, PMD mappings are prevented if the VMA is > > Can you add the title of the commit? It is easier to understand the context. > > 2b0f922323cc ("mm: don't install PMD mappings when THPs are disabled by the hw/process/vma") Sure. > >> set with MADV_NOHUGEPAGE flag, so shmem cannot establish PMD mappings during >> refault. >> >> To fix this issue, we can set the MADV_NOHUGEPAGE flag after the shmem refault. >> With this fix, the shmem test case passes. >> >> Fixes: 2b0f922323cc ("mm: don't install PMD mappings when THPs are disabled by the hw/process/vma") >> Signed-off-by: Baolin Wang >> --- >> tools/testing/selftests/mm/khugepaged.c | 3 +-- >> 1 file changed, 1 insertion(+), 2 deletions(-) >> >> diff --git a/tools/testing/selftests/mm/khugepaged.c b/tools/testing/selftests/mm/khugepaged.c >> index 8a4d34cce36b..d462f62d8116 100644 >> --- a/tools/testing/selftests/mm/khugepaged.c >> +++ b/tools/testing/selftests/mm/khugepaged.c >> @@ -561,8 +561,6 @@ static bool wait_for_scan(const char *msg, char *p, int nr_hpages, >> usleep(TICK); >> } >> >> - madvise(p, nr_hpages * hpage_pmd_size, MADV_NOHUGEPAGE); >> - >> return timeout == -1; >> } >> > I assume you are going to just remove this madvise based on your discussion > with David. With that, feel free to add Reviewed-by: Zi Yan Thanks.