On Thu, Sep 17, 2020 at 03:53:33PM +0000, Sasha Levin wrote:
Hi
[This is an automated email]
This commit has been processed because it contains a "Fixes:" tag fixing commit: 1a42010cdc26 ("s390/mm: convert to the generic get_user_pages_fast code").
The bot has tested the following trees: v5.8.9, v5.4.65.
v5.8.9: Build OK! v5.4.65: Failed to apply! Possible dependencies: 051a7a94aaa9 ("arm64: hibernate: use get_safe_page directly") 13373f0e6580 ("arm64: hibernate: rename dst to page in create_safe_exec_page") 48c963e31bc6 ("KVM: arm/arm64: Release kvm->mmu_lock in loop to prevent starvation") 68ecabd0e680 ("arm64/mm: Use phys_to_page() to access pgtable memory") 8a0af66b35f8 ("arm: mm: add p?d_leaf() definitions") 974b9b2c68f3 ("mm: consolidate pte_index() and pte_offset_*() definitions") a2c2e67923ec ("arm64: hibernate: add trans_pgd public functions") a89d7ff933b0 ("arm64: hibernate: remove gotos as they are not needed") d234332c2815 ("arm64: hibernate: pass the allocated pgdp to ttbr0") e9f6376858b9 ("arm64: add support for folded p4d page tables")
NOTE: The patch will not be queued to stable trees until it is upstream.
How should we proceed with this patch?
Patch contains Cc: stable@vger.kernel.org [5.2+], so a stable backport to v5.4.y is also desired once upstream. A patch is self contained and has no dependencies.
arch/s390/include/asm/pgtable.h | 42 +++++++++++++++++++++++---------- include/asm-generic/pgtable.h | 10 ++++++++ mm/gup.c | 18 +++++++------- 3 files changed, 49 insertions(+), 21 deletions(-)
There are 2 trivial merge conflicts both for include/asm-generic/pgtable.h. 1. commit ca5999fde0a1 ("mm: introduce include/linux/pgtable.h") since v5.8 it renamed include/asm-generic/pgtable.h => include/linux/pgtable.h
2. commit 93fab1b22ef7 ("mm: add generic p?d_leaf() macros") since v5.6 introduced p?d_leaf() macros after mm_pmd_folded, so the bottom context of the hunk mismatch here:
diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index e8cbc2e795d5..90654cb63e9e 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -1427,6 +1427,16 @@ typedef unsigned int pgtbl_mod_mask; #define mm_pmd_folded(mm)჻·····__is_defined(__PAGETABLE_PMD_FOLDED) #endif
+#ifndef p4d_offset_lockless +#define p4d_offset_lockless(pgdp, pgd, address) p4d_offset(&(pgd), address) +#endif +#ifndef pud_offset_lockless +#define pud_offset_lockless(p4dp, p4d, address) pud_offset(&(p4d), address) +#endif +#ifndef pmd_offset_lockless +#define pmd_offset_lockless(pudp, pud, address) pmd_offset(&(pud), address) +#endif + /* * p?d_leaf() - true if this entry is a final mapping to a physical address. * This differs from p?d_huge() by the fact that they are always available (if
Patch for a stable-5.4.y backport sent as a follow on.
Thank you, Vasily