x86/uv: Update the UV3 TLB shootdown logic
authorCliff Wickman <cpw@sgi.com>
Wed, 14 May 2014 21:15:47 +0000 (16:15 -0500)
committerIngo Molnar <mingo@kernel.org>
Thu, 5 Jun 2014 12:17:20 +0000 (14:17 +0200)
commita26fd71953711acb4884df84e393d52de57e4f17
tree327923aa12694c97e56b398c12a259919db87c75
parentfe455b17de6c881eecf4f9784c3b0483a5e3d19e
x86/uv: Update the UV3 TLB shootdown logic

Update of TLB shootdown code for UV3.

Kernel function native_flush_tlb_others() calls
uv_flush_tlb_others() on UV to invalidate tlb page definitions
on remote cpus. The UV systems have a hardware 'broadcast assist
unit' which can be used to broadcast shootdown messages to all
cpu's of selected nodes.

The behavior of the BAU has changed only slightly with UV3:

  - UV3 is recognized with is_uv3_hub().
  - UV2 functions and structures (uv2_xxx) are in most cases
    simply renamed to uv2_3_xxx.
  - Some UV2 error workarounds are not needed for UV3.
    (see uv_bau_message_interrupt and enable_timeouts)

Signed-off-by: Cliff Wickman <cpw@sgi.com>
Link: http://lkml.kernel.org/r/E1WkgWh-0001yJ-3K@eag09.americas.sgi.com
[ Removed a few linebreak uglies. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/include/asm/uv/uv_bau.h
arch/x86/platform/uv/tlb_uv.c