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=-18.6 required=3.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_IN_DEF_DKIM_WL autolearn=ham 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 E2AEFC07E95 for ; Wed, 7 Jul 2021 20:53:42 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 87A1261CCF for ; Wed, 7 Jul 2021 20:53:42 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 87A1261CCF Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 5BA5F6B0071; Wed, 7 Jul 2021 16:53:42 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 56A496B0072; Wed, 7 Jul 2021 16:53:42 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 40AE56B0073; Wed, 7 Jul 2021 16:53:42 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0183.hostedemail.com [216.40.44.183]) by kanga.kvack.org (Postfix) with ESMTP id 18B6B6B0071 for ; Wed, 7 Jul 2021 16:53:42 -0400 (EDT) Received: from smtpin11.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id 72ABF1809A351 for ; Wed, 7 Jul 2021 20:53:41 +0000 (UTC) X-FDA: 78336993042.11.EE3B1C2 Received: from mail-lf1-f46.google.com (mail-lf1-f46.google.com [209.85.167.46]) by imf29.hostedemail.com (Postfix) with ESMTP id F11F4900013E for ; Wed, 7 Jul 2021 20:53:40 +0000 (UTC) Received: by mail-lf1-f46.google.com with SMTP id f30so7789806lfj.1 for ; Wed, 07 Jul 2021 13:53:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ZWu3QVOTeUxlL22eAEVvjuwGrqkBirMWX6Uul/gayos=; b=oB1tZvS2C6wdt8bXQ6VyPQ06nRjpDgwW4zhA9viHIgemWVC3N7Km/I5aZtZWAzZNHf ziltRaLuxetuvx9MdUC+fS6zoS55xUomEaYfGIwLm6q5g4kitJ228TjDuJQXfQXHfm57 hWBFZSytJ/98ZLAD5LM+/ALH6G3TGOXldp/SVPm2DT/M0iHrzEs7v0OOrU2kr+V6I+4m Syc1GNJYwvznnD4ankuZgO2aCrJKXmNnGpdXVM2Af8PDmhHO8S7za0ZzTcdIwyp8t7WK gGvhuNkiKhVrz096b2/UN7GMOsuRFdipJvXOmgt5G28otO0dnhA+hbVBewa04rQaaoMu t1IA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ZWu3QVOTeUxlL22eAEVvjuwGrqkBirMWX6Uul/gayos=; b=V4sTCw2TI3sFUfjaaW3aGhF1W/wTRa7UZ5KUnF6Ga5g3nNrKvma2Nf3aqNZ+Uc6WkO Mr63mKaFFigINRIYzlb8VUQ9qWy9npnOhvgk+NQH9v8JB4MkK/dg8EfptfLRpeglDwJ1 XNu0AXhUEtGezhO//GttPOIUOnLSPx0W/k4RlZAsJgHtm4lImYJ2QRI3Q5OkxYT1O4sA WsxlzyQqLwdkIaVqsxl+b4A+iXCN0m+X/sH4EYkx4Uah04ezHiofMknKyvn2aMh/YGSF VP+VOwcmDffF17xG1w08jjg0OYf73vv6wa3/0nWl6shOSIXhH9pmJAfWsycxkmb2R+fd 1ljw== X-Gm-Message-State: AOAM5326gUt09wbWOACx2iEicbTvLVrlAgVphQWdStGgqF0U/Ip8zWZh CDr5pL1BXCeBB4awVaDWniihB88H/4O8OnsnyoRdIA== X-Google-Smtp-Source: ABdhPJyVTPOt80HxqZFB61uQ9A5qxjQORTzjqtIZ+O5e7nCD1vMQJGQNXIH5d5vak8TVCon4dmUFEe03ut3kO4kiuVQ= X-Received: by 2002:a2e:a78d:: with SMTP id c13mr21293260ljf.0.1625691217400; Wed, 07 Jul 2021 13:53:37 -0700 (PDT) MIME-Version: 1.0 References: <563ce5b2-7a44-5b4d-1dfd-59a0e65932a9@google.com> In-Reply-To: From: Shakeel Butt Date: Wed, 7 Jul 2021 13:53:26 -0700 Message-ID: Subject: Re: [PATCH 2/4] mm/rmap: fix old bug: munlocking THP missed other mlocks To: Hugh Dickins Cc: Andrew Morton , Alistair Popple , Jason Gunthorpe , Ralph Campbell , Christoph Hellwig , Yang Shi , "Kirill A. Shutemov" , LKML , Linux MM Content-Type: text/plain; charset="UTF-8" Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=google.com header.s=20161025 header.b=oB1tZvS2; spf=pass (imf29.hostedemail.com: domain of shakeelb@google.com designates 209.85.167.46 as permitted sender) smtp.mailfrom=shakeelb@google.com; dmarc=pass (policy=reject) header.from=google.com X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: F11F4900013E X-Rspam-User: nil X-Stat-Signature: 54q43c16fab67ydhukucb5ikg1wur3ut X-HE-Tag: 1625691220-355843 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 Wed, Jul 7, 2021 at 1:08 PM Hugh Dickins wrote: > > The kernel recovers in due course from missing Mlocked pages: but there > was no point in calling page_mlock() (formerly known as try_to_munlock()) > on a THP, because nothing got done even when it was found to be mapped in > another VM_LOCKED vma. > > It's true that we need to be careful: Mlocked accounting of pte-mapped > THPs is too difficult (so consistently avoided); but Mlocked accounting > of only-pmd-mapped THPs is supposed to work, even when multiple mappings > are mlocked and munlocked or munmapped. Refine the tests. > > There is already a VM_BUG_ON_PAGE(PageDoubleMap) in page_mlock(), so > page_mlock_one() does not even have to worry about that complication. > > (I said the kernel recovers: but would page reclaim be likely to split > THP before rediscovering that it's VM_LOCKED? I've not followed that up.) I think, yes, page reclaim will split the THP prematurely in this case. > > Fixes: 9a73f61bdb8a ("thp, mlock: do not mlock PTE-mapped file huge pages") > Signed-off-by: Hugh Dickins Reviewed-by: Shakeel Butt