All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Collingbourne <pcc@google.com>
To: Catalin Marinas <catalin.marinas@arm.com>
Cc: "Peter Collingbourne" <pcc@google.com>,
	"Qun-wei Lin (林群崴)" <Qun-wei.Lin@mediatek.com>,
	linux-arm-kernel@lists.infradead.org, linux-mm@kvack.org,
	linux-kernel@vger.kernel.org,
	"surenb@google.com" <surenb@google.com>,
	"david@redhat.com" <david@redhat.com>,
	"Chinwen Chang (張錦文)" <chinwen.chang@mediatek.com>,
	"kasan-dev@googlegroups.com" <kasan-dev@googlegroups.com>,
	"Kuan-Ying Lee (李冠穎)" <Kuan-Ying.Lee@mediatek.com>,
	"Casper Li (李中榮)" <casper.li@mediatek.com>,
	"gregkh@linuxfoundation.org" <gregkh@linuxfoundation.org>,
	vincenzo.frascino@arm.com,
	"Alexandru Elisei" <alexandru.elisei@arm.com>,
	will@kernel.org, eugenis@google.com,
	"Steven Price" <steven.price@arm.com>
Subject: [PATCH v3 0/3] mm: Fix bug affecting swapping in MTE tagged pages
Date: Tue, 16 May 2023 19:21:10 -0700	[thread overview]
Message-ID: <20230517022115.3033604-1-pcc@google.com> (raw)

