• D
    x86/mpx: Trace the attempts to find bounds tables · 2a1dcb1f
    Dave Hansen 提交于
    There are two different events being traced here.  They are
    doing similar things so share a trace "EVENT_CLASS" and are
    presented together.
    
    1. Trace when MPX is zapping pages "mpx_unmap_zap":
    
    	When MPX can not free an entire bounds table, it will
    	instead try to zap unused parts of a bounds table to free
    	the backing memory.  This decreases RSS (resident set
    	size) without decreasing the virtual space allocated
    	for bounds tables.
    
    2. Trace attempts to find bounds tables "mpx_unmap_search":
    
    	This event traces any time we go looking to unmap a
    	bounds table for a given virtual address range.  This is
    	useful to ensure that the kernel actually "tried" to free
    	a bounds table versus times it succeeded in finding one.
    
    	It might try and fail if it realized that a table was
    	shared with an adjacent VMA which is not being unmapped.
    Signed-off-by: NDave Hansen <dave.hansen@linux.intel.com>
    Reviewed-by: NThomas Gleixner <tglx@linutronix.de>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Dave Hansen <dave@sr71.net>
    Cc: H. Peter Anvin <hpa@zytor.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Link: http://lkml.kernel.org/r/20150607183703.B9D2468B@viggo.jf.intel.comSigned-off-by: NIngo Molnar <mingo@kernel.org>
    2a1dcb1f
mpx.c 24.2 KB