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 Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id EF647C77B75 for ; Tue, 23 May 2023 01:00:27 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234960AbjEWBA0 (ORCPT ); Mon, 22 May 2023 21:00:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56680 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235382AbjEWA77 (ORCPT ); Mon, 22 May 2023 20:59:59 -0400 Received: from mail-yw1-x114a.google.com (mail-yw1-x114a.google.com [IPv6:2607:f8b0:4864:20::114a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1167C97 for ; Mon, 22 May 2023 17:57:41 -0700 (PDT) Received: by mail-yw1-x114a.google.com with SMTP id 00721157ae682-561ceb5b584so127125317b3.3 for ; Mon, 22 May 2023 17:57:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1684803415; x=1687395415; h=content-transfer-encoding:cc:to:from:subject:references :mime-version:message-id:in-reply-to:date:from:to:cc:subject:date :message-id:reply-to; bh=msTm3oYdeXIT0hSlyDwQQkvc5wY+Q8yhko13bmJatr8=; b=EEb/mgB4RnLcb7kYYtvFUbvbqTKW1n5ekyK5GTahb2QLNMsv0vbm4M+OLN/8orwPGd KYeEc+lXyPMjL+byzFGtBzfYQCrcM7CGq+sFUM9eAOQmqpjpFmiybg7qnGcOqqm1Tho3 rQZb7RFAPgRlw3B9v0H+YQlaZmWTuAOp8wjyPdbstgW/gpW6vsuW2lqttzo6L6DNc3Ic VCCfsQy8RshIp+PpI0yzAnZ//jTDj5u04beGOiFbkh1E3W9EUTT77f2mT7JZYWy7acL1 SgfK3TLqfz6pmdk/sNOcjpYNZBvRhqFftfny3nV9sqmvaYtJ36bxXktMqASPolWttd1J cjvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684803415; x=1687395415; h=content-transfer-encoding:cc:to:from:subject:references :mime-version:message-id:in-reply-to:date:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=msTm3oYdeXIT0hSlyDwQQkvc5wY+Q8yhko13bmJatr8=; b=L24UBEPqkATL2Ucl38inuhzFzlByb9Y84+qZmYy0pZKQluKbqpcHIlVXRtrUd5/xQK 9G5aKuPl1Sfo2UCk6ItrRG+8samzFeLfMpuQ7iYgXka7ADNwzTaQO5njzM109BiA9f8y rRnKTfv/ozi6XC5rZvzmCHGA8dDoIPofFDNF+GKn/7nzNp3I6G3ENSeku3q3yOWnbKH1 Ok1RJlRvRVbJcd7aXamY2URULHsPp6b0IGL+D48HKnnTq5Eyyl3WsCvdjgb7MomHFXIk TRQ+1Nx9tmS8sHw7/4vY1g6ExqvnnhbazwRQBHkGoX8g+L7weYonHDjAiMs/OZvYjA7D +Dbg== X-Gm-Message-State: AC+VfDz3pQPrco+pOudE5qWAl2oiiCbKPrzQGA1Q/sPjx0NSPHsxkJw+ kyCcFXIrewOww72B9nMBKhgDgfo= X-Google-Smtp-Source: ACHHUZ6kHjMTCHPdYe9Jo2a981mU1PnCLbxJJT05Im440Cs+gDDAq2rqaJTbIgDZ3JZeNb3/fmzcm8U= X-Received: from pcc-desktop.svl.corp.google.com ([2620:15c:2d3:205:3d33:90fe:6f02:afdd]) (user=pcc job=sendgmr) by 2002:a25:10d4:0:b0:ba8:181b:2558 with SMTP id 203-20020a2510d4000000b00ba8181b2558mr7332911ybq.4.1684802597761; Mon, 22 May 2023 17:43:17 -0700 (PDT) Date: Mon, 22 May 2023 17:43:08 -0700 In-Reply-To: <20230523004312.1807357-1-pcc@google.com> Message-Id: <20230523004312.1807357-2-pcc@google.com> Mime-Version: 1.0 References: <20230523004312.1807357-1-pcc@google.com> X-Mailer: git-send-email 2.40.1.698.g37aff9b760-goog Subject: [PATCH v4 1/3] mm: Call arch_swap_restore() from do_swap_page() From: Peter Collingbourne To: Catalin Marinas Cc: Peter Collingbourne , "=?UTF-8?q?Qun-wei=20Lin=20=28=E6=9E=97=E7=BE=A4=E5=B4=B4=29?=" , linux-arm-kernel@lists.infradead.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, "surenb@google.com" , "david@redhat.com" , "=?UTF-8?q?Chinwen=20Chang=20=28=E5=BC=B5=E9=8C=A6=E6=96=87=29?=" , "kasan-dev@googlegroups.com" , "=?UTF-8?q?Kuan-Ying=20Lee=20=28=E6=9D=8E=E5=86=A0=E7=A9=8E=29?=" , "=?UTF-8?q?Casper=20Li=20=28=E6=9D=8E=E4=B8=AD=E6=A6=AE=29?=" , "gregkh@linuxfoundation.org" , vincenzo.frascino@arm.com, Alexandru Elisei , will@kernel.org, eugenis@google.com, Steven Price , stable@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org Commit c145e0b47c77 ("mm: streamline COW logic in do_swap_page()") moved the call to swap_free() before the call to set_pte_at(), which meant that the MTE tags could end up being freed before set_pte_at() had a chance to restore them. Fix it by adding a call to the arch_swap_restore() hook before the call to swap_free(). Signed-off-by: Peter Collingbourne Link: https://linux-review.googlesource.com/id/I6470efa669e8bd2f841049b8c61= 020c510678965 Cc: # 6.1 Fixes: c145e0b47c77 ("mm: streamline COW logic in do_swap_page()") Reported-by: Qun-wei Lin (=E6=9E=97=E7=BE=A4=E5=B4=B4) Closes: https://lore.kernel.org/all/5050805753ac469e8d727c797c2218a9d780d43= 4.camel@mediatek.com/ Acked-by: David Hildenbrand Acked-by: "Huang, Ying" Reviewed-by: Steven Price Acked-by: Catalin Marinas --- v2: - Call arch_swap_restore() directly instead of via arch_do_swap_page() mm/memory.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/mm/memory.c b/mm/memory.c index f69fbc251198..fc25764016b3 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -3932,6 +3932,13 @@ vm_fault_t do_swap_page(struct vm_fault *vmf) } } =20 + /* + * Some architectures may have to restore extra metadata to the page + * when reading from swap. This metadata may be indexed by swap entry + * so this must be called before swap_free(). + */ + arch_swap_restore(entry, folio); + /* * Remove the swap entry and conditionally try to free up the swapcache. * We're already holding a reference on the page but haven't mapped it --=20 2.40.1.698.g37aff9b760-goog 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 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 F0DFAC77B73 for ; Tue, 23 May 2023 00:44:19 +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:References: Mime-Version:Message-Id: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=rFSJPhWvkatH0kAMHxefMg5MzDLm385q6joqSRwPBzc=; b=epaO1UpZsEgSN3yvVsbUyBWti9 j5/0tAHohFCg6SBD5Nu0fvPREK3G1o8WAhl6Qe5bje7NWLyrlW/SHwLyHhBoYWaYxn6XuwLxAYyTu MRuDb6APNLUtTjwJFMwA72L/x1NMIZmlgGsiqTXORmNxdMlv+pdGiGBNjgfbtt0HF8dtIBj7ecwn/ xKgsa9qO7C5aZZlZYzHWy/+03kUrWUK1Wvgb+Y9URQ5FT9D3EzeuRkTz3u1GqF4yaQ/Pn5pG0CMT5 AQzLakwpRREVrkGEfeNu7cLpH8yc98UJ3CW8vEBVHfJuTHq6zXgLkzN2PV1Gopj3xTZaUwVqg19n/ tF53cCiw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1q1G7c-008VCE-1t; Tue, 23 May 2023 00:43:28 +0000 Received: from mail-yb1-xb49.google.com ([2607:f8b0:4864:20::b49]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1q1G7V-008V89-1q for linux-arm-kernel@lists.infradead.org; Tue, 23 May 2023 00:43:22 +0000 Received: by mail-yb1-xb49.google.com with SMTP id 3f1490d57ef6-babb7aaa605so5322207276.3 for ; Mon, 22 May 2023 17:43:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1684802597; x=1687394597; h=content-transfer-encoding:cc:to:from:subject:references :mime-version:message-id:in-reply-to:date:from:to:cc:subject:date :message-id:reply-to; bh=msTm3oYdeXIT0hSlyDwQQkvc5wY+Q8yhko13bmJatr8=; b=GVCKc+6rFVLitBZRgjiG8Xp6MHuRDVhZtsHNX/VKvhjNUXI2g+oF9FkWUEYw2KzSxD jp4IhTdFiglLXHuJvOecRUNblTjQqoij5ls5a85sMq/WccA2cWXYiEuTGZE2QPc25z1P I8fzTiWeaDqvG0LuwqBGkTuunNP3dF5yHaQZQWU03AGRfLddIWVSlV0GDW2IfHKUwGIa kJWuZ1I6IkldXrYkOwPS0n6CmraBvOXwhnVIajQXxhcVGPXShTLQ3KiXtaS4Kg9Pbdet qc17JRlFojhHHmnUA1aiDUv9PQDzUO/0c5Sa9DD8d5/h5mOmX7eaqslAsS0IaFcRV2+j ohtg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684802597; x=1687394597; h=content-transfer-encoding:cc:to:from:subject:references :mime-version:message-id:in-reply-to:date:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=msTm3oYdeXIT0hSlyDwQQkvc5wY+Q8yhko13bmJatr8=; b=lhjcZZ+usCCjvhKcM8inHL7GsotIDtC/Tw3dSVnghhTIXYOoobNtvdO2cOprLUWila osdooEmmXjs5P3pBlxqyfuBco7zxCS1LbvyCy8Em3Ov11OyEDbTFUGLej+57Bl8N0Rlk Ubsy7rWSKeDDoG3Ll/jLE7jHC/7rT3maHqM5ie5lC+XB/Mm9PDJqJE0WwnK6qFEIXX56 r5uwCR+39+rLYsYjqXA4IYixSxofXPMpWqpqaA2Q6hjii61WkcorFzlrJdcWvHo1P3Jp JdpSar7HMXTEwfYZ0j6/KYIWG+YNOlLTLD3eTJ9aonCfQ6VGnnkijxwzGXuRRSZwPp2i 9apA== X-Gm-Message-State: AC+VfDzcyNKP3FuFf7kGVEA4ddeB1v6gw2mOuYBsEDlDBpMwKpQyoLMo PyrSA4W5zTbTfnNV4TsDJTFnjeg= X-Google-Smtp-Source: ACHHUZ6kHjMTCHPdYe9Jo2a981mU1PnCLbxJJT05Im440Cs+gDDAq2rqaJTbIgDZ3JZeNb3/fmzcm8U= X-Received: from pcc-desktop.svl.corp.google.com ([2620:15c:2d3:205:3d33:90fe:6f02:afdd]) (user=pcc job=sendgmr) by 2002:a25:10d4:0:b0:ba8:181b:2558 with SMTP id 203-20020a2510d4000000b00ba8181b2558mr7332911ybq.4.1684802597761; Mon, 22 May 2023 17:43:17 -0700 (PDT) Date: Mon, 22 May 2023 17:43:08 -0700 In-Reply-To: <20230523004312.1807357-1-pcc@google.com> Message-Id: <20230523004312.1807357-2-pcc@google.com> Mime-Version: 1.0 References: <20230523004312.1807357-1-pcc@google.com> X-Mailer: git-send-email 2.40.1.698.g37aff9b760-goog Subject: [PATCH v4 1/3] mm: Call arch_swap_restore() from do_swap_page() From: Peter Collingbourne To: Catalin Marinas Cc: Peter Collingbourne , "=?UTF-8?q?Qun-wei=20Lin=20=28=E6=9E=97=E7=BE=A4=E5=B4=B4=29?=" , linux-arm-kernel@lists.infradead.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, "surenb@google.com" , "david@redhat.com" , "=?UTF-8?q?Chinwen=20Chang=20=28=E5=BC=B5=E9=8C=A6=E6=96=87=29?=" , "kasan-dev@googlegroups.com" , "=?UTF-8?q?Kuan-Ying=20Lee=20=28=E6=9D=8E=E5=86=A0=E7=A9=8E=29?=" , "=?UTF-8?q?Casper=20Li=20=28=E6=9D=8E=E4=B8=AD=E6=A6=AE=29?=" , "gregkh@linuxfoundation.org" , vincenzo.frascino@arm.com, Alexandru Elisei , will@kernel.org, eugenis@google.com, Steven Price , stable@vger.kernel.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230522_174321_609351_517494CE X-CRM114-Status: GOOD ( 11.24 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Q29tbWl0IGMxNDVlMGI0N2M3NyAoIm1tOiBzdHJlYW1saW5lIENPVyBsb2dpYyBpbiBkb19zd2Fw X3BhZ2UoKSIpIG1vdmVkCnRoZSBjYWxsIHRvIHN3YXBfZnJlZSgpIGJlZm9yZSB0aGUgY2FsbCB0 byBzZXRfcHRlX2F0KCksIHdoaWNoIG1lYW50IHRoYXQKdGhlIE1URSB0YWdzIGNvdWxkIGVuZCB1 cCBiZWluZyBmcmVlZCBiZWZvcmUgc2V0X3B0ZV9hdCgpIGhhZCBhIGNoYW5jZQp0byByZXN0b3Jl IHRoZW0uIEZpeCBpdCBieSBhZGRpbmcgYSBjYWxsIHRvIHRoZSBhcmNoX3N3YXBfcmVzdG9yZSgp IGhvb2sKYmVmb3JlIHRoZSBjYWxsIHRvIHN3YXBfZnJlZSgpLgoKU2lnbmVkLW9mZi1ieTogUGV0 ZXIgQ29sbGluZ2JvdXJuZSA8cGNjQGdvb2dsZS5jb20+Ckxpbms6IGh0dHBzOi8vbGludXgtcmV2 aWV3Lmdvb2dsZXNvdXJjZS5jb20vaWQvSTY0NzBlZmE2NjllOGJkMmY4NDEwNDliOGM2MTAyMGM1 MTA2Nzg5NjUKQ2M6IDxzdGFibGVAdmdlci5rZXJuZWwub3JnPiAjIDYuMQpGaXhlczogYzE0NWUw YjQ3Yzc3ICgibW06IHN0cmVhbWxpbmUgQ09XIGxvZ2ljIGluIGRvX3N3YXBfcGFnZSgpIikKUmVw b3J0ZWQtYnk6IFF1bi13ZWkgTGluICjmnpfnvqTltLQpIDxRdW4td2VpLkxpbkBtZWRpYXRlay5j b20+CkNsb3NlczogaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvYWxsLzUwNTA4MDU3NTNhYzQ2OWU4 ZDcyN2M3OTdjMjIxOGE5ZDc4MGQ0MzQuY2FtZWxAbWVkaWF0ZWsuY29tLwpBY2tlZC1ieTogRGF2 aWQgSGlsZGVuYnJhbmQgPGRhdmlkQHJlZGhhdC5jb20+CkFja2VkLWJ5OiAiSHVhbmcsIFlpbmci IDx5aW5nLmh1YW5nQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IFN0ZXZlbiBQcmljZSA8c3RldmVu LnByaWNlQGFybS5jb20+CkFja2VkLWJ5OiBDYXRhbGluIE1hcmluYXMgPGNhdGFsaW4ubWFyaW5h c0Bhcm0uY29tPgotLS0KdjI6Ci0gQ2FsbCBhcmNoX3N3YXBfcmVzdG9yZSgpIGRpcmVjdGx5IGlu c3RlYWQgb2YgdmlhIGFyY2hfZG9fc3dhcF9wYWdlKCkKCiBtbS9tZW1vcnkuYyB8IDcgKysrKysr KwogMSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL21tL21lbW9y eS5jIGIvbW0vbWVtb3J5LmMKaW5kZXggZjY5ZmJjMjUxMTk4Li5mYzI1NzY0MDE2YjMgMTAwNjQ0 Ci0tLSBhL21tL21lbW9yeS5jCisrKyBiL21tL21lbW9yeS5jCkBAIC0zOTMyLDYgKzM5MzIsMTMg QEAgdm1fZmF1bHRfdCBkb19zd2FwX3BhZ2Uoc3RydWN0IHZtX2ZhdWx0ICp2bWYpCiAJCX0KIAl9 CiAKKwkvKgorCSAqIFNvbWUgYXJjaGl0ZWN0dXJlcyBtYXkgaGF2ZSB0byByZXN0b3JlIGV4dHJh IG1ldGFkYXRhIHRvIHRoZSBwYWdlCisJICogd2hlbiByZWFkaW5nIGZyb20gc3dhcC4gVGhpcyBt ZXRhZGF0YSBtYXkgYmUgaW5kZXhlZCBieSBzd2FwIGVudHJ5CisJICogc28gdGhpcyBtdXN0IGJl IGNhbGxlZCBiZWZvcmUgc3dhcF9mcmVlKCkuCisJICovCisJYXJjaF9zd2FwX3Jlc3RvcmUoZW50 cnksIGZvbGlvKTsKKwogCS8qCiAJICogUmVtb3ZlIHRoZSBzd2FwIGVudHJ5IGFuZCBjb25kaXRp b25hbGx5IHRyeSB0byBmcmVlIHVwIHRoZSBzd2FwY2FjaGUuCiAJICogV2UncmUgYWxyZWFkeSBo b2xkaW5nIGEgcmVmZXJlbmNlIG9uIHRoZSBwYWdlIGJ1dCBoYXZlbid0IG1hcHBlZCBpdAotLSAK Mi40MC4xLjY5OC5nMzdhZmY5Yjc2MC1nb29nCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgt YXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3Jn L21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=