Message ID | 20220829212531.3184856-10-surenb@google.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show
Return-Path: <linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org> X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 4C8F5ECAAD2 for <linux-arm-kernel@archiver.kernel.org>; Mon, 29 Aug 2022 21:47:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:From:Subject:Message-ID: References:Mime-Version:In-Reply-To:Date:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=3fng3CEwhjgCwQhVW1zKVzj9Ex4cgXlsClWCDlLeAsk=; b=W+tD8ANP7PPUbxh2WH4tfzIhGR qE5VIdwP1lhpXnzTdQhg8Vrj8LmNOOOE+TDxpZFdg4I7qsPNaUgF1wPB8/HjAEY6zGJxf5rDokxEN pzA4gjSas5x/VhXhrdMstGqXnAJZhprmcvEtO1xITP2ys1gVqZxHqg9WIArRqLnNhMpgms4jSs0k2 85ervIFhXuw71axKuoV1Y+rjVcmRtl2NaxZTBnBtzgKKMK80hsePq4R54KizxyCsL1Jvvn3aM0oeL s7MdxNumbPI7uTqo50LPspwcpLA0M8kgXOmaEnG5qlqTaaVa7235eF9cvrXD+FEgr3jqGiP9MR51A 1iqS2YyA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oSma3-00CuSC-Hj; Mon, 29 Aug 2022 21:46:03 +0000 Received: from casper.infradead.org ([2001:8b0:10b:1236::1]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oSmXr-00CtVm-3p for linux-arm-kernel@bombadil.infradead.org; Mon, 29 Aug 2022 21:43:47 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Type:Cc:To:From:Subject: Message-ID:References:Mime-Version:In-Reply-To:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=tMRmbcwOZDIFaTPxLY27tBFqvxpOSXiDeb2XTcL9iTc=; b=qCBK3X51VPxq3Pc14w/oAQI8Y9 A6s5CNKKAy+a0cJEPoY33V+wcbtRZARGJCqHe9vt5wfVOdfoQFl72+cS0UF0Lzs0S7rYLcnNnYYB/ InjaG/n/9BVvrOBc0T/dqze9DkTmDUAPjDs68ROkEeBYi3HSpZ8NRMv+Vw+p364ffixE7EzM1njfA yw+oi6oMhW1Cs7BlGB71DPnDfiVef1zbn4eP4HshAsRNlqQKJ7V0Eam5/wVxvxLwl77C79gu45HkY TfL6rWbOcLtR2hwYvttptGvIyHRR77G4cpnS52HuaCFaT/r4a72rNcOuLujgkqYkCnUB/3LQaly/L zUGD8wqA==; Received: from mail-pl1-x64a.google.com ([2607:f8b0:4864:20::64a]) by casper.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oSmGb-003Prz-FP for linux-arm-kernel@lists.infradead.org; Mon, 29 Aug 2022 21:25:59 +0000 Received: by mail-pl1-x64a.google.com with SMTP id z14-20020a170903018e00b00174fff57d17so978592plg.14 for <linux-arm-kernel@lists.infradead.org>; Mon, 29 Aug 2022 14:25:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc; bh=tMRmbcwOZDIFaTPxLY27tBFqvxpOSXiDeb2XTcL9iTc=; b=c5Ge838GLG1Fn9WCiifxSW0yY2J286Z3nb7CHVsgQeKl819oavnaneDjs0pHM1pBgc 6/VXxA27srsSSYsH3q/5JQwqbG7gvhz/dxlqpfYYnChp/oSAOK1144eGZRxL5H4xfU4+ gXjPirwbsBHls6abdkbd/Ru5neoY+5POLJLE67tmQyRoTq3+UExyJwB4xZoCc8lFIPHT 1JLKkVoSr3hMYFs+x98zjjRcyw2xrS1rGfAXHEq+RyZfpGyhDpyGAbYsGbpBS3qHA7OY gUezPbUinXA9UrR8RhJyAbOsAhf2VqCoI/O3T8n1+HeqEuYCNoxrQ8z3jvR4TT/rnWyA atPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc; bh=tMRmbcwOZDIFaTPxLY27tBFqvxpOSXiDeb2XTcL9iTc=; b=TmDBLy1kgesTGFJopyo8N5YUa9Kvw5zWCnilXmprOgKLbtDW89djETo0CFbrLySNho ni2MW93k26/fwme970RxZZT9tvHzkmoJb+9WhfeLAdyy34ArRy3BYJj97ZW8Yzu4ChWK S2GhK2buNyc3nm9ooWogGGzDor3NBDCRmgxXEOheA/X+YObuWLrvC6FmyrmY5al6yuVr LqnY7sZYMdF4ZxFb16xN0yozJUXt8PRuaBVq8SsO+/0drrbKS2xqPsHs8d3XHmqomaPo gMa9yJFlqdtsh53rgAktf0wzb9nReT+VQ8nADGyvkZevZ6GmfSCzOQUFJo/9yywDcB/f 1fmA== X-Gm-Message-State: ACgBeo0oiapH6pmTrbDYK64ZR2hqBkOltfNmDXcZwzm2RxEVVilGo/3q OOJzEJBmKnFsMkTvZfDJrRbonpHovbk= X-Google-Smtp-Source: AA6agR6WFXWG6lBERn8fKgbng4pdY7+dFZ275Tti+4gL6MGpsob4z29fC0owAPSMM8vQ0mXhvHK4dQ+aJ1U= X-Received: from surenb-spec.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:3e30]) (user=surenb job=sendgmr) by 2002:a17:902:ab08:b0:173:320e:3316 with SMTP id ik8-20020a170902ab0800b00173320e3316mr17541232plb.38.1661808351535; Mon, 29 Aug 2022 14:25:51 -0700 (PDT) Date: Mon, 29 Aug 2022 21:25:12 +0000 In-Reply-To: <20220829212531.3184856-1-surenb@google.com> Mime-Version: 1.0 References: <20220829212531.3184856-1-surenb@google.com> X-Mailer: git-send-email 2.37.2.672.g94769d06f0-goog Message-ID: <20220829212531.3184856-10-surenb@google.com> Subject: [RFC PATCH 09/28] mm/mempolicy: mark VMA as locked when changing protection policy From: Suren Baghdasaryan <surenb@google.com> To: akpm@linux-foundation.org Cc: michel@lespinasse.org, jglisse@google.com, mhocko@suse.com, vbabka@suse.cz, hannes@cmpxchg.org, mgorman@techsingularity.net, dave@stgolabs.net, willy@infradead.org, liam.howlett@oracle.com, peterz@infradead.org, ldufour@linux.ibm.com, laurent.dufour@fr.ibm.com, paulmck@kernel.org, riel@surriel.com, luto@kernel.org, songliubraving@fb.com, peterx@redhat.com, david@redhat.com, dhowells@redhat.com, hughd@google.com, bigeasy@linutronix.de, kent.overstreet@linux.dev, rientjes@google.com, axelrasmussen@google.com, joelaf@google.com, minchan@google.com, surenb@google.com, kernel-team@android.com, linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org, linuxppc-dev@lists.ozlabs.org, x86@kernel.org, linux-kernel@vger.kernel.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220829_222557_537733_726894EA X-CRM114-Status: UNSURE ( 9.14 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: <linux-arm-kernel.lists.infradead.org> List-Unsubscribe: <http://lists.infradead.org/mailman/options/linux-arm-kernel>, <mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe> List-Archive: <http://lists.infradead.org/pipermail/linux-arm-kernel/> List-Post: <mailto:linux-arm-kernel@lists.infradead.org> List-Help: <mailto:linux-arm-kernel-request@lists.infradead.org?subject=help> List-Subscribe: <http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>, <mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" <linux-arm-kernel-bounces@lists.infradead.org> Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org |
Series |
per-VMA locks proposal
|
expand
|
diff --git a/mm/mempolicy.c b/mm/mempolicy.c index b73d3248d976..6be1e5c75556 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -383,8 +383,10 @@ void mpol_rebind_mm(struct mm_struct *mm, nodemask_t *new) struct vm_area_struct *vma; mmap_write_lock(mm); - for (vma = mm->mmap; vma; vma = vma->vm_next) + for (vma = mm->mmap; vma; vma = vma->vm_next) { + vma_mark_locked(vma); mpol_rebind_policy(vma->vm_policy, new); + } mmap_write_unlock(mm); } @@ -632,6 +634,7 @@ unsigned long change_prot_numa(struct vm_area_struct *vma, struct mmu_gather tlb; int nr_updated; + vma_mark_locked(vma); tlb_gather_mmu(&tlb, vma->vm_mm); nr_updated = change_protection(&tlb, vma, addr, end, PAGE_NONE, @@ -765,6 +768,7 @@ static int vma_replace_policy(struct vm_area_struct *vma, if (IS_ERR(new)) return PTR_ERR(new); + vma_mark_locked(vma); if (vma->vm_ops && vma->vm_ops->set_policy) { err = vma->vm_ops->set_policy(vma, new); if (err)
Protect VMA from concurrent page fault handler while performing VMA protection policy changes. Signed-off-by: Suren Baghdasaryan <surenb@google.com> --- mm/mempolicy.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)