Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp4777699pxu; Tue, 22 Dec 2020 00:01:44 -0800 (PST) X-Google-Smtp-Source: ABdhPJwtYoBRqeXvMbQKYmXDFWHH3gHpNXfKMM4mUDfX7XAeKuyb2zXCOpjNsr0hRQN+YvsBwZs+ X-Received: by 2002:a17:907:3e17:: with SMTP id hp23mr18620225ejc.545.1608624104379; Tue, 22 Dec 2020 00:01:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1608624104; cv=none; d=google.com; s=arc-20160816; b=sKJOtp25QS5hl1dQljxZMRdhcJHKh83Q3oTRQwOcRbUI1WE5/UT7I3rawjPBJjzL+R oNseVa03WqCHMobLw6W4rreDTDfcgm2BLtwF+uZe8Nj3SLXknJKBGq32mfXkjeDWP7BX MhZYFOl1gX6+WfdqBfEFFjiQZ/Th1AnPT5X/qCSn7oC19efInKNOyRcrIeGpgbXarplk qaFc9Iqjt8zByMbVIRHzq3uwDCabQKKdHAlx4XXro2eXIsDSvJxrRhDu87QXs2duKTQn jud1/n/I1UL3Z4MZfeNJ9UQd3G8w9OXUPewUHrCv9twAN4DN8wL3Cjx1j+6hbO7gxbql u48g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to :mime-version:user-agent:date:message-id:references:cc:to:from :subject; bh=BGDLF0YhyGkARosEPpC7YMnGhZ3fTiqeUZZcvZ7YxB4=; b=TDsrnJEZJCaoSKLTV90cjaH/0Usgdsr525eCmZbYh2jexEOHXB57rKj3zssObbnXby WCyFHXYsau6Yq+Ind9d8Ju2wXtm4dCasyn6Apv3ylb7gN1tIOrVqjIJUtBpXF0VNlmfn XuVtuWdwk0GfjqWifupTVzE74PGIBvzs1r4PfCRdIIjbwNYRQtzQviR70/lSnFRcRw0n eDPfPSu7jAAbeRa5nqRNXAJcFcrOOtMgacskeQu29YvTAc/knMQukhKgSB8Ap6yW66Bz wnspg71PBSNavO/tXEBr0bazuMFD/EgMG4Dwr3AQAOyUp0XHHfRIFnu2jlSf+AlnkxWK QuIQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=alibaba.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g10si11184249edt.499.2020.12.22.00.01.20; Tue, 22 Dec 2020 00:01:44 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=alibaba.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725811AbgLVIBF (ORCPT + 99 others); Tue, 22 Dec 2020 03:01:05 -0500 Received: from out30-54.freemail.mail.aliyun.com ([115.124.30.54]:40078 "EHLO out30-54.freemail.mail.aliyun.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725300AbgLVIBF (ORCPT ); Tue, 22 Dec 2020 03:01:05 -0500 X-Alimail-AntiSpam: AC=PASS;BC=-1|-1;BR=01201311R781e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=e01e01424;MF=alex.shi@linux.alibaba.com;NM=1;PH=DS;RN=10;SR=0;TI=SMTPD_---0UJQTnsf_1608624020; Received: from IT-FVFX43SYHV2H.local(mailfrom:alex.shi@linux.alibaba.com fp:SMTPD_---0UJQTnsf_1608624020) by smtp.aliyun-inc.com(127.0.0.1); Tue, 22 Dec 2020 16:00:20 +0800 Subject: Re: [PATCH v2 2/3] mm/memcg: remove rcu locking for lock_page_lruvec function series From: Alex Shi To: hughd@google.com Cc: Johannes Weiner , Michal Hocko , Vladimir Davydov , Andrew Morton , cgroups@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Hui Su , Alexander Duyck References: <1608614453-10739-1-git-send-email-alex.shi@linux.alibaba.com> <1608614453-10739-2-git-send-email-alex.shi@linux.alibaba.com> Message-ID: <398f089d-250b-39f7-691a-9ce495b30700@linux.alibaba.com> Date: Tue, 22 Dec 2020 16:00:20 +0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.0; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 MIME-Version: 1.0 In-Reply-To: <1608614453-10739-2-git-send-email-alex.shi@linux.alibaba.com> Content-Type: text/plain; charset=gbk Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Cc: Hui Su and Alexander Duyck as Hugh suggested. ?? 2020/12/22 ????1:20, Alex Shi ะด??: > lock_page_lruvec() and its variants used rcu_read_lock() with the > intention of safeguarding against the mem_cgroup being destroyed > concurrently; but so long as they are called under the specified > conditions (as they are), there is no way for the page's mem_cgroup > to be destroyed. Delete the unnecessary rcu_read_lock() and _unlock(). > > Hugh Dickin's polished the commit log, Thanks a lot! > > Signed-off-by: Alex Shi > Acked-by: Hugh Dickins > Cc: Hugh Dickins > Cc: Johannes Weiner > Cc: Michal Hocko > Cc: Vladimir Davydov > Cc: Andrew Morton > Cc: cgroups@vger.kernel.org > Cc: linux-mm@kvack.org > Cc: linux-kernel@vger.kernel.org > --- > mm/memcontrol.c | 6 ------ > 1 file changed, 6 deletions(-) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index 8d400efc81b9..0af13c4fe4b3 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -1356,10 +1356,8 @@ struct lruvec *lock_page_lruvec(struct page *page) > struct lruvec *lruvec; > struct pglist_data *pgdat = page_pgdat(page); > > - rcu_read_lock(); > lruvec = mem_cgroup_page_lruvec(page, pgdat); > spin_lock(&lruvec->lru_lock); > - rcu_read_unlock(); > > lruvec_memcg_debug(lruvec, page); > > @@ -1371,10 +1369,8 @@ struct lruvec *lock_page_lruvec_irq(struct page *page) > struct lruvec *lruvec; > struct pglist_data *pgdat = page_pgdat(page); > > - rcu_read_lock(); > lruvec = mem_cgroup_page_lruvec(page, pgdat); > spin_lock_irq(&lruvec->lru_lock); > - rcu_read_unlock(); > > lruvec_memcg_debug(lruvec, page); > > @@ -1386,10 +1382,8 @@ struct lruvec *lock_page_lruvec_irqsave(struct page *page, unsigned long *flags) > struct lruvec *lruvec; > struct pglist_data *pgdat = page_pgdat(page); > > - rcu_read_lock(); > lruvec = mem_cgroup_page_lruvec(page, pgdat); > spin_lock_irqsave(&lruvec->lru_lock, *flags); > - rcu_read_unlock(); > > lruvec_memcg_debug(lruvec, page); > >