Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751806AbdHAF41 (ORCPT ); Tue, 1 Aug 2017 01:56:27 -0400 Received: from LGEAMRELO13.lge.com ([156.147.23.53]:53628 "EHLO lgeamrelo13.lge.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751217AbdHAF4V (ORCPT ); Tue, 1 Aug 2017 01:56:21 -0400 X-Original-SENDERIP: 156.147.1.126 X-Original-MAILFROM: minchan@kernel.org X-Original-SENDERIP: 10.177.220.163 X-Original-MAILFROM: minchan@kernel.org From: Minchan Kim To: Andrew Morton Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, kernel-team , Minchan Kim Subject: [PATCH v2 0/4] fix several TLB batch races Date: Tue, 1 Aug 2017 14:56:13 +0900 Message-Id: <1501566977-20293-1-git-send-email-minchan@kernel.org> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1309 Lines: 36 Nadav and Mel founded several subtle races caused by TLB batching. This patchset aims for solving thoses problems using embedding [inc|dec]_tlb_flush_pending to TLB batching API. With that, places to know TLB flush pending catch it up by using mm_tlb_flush_pending. Each patch includes detailed description. This patchset is based on v4.13-rc2-mmots-2017-07-28-16-10 + "[PATCH v5 0/3] mm: fixes of tlb_flush_pending races" from Nadav * from v1 * TLB batching API separation core part from arch specific one - Mel * introduce mm_tlb_flush_nested - Mel Minchan Kim (4): mm: refactoring TLB gathering API mm: make tlb_flush_pending global mm: fix MADV_[FREE|DONTNEED] TLB flush miss problem mm: fix KSM data corruption arch/arm/include/asm/tlb.h | 11 ++++++-- arch/ia64/include/asm/tlb.h | 8 ++++-- arch/s390/include/asm/tlb.h | 17 ++++++++----- arch/sh/include/asm/tlb.h | 8 +++--- arch/um/include/asm/tlb.h | 13 +++++++--- fs/proc/task_mmu.c | 4 ++- include/asm-generic/tlb.h | 7 ++--- include/linux/mm_types.h | 35 ++++++++++--------------- mm/debug.c | 2 -- mm/ksm.c | 3 ++- mm/memory.c | 62 +++++++++++++++++++++++++++++++-------------- 11 files changed, 107 insertions(+), 63 deletions(-) -- 2.7.4