Revision 9c29bcd189f4ab1644b7125713602532d0aefdb7 authored by Eric Dumazet on 21 September 2018, 22:27:48 UTC, committed by David S. Miller on 24 September 2018, 04:55:25 UTC
As diagnosed by Song Liu, ndo_poll_controller() can
be very dangerous on loaded hosts, since the cpu
calling ndo_poll_controller() might steal all NAPI
contexts (for all RX/TX queues of the NIC). This capture
can last for unlimited amount of time, since one
cpu is generally not able to drain all the queues under load.

mlx5 uses NAPI for TX completions, so we better let core
networking stack call the napi->poll() to avoid the capture.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent a24b66c
Raw File
perf-kmem.txt
perf-kmem(1)
============

NAME
----
perf-kmem - Tool to trace/measure kernel memory properties

SYNOPSIS
--------
[verse]
'perf kmem' {record|stat} [<options>]

DESCRIPTION
-----------
There are two variants of perf kmem:

  'perf kmem record <command>' to record the kmem events
  of an arbitrary workload.

  'perf kmem stat' to report kernel memory statistics.

OPTIONS
-------
-i <file>::
--input=<file>::
	Select the input file (default: perf.data unless stdin is a fifo)

-f::
--force::
	Don't do ownership validation

-v::
--verbose::
        Be more verbose. (show symbol address, etc)

--caller::
	Show per-callsite statistics

--alloc::
	Show per-allocation statistics

-s <key[,key2...]>::
--sort=<key[,key2...]>::
	Sort the output (default: 'frag,hit,bytes' for slab and 'bytes,hit'
	for page).  Available sort keys are 'ptr, callsite, bytes, hit,
	pingpong, frag' for slab and 'page, callsite, bytes, hit, order,
	migtype, gfp' for page.  This option should be preceded by one of the
	mode selection options - i.e. --slab, --page, --alloc and/or --caller.

-l <num>::
--line=<num>::
	Print n lines only

--raw-ip::
	Print raw ip instead of symbol

--slab::
	Analyze SLAB allocator events.

--page::
	Analyze page allocator events

--live::
	Show live page stat.  The perf kmem shows total allocation stat by
	default, but this option shows live (currently allocated) pages
	instead.  (This option works with --page option only)

--time=<start>,<stop>::
	Only analyze samples within given time window: <start>,<stop>. Times
	have the format seconds.microseconds. If start is not given (i.e., time
	string is ',x.y') then analysis starts at the beginning of the file. If
	stop time is not given (i.e, time string is 'x.y,') then analysis goes
	to end of file.

SEE ALSO
--------
linkperf:perf-record[1]
back to top