Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp4705394pxu; Mon, 21 Dec 2020 21:22:34 -0800 (PST) X-Google-Smtp-Source: ABdhPJyad52JSpKQgpg80XlQ6UybEgsbIqOnlL6QtSAKDVbS0XpJIZc+IGgyjpk2nNmngu1ZaWsB X-Received: by 2002:aa7:d3cc:: with SMTP id o12mr19636649edr.235.1608614554431; Mon, 21 Dec 2020 21:22:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1608614554; cv=none; d=google.com; s=arc-20160816; b=ILify9wv0yH5XD3KjaMvSdB+c7wburJE3JcOWHFD2o+aGTHpQKfhXZ2zB4l9+2BxuA FifIwnZCrukKWiw+xepVemy+TQwpWjW2Uhvdue2YLfG4CU9Ss7hDXdKmAfyCFVJC2Th3 Z43+XKUGFdCVyd/ThQD8nsWs2ygmImRnxXrWzodGc26oho2WRquygvRk5JVi+QLFYktD 9UQC21/QFyLKKQPDqBs1zJBeDnN6AkduAgTPNFzMJVUA4sXolB+nFpE+yeMulkmXxT6y yJ0bB9slmSePdZjS5k5hEB7wby7cH8p/wtIE1WmtnmjMUtxNh7vGmtVcnk+9NOHjWCHN YZNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from; bh=It06LJZstTMRlVjjPE/u/0aATPM69228v1kcXJTPnTw=; b=Rh4b6NhtW5uj89c6+tSxdz9DlM06qVhE/s0+uw8p5zKAr1423MSMP050LrsAkl8Bo+ GW/S5NLGmj380N+eUU0upvY432Eji8hbPxFvtF14tgx2i6TOHzbQSkS04KjYUklmiZg+ UuAYcu3eZiuOK47WVIOKj85eecgBqQ/d2Z66YgOGyf4lOvlKkjf+tWO4pQklTCAw4Ttz iYr+whTizbuic9FrdimucsZ1M9sZRrrheSqE/waIaSwvg31rwBeOtoqs9HPx1EP5AmkF /1RZ2DrTu8qhdeiXThaWsQfzHOU3qKhLz/6iOZHxXXnpjMb4G5ro0GoHIjCHXg07dbK4 yr0Q== 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 ga15si9799271ejc.598.2020.12.21.21.22.11; Mon, 21 Dec 2020 21:22:34 -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 S1725931AbgLVFVv (ORCPT + 99 others); Tue, 22 Dec 2020 00:21:51 -0500 Received: from out30-131.freemail.mail.aliyun.com ([115.124.30.131]:53155 "EHLO out30-131.freemail.mail.aliyun.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725300AbgLVFVr (ORCPT ); Tue, 22 Dec 2020 00:21:47 -0500 X-Alimail-AntiSpam: AC=PASS;BC=-1|-1;BR=01201311R141e4;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=8;SR=0;TI=SMTPD_---0UJPqUQy_1608614460; Received: from aliy80.localdomain(mailfrom:alex.shi@linux.alibaba.com fp:SMTPD_---0UJPqUQy_1608614460) by smtp.aliyun-inc.com(127.0.0.1); Tue, 22 Dec 2020 13:21:00 +0800 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 Subject: [PATCH v2 1/3] mm/memcg: revise the using condition of lock_page_lruvec function series Date: Tue, 22 Dec 2020 13:20:51 +0800 Message-Id: <1608614453-10739-1-git-send-email-alex.shi@linux.alibaba.com> X-Mailer: git-send-email 1.8.3.1 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org lock_page_lruvec() and its variants are safe to use under the same conditions as commit_charge(): add lock_page_memcg() to the comment. Polished with Hugh Dickins' suggestions, thanks! 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 | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/mm/memcontrol.c b/mm/memcontrol.c index b80328f52fb4..8d400efc81b9 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -1345,10 +1345,11 @@ void lruvec_memcg_debug(struct lruvec *lruvec, struct page *page) * lock_page_lruvec - lock and return lruvec for a given page. * @page: the page * - * This series functions should be used in either conditions: - * PageLRU is cleared or unset - * or page->_refcount is zero - * or page is locked. + * These functions are safe to use under any of the following conditions: + * - page locked + * - PageLRU cleared + * - lock_page_memcg() + * - page->_refcount is zero */ struct lruvec *lock_page_lruvec(struct page *page) { -- 2.29.GIT