The patch titled Subject: mm-rmap-fix-potential-batched-tlb-flush-race-fix has been removed from the -mm tree. Its filename was mm-rmap-fix-potential-batched-tlb-flush-race-fix.patch This patch was dropped because it was folded into mm-rmap-fix-potential-batched-tlb-flush-race.patch ------------------------------------------------------ From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Subject: mm-rmap-fix-potential-batched-tlb-flush-race-fix tweak comments Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx> Cc: Andy Lutomirski <luto@xxxxxxxxxx> Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx> Cc: "Huang, Ying" <ying.huang@xxxxxxxxx> Cc: Marco Elver <elver@xxxxxxxxxx> Cc: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx> Cc: Nadav Amit <namit@xxxxxxxxxx> Cc: Will Deacon <will@xxxxxxxxxx> Cc: Yu Zhao <yuzhao@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/rmap.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) --- a/mm/rmap.c~mm-rmap-fix-potential-batched-tlb-flush-race-fix +++ a/mm/rmap.c @@ -622,8 +622,8 @@ void try_to_unmap_flush_dirty(void) } /* - * The 0-14 bit of mm->tlb_flush_batched records pending generations, - * and the 16-30 bit records flushed generations. + * Bits 0-14 of mm->tlb_flush_batched record pending generations. + * Bits 16-30 of mm->tlb_flush_batched bit record flushed generations. */ #define TLB_FLUSH_BATCH_FLUSHED_SHIFT 16 #define TLB_FLUSH_BATCH_PENDING_MASK \ @@ -648,9 +648,9 @@ static void set_tlb_ubc_flush_pending(st retry: if ((batch & TLB_FLUSH_BATCH_PENDING_MASK) > TLB_FLUSH_BATCH_PENDING_LARGE) { /* - * To avoid ""pending"" to catch up with ""flushed"" - * because of overflow. Reset "pending" and "flushed" - * to be "1" and "0" if "pending" becomes large. + * Prevent `pending' from catching up with `flushed' because of + * overflow. Reset `pending' and `flushed' to be 1 and 0 if + * `pending' becomes large. */ nbatch = atomic_cmpxchg(&mm->tlb_flush_batched, batch, 1); if (nbatch != batch) { @@ -713,9 +713,8 @@ void flush_tlb_batched_pending(struct mm if (pending != flushed) { flush_tlb_mm(mm); /* - * If the new TLB flushing is pended during flushing, - * leave mm->tlb_flush_batched as is, to avoid to lose - * flushing. + * If the new TLB flushing is pending during flushing, leave + * mm->tlb_flush_batched as is, to avoid losing flushing. */ atomic_cmpxchg(&mm->tlb_flush_batched, batch, pending | (pending << TLB_FLUSH_BATCH_FLUSHED_SHIFT)); _ Patches currently in -mm which might be from akpm@xxxxxxxxxxxxxxxxxxxx are mm-rmap-fix-potential-batched-tlb-flush-race.patch mm.patch documentation-vm-page_ownerrst-update-the-documentation-fix.patch mm-mempolicy-convert-from-atomic_t-to-refcount_t-on-mempolicy-refcnt-fix.patch proc-make-the-proc_create-stubs-static-inlines-fix.patch proc-make-the-proc_create-stubs-static-inlines-fix2.patch proc-make-the-proc_create-stubs-static-inlines-fix2-fix.patch kernel-sys-only-take-tasklist_lock-for-get-setpriorityprio_pgrp-checkpatch-fixes.patch hashh-remove-unused-define-directive-fix.patch panic-use-error_report_end-tracepoint-on-warnings-fix.patch linux-next-rejects.patch linux-next-git-rejects.patch arch-x86-include-asm-pgtableh-needs-spinlockh.patch sysctl-move-some-boundary-constants-from-sysctlc-to-sysctl_vals-fix.patch firmware_loader-move-firmware-sysctl-to-its-own-files-fix.patch firmware_loader-move-firmware-sysctl-to-its-own-files-fix-fix.patch sysctl-add-helper-to-register-a-sysctl-mount-point-fix.patch sysctl-move-maxolduid-as-a-sysctl-specific-const-fix.patch proc-remove-pde_data-completely-fix.patch proc-remove-pde_data-completely-fix-fix.patch mm-remove-cleancache-fix.patch mm-simplify-try_to_unuse-fix.patch mutex-subsystem-synchro-test-module-fix.patch kernel-forkc-export-kernel_thread-to-modules.patch