• Nadav Amit's avatar
    mm/rmap: batched invalidations should use existing api · 858eaaa7
    Nadav Amit authored
    The recently introduced batched invalidations mechanism uses its own
    mechanism for shootdown.  However, it does wrong accounting of
    interrupts (e.g., inc_irq_stat is called for local invalidations),
    trace-points (e.g., TLB_REMOTE_SHOOTDOWN for local invalidations) and
    may break some platforms as it bypasses the invalidation mechanisms of
    Xen and SGI UV.
    
    This patch reuses the existing TLB flushing mechnaisms instead.  We use
    NULL as mm to indicate a global invalidation is required.
    
    Fixes 72b252ae ("mm: send one IPI per CPU to TLB flush all entries after unmapping pages")
    Signed-off-by: default avatarNadav Amit <namit@vmware.com>
    Cc: Mel Gorman <mgorman@suse.de>
    Cc: Rik van Riel <riel@redhat.com>
    Cc: Dave Hansen <dave.hansen@intel.com>
    Cc: Ingo Molnar <mingo@kernel.org>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    858eaaa7
rmap.c 50.2 KB