diff --git a/patches.kernel.org/6.3.3-223-parisc-Fix-encoding-of-swp_entry-due-to-added-S.patch b/patches.kernel.org/6.3.3-223-parisc-Fix-encoding-of-swp_entry-due-to-added-S.patch new file mode 100644 index 0000000..bb7f2e6 --- /dev/null +++ b/patches.kernel.org/6.3.3-223-parisc-Fix-encoding-of-swp_entry-due-to-added-S.patch @@ -0,0 +1,50 @@ +From: Helge Deller +Date: Sat, 13 May 2023 22:30:06 +0200 +Subject: [PATCH] parisc: Fix encoding of swp_entry due to added SWP_EXCLUSIVE + flag +References: bsc#1012628 +Patch-mainline: 6.3.3 +Git-commit: 6f9e98849edaa8aefc4030ff3500e41556e83ff7 + +commit 6f9e98849edaa8aefc4030ff3500e41556e83ff7 upstream. + +Fix the __swp_offset() and __swp_entry() macros due to commit 6d239fc78c0b +("parisc/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE") which introduced the +SWP_EXCLUSIVE flag by reusing the _PAGE_ACCESSED flag. + +Reported-by: Christoph Biedl +Tested-by: Christoph Biedl +Reviewed-by: David Hildenbrand +Signed-off-by: Helge Deller +Fixes: 6d239fc78c0b ("parisc/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE") +Cc: # v6.3+ +Signed-off-by: Greg Kroah-Hartman +Signed-off-by: Jiri Slaby +--- + arch/parisc/include/asm/pgtable.h | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/arch/parisc/include/asm/pgtable.h b/arch/parisc/include/asm/pgtable.h +index e2950f5d..e715df53 100644 +--- a/arch/parisc/include/asm/pgtable.h ++++ b/arch/parisc/include/asm/pgtable.h +@@ -413,12 +413,12 @@ extern void paging_init (void); + * For the 64bit version, the offset is extended by 32bit. + */ + #define __swp_type(x) ((x).val & 0x1f) +-#define __swp_offset(x) ( (((x).val >> 6) & 0x7) | \ +- (((x).val >> 8) & ~0x7) ) ++#define __swp_offset(x) ( (((x).val >> 5) & 0x7) | \ ++ (((x).val >> 10) << 3) ) + #define __swp_entry(type, offset) ((swp_entry_t) { \ + ((type) & 0x1f) | \ +- ((offset & 0x7) << 6) | \ +- ((offset & ~0x7) << 8) }) ++ ((offset & 0x7) << 5) | \ ++ ((offset >> 3) << 10) }) + #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) + #define __swp_entry_to_pte(x) ((pte_t) { (x).val }) + +-- +2.35.3 + diff --git a/series.conf b/series.conf index 070403b..99773a2 100644 --- a/series.conf +++ b/series.conf @@ -956,6 +956,7 @@ patches.kernel.org/6.3.3-220-drm-amd-display-Add-minimum-Z8-residency-debug-.patch patches.kernel.org/6.3.3-221-drm-amd-display-Update-minimum-stutter-residenc.patch patches.kernel.org/6.3.3-222-drm-amd-display-Lowering-min-Z8-residency-time.patch + patches.kernel.org/6.3.3-223-parisc-Fix-encoding-of-swp_entry-due-to-added-S.patch ######################################################## # Build fixes that apply to the vanilla kernel too.