This patch series reworks the logic that handles swapping in page
metadata to fix a reported bug [1] where metadata can sometimes not
be swapped in correctly after commit c145e0b47c77 ("mm: streamline COW
logic in do_swap_page()").

- Patch 1 fixes the bug itself, but still requires architectures
  to restore metadata in both arch_swap_restore() and set_pte_at().

- Patch 2 makes it so that architectures only need to restore metadata
  in arch_swap_restore().

- Patch 3 changes arm64 to remove support for restoring metadata
  in set_pte_at().

[1] https://lore.kernel.org/all/5050805753ac469e8d727c797c2218a9d780d434.camel@mediatek.com/

v3:
- Added patch to call arch_swap_restore() from unuse_pte()
- Rebased onto arm64/for-next/fixes

v2:
- Call arch_swap_restore() directly instead of via arch_do_swap_page()

Peter Collingbourne (3):
  mm: Call arch_swap_restore() from do_swap_page()
  mm: Call arch_swap_restore() from unuse_pte()
  arm64: mte: Simplify swap tag restoration logic

 arch/arm64/include/asm/mte.h     |  4 ++--
 arch/arm64/include/asm/pgtable.h | 14 ++----------
 arch/arm64/kernel/mte.c          | 37 ++++++--------------------------
 arch/arm64/mm/mteswap.c          |  7 +++---
 mm/memory.c                      |  7 ++++++
 mm/swapfile.c                    |  7 ++++++
 6 files changed, 28 insertions(+), 48 deletions(-)

-- 
2.40.1.606.ga4b1b128d6-goog


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Peter Collingbourne <pcc@google.com>
To: Catalin Marinas <catalin.marinas@arm.com>
Cc: "Peter Collingbourne" <pcc@google.com>,
	"Qun-wei Lin (林群崴)" <Qun-wei.Lin@mediatek.com>,
	linux-arm-kernel@lists.infradead.org, linux-mm@kvack.org,
	linux-kernel@vger.kernel.org,
	"surenb@google.com" <surenb@google.com>,
	"david@redhat.com" <david@redhat.com>,
	"Chinwen Chang (張錦文)" <chinwen.chang@mediatek.com>,
	"kasan-dev@googlegroups.com" <kasan-dev@googlegroups.com>,
	"Kuan-Ying Lee (李冠穎)" <Kuan-Ying.Lee@mediatek.com>,
	"Casper Li (李中榮)" <casper.li@mediatek.com>,
	"gregkh@linuxfoundation.org" <gregkh@linuxfoundation.org>,
	vincenzo.frascino@arm.com,
	"Alexandru Elisei" <alexandru.elisei@arm.com>,
	will@kernel.org, eugenis@google.com,
	"Steven Price" <steven.price@arm.com>
Subject: [PATCH v3 0/3] mm: Fix bug affecting swapping in MTE tagged pages
Date: Tue, 16 May 2023 19:21:10 -0700	[thread overview]
Message-ID: <20230517022115.3033604-1-pcc@google.com> (raw)

This patch series reworks the logic that handles swapping in page
metadata to fix a reported bug [1] where metadata can sometimes not
be swapped in correctly after commit c145e0b47c77 ("mm: streamline COW
logic in do_swap_page()").

- Patch 1 fixes the bug itself, but still requires architectures
  to restore metadata in both arch_swap_restore() and set_pte_at().

- Patch 2 makes it so that architectures only need to restore metadata
  in arch_swap_restore().

- Patch 3 changes arm64 to remove support for restoring metadata
  in set_pte_at().

[1] https://lore.kernel.org/all/5050805753ac469e8d727c797c2218a9d780d434.camel@mediatek.com/

v3:
- Added patch to call arch_swap_restore() from unuse_pte()
- Rebased onto arm64/for-next/fixes

v2:
- Call arch_swap_restore() directly instead of via arch_do_swap_page()

Peter Collingbourne (3):
  mm: Call arch_swap_restore() from do_swap_page()
  mm: Call arch_swap_restore() from unuse_pte()
  arm64: mte: Simplify swap tag restoration logic

 arch/arm64/include/asm/mte.h     |  4 ++--
 arch/arm64/include/asm/pgtable.h | 14 ++----------
 arch/arm64/kernel/mte.c          | 37 ++++++--------------------------
 arch/arm64/mm/mteswap.c          |  7 +++---
 mm/memory.c                      |  7 ++++++
 mm/swapfile.c                    |  7 ++++++
 6 files changed, 28 insertions(+), 48 deletions(-)

-- 
2.40.1.606.ga4b1b128d6-goog



             reply	other threads:[~2023-05-17  2:21 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-17  2:21 Peter Collingbourne [this message]
2023-05-17  2:21 ` [PATCH v3 0/3] mm: Fix bug affecting swapping in MTE tagged pages Peter Collingbourne
2023-05-17  2:21 ` [PATCH v3 1/3] mm: Call arch_swap_restore() from do_swap_page() Peter Collingbourne
2023-05-17  2:21   ` Peter Collingbourne
2023-05-17  3:40   ` Huang, Ying
2023-05-17  3:40     ` Huang, Ying
2023-05-17  8:37     ` David Hildenbrand
2023-05-17  8:37       ` David Hildenbrand
2023-05-17 14:57   ` Steven Price
2023-05-17 14:57     ` Steven Price
2023-05-19 16:39   ` Catalin Marinas
2023-05-19 16:39     ` Catalin Marinas
2023-05-17  2:21 ` [PATCH v3 2/3] mm: Call arch_swap_restore() from unuse_pte() Peter Collingbourne
2023-05-17  2:21   ` Peter Collingbourne
2023-05-17  8:37   ` David Hildenbrand
2023-05-17  8:37     ` David Hildenbrand
2023-05-17 14:58   ` Steven Price
2023-05-17 14:58     ` Steven Price
2023-05-19 16:42   ` Catalin Marinas
2023-05-19 16:42     ` Catalin Marinas
2023-05-17  2:21 ` [PATCH v3 3/3] arm64: mte: Simplify swap tag restoration logic Peter Collingbourne
2023-05-17  2:21   ` Peter Collingbourne
2023-05-17 14:59   ` Steven Price
2023-05-17 14:59     ` Steven Price
2023-05-19 16:54   ` Catalin Marinas
2023-05-19 16:54     ` Catalin Marinas
2023-05-22 23:45     ` Peter Collingbourne
2023-05-22 23:45       ` Peter Collingbourne

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230517022115.3033604-1-pcc@google.com \
    --to=pcc@google.com \
    --cc=Kuan-Ying.Lee@mediatek.com \
    --cc=Qun-wei.Lin@mediatek.com \
    --cc=alexandru.elisei@arm.com \
    --cc=casper.li@mediatek.com \
    --cc=catalin.marinas@arm.com \
    --cc=chinwen.chang@mediatek.com \
    --cc=david@redhat.com \
    --cc=eugenis@google.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=kasan-dev@googlegroups.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=steven.price@arm.com \
    --cc=surenb@google.com \
    --cc=vincenzo.frascino@arm.com \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.