From patchwork Mon Jan 25 19:19:11 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pasha Tatashin X-Patchwork-Id: 12044291 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=-17.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT 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 A0297C433DB for ; Mon, 25 Jan 2021 20:31:55 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 58F92216FD for ; Mon, 25 Jan 2021 20:31:55 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 58F92216FD Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=soleen.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:List-Subscribe:List-Help:List-Post:List-Archive:List-Unsubscribe :List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:To:From: Reply-To:Cc:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=4SQ9oG17TDLioUtBxbC4MIm0ohmABfP3NDkpMCkutlU=; b=AGpBtq+cARE5pfHR2Pk8tnFxKo pCE7HVbb7TDz79Lhls2z5q6F5yb7DNSMEYSSGgeOGTddNBXCljV2WqNhIygW3Q8L6xycmHZZPvjNI NJGdwy1YKj2A+Hlv5K6vuuXWW+v8sD18DM3UtQkdiUKkNAABpQayWXkBBnC6v2oGMEXDYnVjANB4h w/z/3/rZ/GMjmoSPaJ05E/2CxZxrCd6hkgiVkcuUsKbSnf0AXf3kZdvZFUZ2hfX18DfFg6T/HFvAJ d2s3HatVm1LPf4BLmnHkGU3nFPsO+D8gwFWoOd1j0KUbVEYgZHyhZ/O1aarefxl7w3luQbAcqTOm3 TdPlClLw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1l48Vj-0003RK-R2; Mon, 25 Jan 2021 20:30:55 +0000 Received: from mail-qt1-x82a.google.com ([2607:f8b0:4864:20::82a]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1l47Oi-00077i-46 for linux-arm-kernel@lists.infradead.org; Mon, 25 Jan 2021 19:19:46 +0000 Received: by mail-qt1-x82a.google.com with SMTP id e17so10529122qto.3 for ; Mon, 25 Jan 2021 11:19:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=soleen.com; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=3FwrG1DRKa930mcqv1CQX/Ow19T+ppBoJGHaLYA3Zn4=; b=OMM+n/NgLxxolTPSpQfFupxi8pL7prIM8KcL0yuUt6nWfKRTlR6APYpr/V8F9WNvA1 ikIhnojbMioMSri7RLzroDZGFYn/E6gh220XP8IJyVS3exiStf/6gCaet1KfKtTGtzSB hUwZY6sdDa4bLX25PetOw90C87Q6MClcrvHBbWn37ai8bBgV5A9XsgIe+309KgWBm0o4 PM5Hgbdxd/Z4Wf3Z9Uy9rmMFm46l1p1ggWGl3Glxu55yQPOxsT+XaTwTkEaSpvjMbD6M 6rT7T58457HNNABrDb3FqPJjaoGnar+ESiEAa6nYAAfBmFI+ipXzsBU1dI23SbYeBsye z4Gw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=3FwrG1DRKa930mcqv1CQX/Ow19T+ppBoJGHaLYA3Zn4=; b=Ey7gTsuszfd6FG+zff+qMt9nmjC5t/2vr8QVOspyB0NCptScIwQITfuxYibD1AJeGs FC0x6JG77aXIfs09A9g+2jN7GXEuk7ynrM9S2WIG7C+ESWqogU+zuHErVjT4hHW43EF0 OQLpKCZN5GUsUvWSw1WCY8veGLwC4e/ayBTvNTWVsnp922+Ngixb2cFpFkr1fkZRXF97 0EXg4T+lpfLNh9n1nVj/bCx1EsIMmLSdbFq68uu9rhlR7J0RN8+RfyG/WB2spwgROppM RpxaUsw663+e7tjEWZxf0GtClaxgVgQIzgtnwBdx/gRBWTNY8k++Nyj9T28N2P0n0r0o bIsw== X-Gm-Message-State: AOAM53255ESd3yh+EUK3b1l6DZVuOXocGbQ/k54Oju2HtPmkBclxkkQl n2fCvhyNC4ERnJJaACwAU1/OVw== X-Google-Smtp-Source: ABdhPJzYpijMw9x6eiYnJkfIhvZXHqaaGkTUev606A5PQKAYeMNfq2YM+YhFDIUaCji9oVYPnb8lLA== X-Received: by 2002:ac8:3571:: with SMTP id z46mr2020689qtb.83.1611602374721; Mon, 25 Jan 2021 11:19:34 -0800 (PST) Received: from localhost.localdomain (c-73-69-118-222.hsd1.nh.comcast.net. [73.69.118.222]) by smtp.gmail.com with ESMTPSA id s6sm9047638qtx.63.2021.01.25.11.19.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 25 Jan 2021 11:19:34 -0800 (PST) From: Pavel Tatashin To: pasha.tatashin@soleen.com, jmorris@namei.org, sashal@kernel.org, ebiederm@xmission.com, kexec@lists.infradead.org, linux-kernel@vger.kernel.org, corbet@lwn.net, catalin.marinas@arm.com, will@kernel.org, linux-arm-kernel@lists.infradead.org, maz@kernel.org, james.morse@arm.com, vladimir.murzin@arm.com, matthias.bgg@gmail.com, linux-mm@kvack.org, mark.rutland@arm.com, steve.capper@arm.com, rfontana@redhat.com, tglx@linutronix.de, selindag@gmail.com, tyhicks@linux.microsoft.com Subject: [PATCH v10 06/18] arm64: trans_pgd: pass NULL instead of init_mm to *_populate functions Date: Mon, 25 Jan 2021 14:19:11 -0500 Message-Id: <20210125191923.1060122-7-pasha.tatashin@soleen.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210125191923.1060122-1-pasha.tatashin@soleen.com> References: <20210125191923.1060122-1-pasha.tatashin@soleen.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210125_141936_912554_F875D46A X-CRM114-Status: GOOD ( 11.00 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org trans_pgd_* should be independent from mm context because the tables that are created by this code are used when there are no mm context around, as it is between kernels. Simply replace mm_init's with NULL. Signed-off-by: Pavel Tatashin Acked-by: James Morse --- arch/arm64/mm/trans_pgd.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/arch/arm64/mm/trans_pgd.c b/arch/arm64/mm/trans_pgd.c index 47b6b7029907..ded8e2ba0308 100644 --- a/arch/arm64/mm/trans_pgd.c +++ b/arch/arm64/mm/trans_pgd.c @@ -67,7 +67,7 @@ static int copy_pte(struct trans_pgd_info *info, pmd_t *dst_pmdp, dst_ptep = trans_alloc(info); if (!dst_ptep) return -ENOMEM; - pmd_populate_kernel(&init_mm, dst_pmdp, dst_ptep); + pmd_populate_kernel(NULL, dst_pmdp, dst_ptep); dst_ptep = pte_offset_kernel(dst_pmdp, start); src_ptep = pte_offset_kernel(src_pmdp, start); @@ -90,7 +90,7 @@ static int copy_pmd(struct trans_pgd_info *info, pud_t *dst_pudp, dst_pmdp = trans_alloc(info); if (!dst_pmdp) return -ENOMEM; - pud_populate(&init_mm, dst_pudp, dst_pmdp); + pud_populate(NULL, dst_pudp, dst_pmdp); } dst_pmdp = pmd_offset(dst_pudp, start); @@ -126,7 +126,7 @@ static int copy_pud(struct trans_pgd_info *info, p4d_t *dst_p4dp, dst_pudp = trans_alloc(info); if (!dst_pudp) return -ENOMEM; - p4d_populate(&init_mm, dst_p4dp, dst_pudp); + p4d_populate(NULL, dst_p4dp, dst_pudp); } dst_pudp = pud_offset(dst_p4dp, start); @@ -241,7 +241,7 @@ int trans_pgd_map_page(struct trans_pgd_info *info, pgd_t *trans_pgd, p4dp = trans_alloc(info); if (!pgdp) return -ENOMEM; - pgd_populate(&init_mm, pgdp, p4dp); + pgd_populate(NULL, pgdp, p4dp); } p4dp = p4d_offset(pgdp, dst_addr); @@ -249,7 +249,7 @@ int trans_pgd_map_page(struct trans_pgd_info *info, pgd_t *trans_pgd, pudp = trans_alloc(info); if (!pudp) return -ENOMEM; - p4d_populate(&init_mm, p4dp, pudp); + p4d_populate(NULL, p4dp, pudp); } pudp = pud_offset(p4dp, dst_addr); @@ -257,7 +257,7 @@ int trans_pgd_map_page(struct trans_pgd_info *info, pgd_t *trans_pgd, pmdp = trans_alloc(info); if (!pmdp) return -ENOMEM; - pud_populate(&init_mm, pudp, pmdp); + pud_populate(NULL, pudp, pmdp); } pmdp = pmd_offset(pudp, dst_addr); @@ -265,7 +265,7 @@ int trans_pgd_map_page(struct trans_pgd_info *info, pgd_t *trans_pgd, ptep = trans_alloc(info); if (!ptep) return -ENOMEM; - pmd_populate_kernel(&init_mm, pmdp, ptep); + pmd_populate_kernel(NULL, pmdp, ptep); } ptep = pte_offset_kernel(pmdp, dst_addr);