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 X-Spam-Level: X-Spam-Status: No, score=-5.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BA0E5C433E0 for ; Thu, 7 Jan 2021 11:48:10 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 4D46323333 for ; Thu, 7 Jan 2021 11:48:10 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4D46323333 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id A74828D0137; Thu, 7 Jan 2021 06:48:09 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id A24E78D011F; Thu, 7 Jan 2021 06:48:09 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 93A758D0137; Thu, 7 Jan 2021 06:48:09 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0111.hostedemail.com [216.40.44.111]) by kanga.kvack.org (Postfix) with ESMTP id 7E3C18D011F for ; Thu, 7 Jan 2021 06:48:09 -0500 (EST) Received: from smtpin21.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id 479833658 for ; Thu, 7 Jan 2021 11:48:09 +0000 (UTC) X-FDA: 77678805498.21.roll81_5102618274ea Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin21.hostedemail.com (Postfix) with ESMTP id 1F56F180442C0 for ; Thu, 7 Jan 2021 11:48:09 +0000 (UTC) X-HE-Tag: roll81_5102618274ea X-Filterd-Recvd-Size: 3385 Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by imf49.hostedemail.com (Postfix) with ESMTP for ; Thu, 7 Jan 2021 11:48:08 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1610020087; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=JGT2RjyddglUzk1Kg1KO4LzQvdRbbltQQiFhAYsVZVI=; b=GorHO5qIJXlyUVjnDS3n3lmLcO4FziOHTsPQFjVQ1C6OZnFyTU8UWW+MgsNgTvgpdrjLnI 41sIVsnCh+T8tgjg3VJq0DscgryqBLTKVDxa7bidrMtYAzy8Zrkj7R3CM71Ni3sKSqDP3x iBiJJ57c7mVrEaqh9XgJ5kdEr85W1CI= Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id 73E5EAD12; Thu, 7 Jan 2021 11:48:07 +0000 (UTC) Date: Thu, 7 Jan 2021 12:48:06 +0100 From: Michal Hocko To: Muchun Song Cc: Mike Kravetz , Andrew Morton , Naoya Horiguchi , Andi Kleen , Linux Memory Management List , LKML , Yang Shi Subject: Re: [External] Re: [PATCH v2 1/6] mm: migrate: do not migrate HugeTLB page whose refcount is one Message-ID: <20210107114806.GI13207@dhcp22.suse.cz> References: <20210106084739.63318-1-songmuchun@bytedance.com> <20210106084739.63318-2-songmuchun@bytedance.com> <20210106161327.GR13207@dhcp22.suse.cz> <20210107111642.GF13207@dhcp22.suse.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: 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: On Thu 07-01-21 19:24:59, Muchun Song wrote: > On Thu, Jan 7, 2021 at 7:16 PM Michal Hocko wrote: > > > > On Thu 07-01-21 10:52:21, Muchun Song wrote: > > > On Thu, Jan 7, 2021 at 12:13 AM Michal Hocko wrote: > > > > > > > > On Wed 06-01-21 16:47:34, Muchun Song wrote: > > > > > If the refcount is one when it is migrated, it means that the page > > > > > was freed from under us. So we are done and do not need to migrate. > > > > > > > > Is this common enough that it would warrant the explicit check for each > > > > migration? > > > > > > Are you worried about the overhead caused by the check? Thanks. > > > > I am not as worried as I would like to see some actual justification for > > this optimization. > > OK. The HugeTLB page can be freed after it was isolated but before > being migrated. Right? If we catch this case, it is an optimization. > I do this just like unmap_and_move() does for a base page. If your only justification is that this path to be consistent with the regular pages then make it explicit in the changelog. Please think of people reading this code in the future and scratching their heads whether this is something that can be altered and fail to find the reasoning. Was this a huge optimization and some workload might suffer? Can this happen in the first place or how likely it is? -- Michal Hocko SUSE Labs