Message ID | 20220829212531.3184856-8-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 5D037ECAAD4 for <linux-arm-kernel@archiver.kernel.org>; Mon, 29 Aug 2022 22:00:59 +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=pBGwTwKIO/IkR5b/NLaGSuB7aYr+KQ5QqWGO8Xny1L0=; b=TMUenfntARkIjzR9a0sck9jkeL sqzyyZq/1fuVw/ch8p0LOrAsVFpt/VBxZhIOr9JtqPI88AAYMDoshb7TjQzKqMQ8P0GJ+CxBwrhy/ MVC48o9I1Hxi3BWsIHxXi4qcvS1RZ2HX7Cl8S8GM7e/D4g6ZyCVpUfVcYxE/9kmgGN599+Uj+Fids 2aAam84/NAB8ScOThsy0N2nQO7GHUFZaZFPNkZsw4qpknKWwvaXRIE8yYL4gl7RRgUJzyIJaFhHGs p4KET6QMEvhHEyupBHTdHtmGEPKIUbdALlKna/nHzO68C6q3ZpJzJTpkG7TAWjHnGZnIjk/lv6Y7q KtAZF/DA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oSmnR-00CyDK-HX; Mon, 29 Aug 2022 21:59:53 +0000 Received: from desiato.infradead.org ([2001:8b0:10b:1:d65d:64ff:fe57:4e05]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oSmmU-00CxtJ-Mr for linux-arm-kernel@bombadil.infradead.org; Mon, 29 Aug 2022 21:58:54 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; 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=knlkft8CSs4ctk+Wf5EGoFcT9IapAOL4+B6Ai/+T1Ew=; b=YorHznBi2Y1lOp3VsItYwavR2F +E4L73N+CennuH0f2+QvHRtit3+X+sbhn+Yow5zkkElM9fAiKH5+zlldea8g0VrhEJIdllOZwyEBQ d5UZiZPMCwOwjfWRLEdlgzpUQKwpMiHLLkpZc2oBrE+xfz2KjW1M6epGXeiXVhYPJVL2mkoYDv8BF fwgE/ep5k+BFWAP2LQKyZYHYQ9OvCpj1wTukRng7y5dB1/2D1yPB7PCuPVFZG1/0PgcI1nRq3UtKN QzzDQ+g7Eei1NOOb5U8XN9apnoEZLheDlL3h2pZV9HPx4SDM47iYcNFp+B0B+TPBjKHTIdZUk2ea/ 0d0NzJSA==; Received: from mail-pl1-x649.google.com ([2607:f8b0:4864:20::649]) by desiato.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oSmGV-007bad-FK for linux-arm-kernel@lists.infradead.org; Mon, 29 Aug 2022 21:25:53 +0000 Received: by mail-pl1-x649.google.com with SMTP id t13-20020a170902e84d00b00174b03be629so3066065plg.16 for <linux-arm-kernel@lists.infradead.org>; Mon, 29 Aug 2022 14:25:49 -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=knlkft8CSs4ctk+Wf5EGoFcT9IapAOL4+B6Ai/+T1Ew=; b=P37RAGhPa0fj1eu5oWQ75AvAaLtugohQsYRWKzKsYPy82nTGbYS2huH/UiZNVvoE/s 88nyZ5hMCHsleX96EzwxSRzBq/7CUKc/bHbJ31Ts1GLCvmDOU9CmcQD2WQXDTk1c+h7j 3oIUBNbln4Bxomo0AKLbatKVQNVrzgPz+A4aQoGdDS5LbHfkkFmAcE6pV6uk/ymeBjbJ 1nc4oAeG1urj8/jUSameTDeH8ziLxBTZVHP9LQuagPlJAxjluMekWoC6NIdC1YJBWEbt nn2+QyaYYhDKNwmBnD8p146GgfwAnKteHIAkGMz5qwPGMxUQt1Cd0qMSAU4DAqNB0mVB aVgw== 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=knlkft8CSs4ctk+Wf5EGoFcT9IapAOL4+B6Ai/+T1Ew=; b=sCX4oBUaEZfCqpRDDBH2r5R2U4ySBiZuNLI/N2VfmyzRAOQR8Y+qHEnfNaYH/CWgWc zwqLy3BELt2slfwAIRrwRCux05Ixpyty4G6zjlkXn5KVqsmt14mawPWsKP7QGtQCyy0u SA50WpfuGQbu8DQzEZZZk/U8FiYIbBFA8aQJwElCd8epF6Ui3tp3r6A/yXAGuoxrUBTN RpzkTEvWdpiJavQc0EufpE2G2juk9lZRDwCsnCxjYgUzI1vs29HQivxBuo637Z3HixTs Cre+XvCyOvQ714PHqoLsDZ81PnBDFQUkm8KoZXTTkUh7mEPbgOZCR8819S5WqRpuel/8 rwqw== X-Gm-Message-State: ACgBeo2Kr6x9ExIexf31ZvNiGUYAHEftoLI7ltV/vYNt8Kvi9XApJCUE q1Ub4WpUwJIkCfVdT8seVhdvxiAshAc= X-Google-Smtp-Source: AA6agR7ucJtBhSAnuB+PqV9qzppZFKeEkxBUzS6um9UDd2r/XYBs5DAVo1iLh4VL9E0CKz9mlSvmLd+h5RQ= X-Received: from surenb-spec.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:3e30]) (user=surenb job=sendgmr) by 2002:aa7:8d08:0:b0:538:105a:eb6a with SMTP id j8-20020aa78d08000000b00538105aeb6amr10112054pfe.42.1661808348114; Mon, 29 Aug 2022 14:25:48 -0700 (PDT) Date: Mon, 29 Aug 2022 21:25:10 +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-8-surenb@google.com> Subject: [RFC PATCH 07/28] kernel/fork: mark VMAs as locked before copying pages during fork 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_222551_689063_C34224DB X-CRM114-Status: GOOD ( 10.62 ) 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/kernel/fork.c b/kernel/fork.c index bfab31ecd11e..1872ad549fed 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -709,8 +709,10 @@ static __latent_entropy int dup_mmap(struct mm_struct *mm, rb_parent = &tmp->vm_rb; mm->map_count++; - if (!(tmp->vm_flags & VM_WIPEONFORK)) + if (!(tmp->vm_flags & VM_WIPEONFORK)) { + vma_mark_locked(mpnt); retval = copy_page_range(tmp, mpnt); + } if (tmp->vm_ops && tmp->vm_ops->open) tmp->vm_ops->open(tmp);
Protect VMAs from concurrent page fault handler while performing copy_page_range for VMAs having VM_WIPEONFORK flag set. Signed-off-by: Suren Baghdasaryan <surenb@google.com> --- kernel/fork.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)