The patch titled Subject: mm-thp-fix-smp-race-condition-between-thp-page-fault-and-madv_dontneed-fix has been removed from the -mm tree. Its filename was mm-thp-fix-smp-race-condition-between-thp-page-fault-and-madv_dontneed-fix.patch This patch was dropped because it was folded into mm-thp-fix-smp-race-condition-between-thp-page-fault-and-madv_dontneed.patch ------------------------------------------------------ From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Subject: mm-thp-fix-smp-race-condition-between-thp-page-fault-and-madv_dontneed-fix tidy up comment grammar/layout Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx> Cc: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/memory.c | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff -puN mm/memory.c~mm-thp-fix-smp-race-condition-between-thp-page-fault-and-madv_dontneed-fix mm/memory.c --- a/mm/memory.c~mm-thp-fix-smp-race-condition-between-thp-page-fault-and-madv_dontneed-fix +++ a/mm/memory.c @@ -3405,16 +3405,15 @@ static int __handle_mm_fault(struct mm_s unlikely(__pte_alloc(mm, vma, pmd, address))) return VM_FAULT_OOM; /* - * If an huge pmd materialized from under us just retry later. - * Use pmd_trans_unstable() instead of pmd_trans_huge() to - * ensure the pmd didn't become pmd_trans_huge from under us - * and then back to pmd_none, as result of MADV_DONTNEED - * running immediately after a huge pmd fault of a different - * thread of this mm, in turn leading to a misleading - * pmd_trans_huge() retval. All we have to ensure is that it - * is a regular pmd that we can walk with pte_offset_map() and - * we can do that through an atomic read in C, which is what - * pmd_trans_unstable() is provided for. + * If a huge pmd materialized under us just retry later. Use + * pmd_trans_unstable() instead of pmd_trans_huge() to ensure the pmd + * didn't become pmd_trans_huge under us and then back to pmd_none, as + * a result of MADV_DONTNEED running immediately after a huge pmd fault + * in a different thread of this mm, in turn leading to a misleading + * pmd_trans_huge() retval. All we have to ensure is that it is a + * regular pmd that we can walk with pte_offset_map() and we can do that + * through an atomic read in C, which is what pmd_trans_unstable() + * provides. */ if (unlikely(pmd_trans_unstable(pmd) || pmd_devmap(*pmd))) return 0; _ Patches currently in -mm which might be from akpm@xxxxxxxxxxxxxxxxxxxx are i-need-old-gcc.patch arch-alpha-kernel-systblss-remove-debug-check.patch drivers-gpu-drm-i915-intel_spritec-fix-build.patch drivers-gpu-drm-i915-intel_tvc-fix-build.patch mm-thp-fix-smp-race-condition-between-thp-page-fault-and-madv_dontneed.patch arm-arch-arm-include-asm-pageh-needs-personalityh.patch ocfs2-code-clean-up-for-direct-io-fix.patch ocfs2-fix-ip_unaligned_aio-deadlock-with-dio-work-queue-fix.patch ocfs2-dlm-move-lock-to-the-tail-of-grant-queue-while-doing-in-place-convert-fix.patch mm.patch mm-slab-clean-up-debug_pagealloc-processing-code-fix.patch mm-slab-put-the-freelist-at-the-end-of-slab-page-fix.patch slub-drop-lock-at-the-end-of-free_debug_processing-fix.patch fs-mpagec-mpage_readpages-use-lru_to_page-helper.patch mm-page_allocc-introduce-kernelcore=mirror-option-fix.patch mm-page_allocc-rework-code-layout-in-memmap_init_zone.patch mm-debug-pageallocc-split-out-page-poisoning-from-debug-page_alloc-checkpatch-fixes.patch mm-page_poisonc-enable-page_poisoning-as-a-separate-option-fix.patch mm-page_poisoningc-allow-for-zero-poisoning-checkpatch-fixes.patch mm-madvise-update-comment-on-sys_madvise-fix.patch mm-migrate-do-not-touch-page-mem_cgroup-of-live-pages-fix.patch mm-simplify-lock_page_memcg-fix.patch sched-add-schedule_timeout_idle.patch mm-oom_reaper-report-success-failure-fix.patch mm-compaction-speed-up-pageblock_pfn_to_page-when-zone-is-contiguous-fix.patch proc-kpageflags-return-kpf_buddy-for-tail-buddy-pages-fix-fix.patch mm-vmalloc-query-dynamic-debug_pagealloc-setting-fix.patch mm-slub-query-dynamic-debug_pagealloc-setting-fix.patch sound-query-dynamic-debug_pagealloc-setting-fix.patch mm-config_nr_zones_extended-fix.patch mm-add-a-new-vector-based-madvise-syscall-fix.patch ksm-introduce-ksm_max_page_sharing-per-page-deduplication-limit-fix-2.patch zram-export-the-number-of-available-comp-streams-fix.patch mm-oom-rework-oom-detection-checkpatch-fixes.patch mm-use-watermak-checks-for-__gfp_repeat-high-order-allocations-checkpatch-fixes.patch btrfs-use-radix_tree_iter_retry-fix.patch sparc-compat-provide-an-accurate-in_compat_syscall-implementation-fix.patch sparc-compat-provide-an-accurate-in_compat_syscall-implementation-fix-fix.patch rapidio-add-mport-char-device-driver-fix.patch dma-rename-dma__writecombine-to-dma__wc-checkpatch-fixes.patch kernel-add-kcov-code-coverage-fix.patch kernel-add-kcov-code-coverage-fix-2.patch linux-next-rejects.patch linux-next-git-rejects.patch drivers-net-wireless-intel-iwlwifi-dvm-calibc-fix-min-warning.patch net-sched-sch_mqprioc-fix-build-with-older-gcc.patch do_shared_fault-check-that-mmap_sem-is-held.patch kernel-forkc-export-kernel_thread-to-modules.patch slab-leaks3-default-y.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html