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 716DCC67861 for ; Sat, 6 Apr 2024 23:37:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D49056B0085; Sat, 6 Apr 2024 19:37:47 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CF9046B0087; Sat, 6 Apr 2024 19:37:47 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BE7226B0088; Sat, 6 Apr 2024 19:37:47 -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 A210F6B0085 for ; Sat, 6 Apr 2024 19:37:47 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 368BF1A0567 for ; Sat, 6 Apr 2024 23:37:47 +0000 (UTC) X-FDA: 81980721774.14.A5033F8 Received: from szxga05-in.huawei.com (szxga05-in.huawei.com [45.249.212.191]) by imf14.hostedemail.com (Postfix) with ESMTP id 9F9CB100005 for ; Sat, 6 Apr 2024 23:37:44 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=none; spf=pass (imf14.hostedemail.com: domain of tujinjiang@huawei.com designates 45.249.212.191 as permitted sender) smtp.mailfrom=tujinjiang@huawei.com; dmarc=pass (policy=quarantine) header.from=huawei.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1712446665; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=5Y7RAwPbt1Fk/0Mi05hviqpmwRm5R67uywCmHoNnj8w=; b=qLrNpD+4z3ASl8d37vlZyF05RqLt6PExf5Fn26ptLQXvDYG/d8BVv09GOaJh5MQ9gxC7oG qri6jEuARE8j/GZTitiv0xhK5N4YNR6YrdQcaCFRRTgEbp1Z9SEKFoJCZtZJ2Jn/WRiO/T O6njAmZfk86zueGsseIPAsA5hmvdu/I= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1712446665; a=rsa-sha256; cv=none; b=28u3spe8StqRO4fvxlIGoYBlzzaUyPIfI0AutFdNQKOSZ0c3TUk4ot0kvoc2vOOIhzO2qo glGMui+y/7dREXlnBjg6A203yrrj+UeQbieVWfq//9EubcDSO9nNp1Ek/Q6TuvuvQj+L0r ezZ4N/RmCTMqSGhtJQNLQaLoxkX7AD0= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=none; spf=pass (imf14.hostedemail.com: domain of tujinjiang@huawei.com designates 45.249.212.191 as permitted sender) smtp.mailfrom=tujinjiang@huawei.com; dmarc=pass (policy=quarantine) header.from=huawei.com Received: from mail.maildlp.com (unknown [172.19.163.17]) by szxga05-in.huawei.com (SkyGuard) with ESMTP id 4VBsCH4JT1z1h5px; Sun, 7 Apr 2024 07:34:51 +0800 (CST) Received: from dggpeml500011.china.huawei.com (unknown [7.185.36.84]) by mail.maildlp.com (Postfix) with ESMTPS id 445D91A0172; Sun, 7 Apr 2024 07:37:40 +0800 (CST) Received: from [10.174.179.13] (10.174.179.13) by dggpeml500011.china.huawei.com (7.185.36.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Sun, 7 Apr 2024 07:37:39 +0800 Message-ID: <2d5e6b12-0010-ef33-e1f0-c300955e5068@huawei.com> Date: Sun, 7 Apr 2024 07:37:39 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Subject: Re: [PATCH] mm/ksm: remove redundant code in ksm_fork To: David Hildenbrand , , , , , , , References: <20240402024934.1093361-1-tujinjiang@huawei.com> From: Jinjiang Tu In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.174.179.13] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) To dggpeml500011.china.huawei.com (7.185.36.84) X-Stat-Signature: 373h3obhn6wzbgmy5u96cx3hepjh6bmy X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 9F9CB100005 X-Rspam-User: X-HE-Tag: 1712446664-317448 X-HE-Meta: U2FsdGVkX19ylk2YbxP3L37TBg2nVLnr4zrcd9hQQTckkPe9mA7JhH7n/n1K8NQZUbeD7loHpe7ezFlt7ljm+kfLN0P4CqbBuGN09RJZg3XJCj3Bi74ZkNNCauLRhFYa3jKp3cVEUs48IhI7yxOhZcJZ43rQHqKmiZ1/zZSuw3bhv/z8UwEUV2CxJOnPywNYZHBSrh1DcerbNA4Il4AZ5dOkoMqQXCQmVMLbxA05KKI4JJK4XthTpSA7RTocKphb0qvbV8t9b7tTz+yWlgPmu6ahzJmV916hod93rsZpZvZSnAZXmdUpokJtSqy9nwBlhKpsRned6df04VH884Vup0hlWzjB6JolN7VbVH9OKNszmIkgzl/7LoyHKgHYOd2KYgFG6GwqcHjF6nSMU6/Aaez3LAmAAdjmVW4g6ESG/YjRgCfA+PVtZ9Ule3BC+0sMtvMSomvbYVBkXl4b+Fj9tAPrlMEybdKTMYcMADPgX55HPRQa9Kso1agjcVrbuaCWXJLSXCamtAdTx+yyG0vzpC/fCyFlRn1AnnXJVQxPYhe7aG8pSmxoOVyrAY2GTVFzGmi89smbo1LRMK7JbTnISEDmzskTwYnOTWDmptNYiPxfrMgkrQXfMmXQ56B0u/IJhhkOPWDc626lxi2TWoPld/8ePJYkrHakcqz45XrbTJcUj5bFSMDiAF1qX8MWyfe40hgzoqMwPN6DFCHUMzR174QQvazjO9wTxJaSnRe7pHvRtWnNOtmjYcfV5eloeMFNJ1jQDahRqadgmbo7ECLuWrUzzprCaZC9+CjmolOMUPOQPl8lvMWPE4c47Oi34nq7rFQSyBqAFxFiW8Rn1DBUr1E8W0X453a5uuD6YS/i9x6cRDkyG+woqIQKpi+NbtnDin8FjTmM8BbA7DSLsSgVzIg6n/wcEfOVehnpQJEKJ1Ax5M3xVnb22gk3pN08/M+SolBS8E1A8eRGXFOvdTr WOsXZqMq CVsc0igW7vN7LvDX1bULucz9hGyHzBDLd4YU1eVMVuBMg9Xs2zMHx9Z8g0hSMDAbOCK+HLsW1MahDehncvAcxlnd6eUe9+5CzIJm0XjWHLWscugCsRS96F2soZNcUwkzcbqOupz2ScWuUzF7qWxtSS3YZ9fn+VpJsTBuEkXScxzlTQx5UiT4jJeZgfvi872USty7nAMCFxjVVrtd6QMa99KqbXUtTYmqXaDHnXi8zFWLpWh9UpFRWo5iZJQ== 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: 在 2024/4/4 23:34, David Hildenbrand 写道: > On 02.04.24 04:49, Jinjiang Tu wrote: >> Since commit 3c6f33b7273a ("mm/ksm: support fork/exec for prctl"), >> when a >> child process is forked, the MMF_VM_MERGE_ANY flag will be inherited in >> mm_init(). So, it's unnecessary to set the flag in ksm_fork(). >> >> Signed-off-by: Jinjiang Tu >> --- >>   include/linux/ksm.h | 12 ++---------- >>   1 file changed, 2 insertions(+), 10 deletions(-) >> >> diff --git a/include/linux/ksm.h b/include/linux/ksm.h >> index 401348e9f92b..2e61df795803 100644 >> --- a/include/linux/ksm.h >> +++ b/include/linux/ksm.h >> @@ -45,16 +45,8 @@ static inline void >> ksm_might_unmap_zero_page(struct mm_struct *mm, pte_t pte) >>     static inline int ksm_fork(struct mm_struct *mm, struct mm_struct >> *oldmm) >>   { >> -    int ret; >> - >> -    if (test_bit(MMF_VM_MERGEABLE, &oldmm->flags)) { >> -        ret = __ksm_enter(mm); >> -        if (ret) >> -            return ret; >> -    } >> - >> -    if (test_bit(MMF_VM_MERGE_ANY, &oldmm->flags)) >> -        set_bit(MMF_VM_MERGE_ANY, &mm->flags); >> +    if (test_bit(MMF_VM_MERGEABLE, &oldmm->flags)) >> +        return __ksm_enter(mm); >>         return 0; >>   } > > I *think* this is correct. :) > > Did you run the new ksm_functional_tests in mm/mm-unstable to make > sure they still pass? If so > > Reviewed-by: David Hildenbrand Sorry for late reply, I was on holiday. I have run the new ksm_functional_tests and the testcases still pass.