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
File | Mode | Size |
---|---|---|
c++ | ||
cs-etm-decoder | ||
include | ||
intel-pt-decoder | ||
libunwind | ||
scripting-engines | ||
Build | -rw-r--r-- | 6.6 KB |
PERF-VERSION-GEN | -rwxr-xr-x | 1.0 KB |
annotate.c | -rw-r--r-- | 69.2 KB |
annotate.h | -rw-r--r-- | 10.8 KB |
arm-spe-pkt-decoder.c | -rw-r--r-- | 11.6 KB |
arm-spe-pkt-decoder.h | -rw-r--r-- | 903 bytes |
arm-spe.c | -rw-r--r-- | 5.3 KB |
arm-spe.h | -rw-r--r-- | 748 bytes |
auxtrace.c | -rw-r--r-- | 47.5 KB |
auxtrace.h | -rw-r--r-- | 22.0 KB |
block-range.c | -rw-r--r-- | 6.8 KB |
block-range.h | -rw-r--r-- | 1.6 KB |
bpf-loader.c | -rw-r--r-- | 40.4 KB |
bpf-loader.h | -rw-r--r-- | 6.6 KB |
bpf-prologue.c | -rw-r--r-- | 11.8 KB |
bpf-prologue.h | -rw-r--r-- | 906 bytes |
branch.c | -rw-r--r-- | 2.9 KB |
branch.h | -rw-r--r-- | 566 bytes |
build-id.c | -rw-r--r-- | 19.8 KB |
build-id.h | -rw-r--r-- | 2.0 KB |
cache.h | -rw-r--r-- | 737 bytes |
call-path.c | -rw-r--r-- | 2.8 KB |
call-path.h | -rw-r--r-- | 2.2 KB |
callchain.c | -rw-r--r-- | 36.1 KB |
callchain.h | -rw-r--r-- | 8.0 KB |
cgroup.c | -rw-r--r-- | 4.9 KB |
cgroup.h | -rw-r--r-- | 640 bytes |
cloexec.c | -rw-r--r-- | 2.0 KB |
cloexec.h | -rw-r--r-- | 171 bytes |
color.c | -rw-r--r-- | 4.7 KB |
color.h | -rw-r--r-- | 1.7 KB |
comm.c | -rw-r--r-- | 2.8 KB |
comm.h | -rw-r--r-- | 600 bytes |
compress.h | -rw-r--r-- | 397 bytes |
config.c | -rw-r--r-- | 16.4 KB |
config.h | -rw-r--r-- | 2.1 KB |
counts.c | -rw-r--r-- | 1.1 KB |
counts.h | -rw-r--r-- | 843 bytes |
cpumap.c | -rw-r--r-- | 13.7 KB |
cpumap.h | -rw-r--r-- | 2.1 KB |
cs-etm.c | -rw-r--r-- | 36.8 KB |
cs-etm.h | -rw-r--r-- | 1.9 KB |
ctype.c | -rw-r--r-- | 2.0 KB |
data-convert-bt.c | -rw-r--r-- | 39.4 KB |
data-convert-bt.h | -rw-r--r-- | 341 bytes |
data-convert.h | -rw-r--r-- | 180 bytes |
data.c | -rw-r--r-- | 3.6 KB |
data.h | -rw-r--r-- | 1.4 KB |
db-export.c | -rw-r--r-- | 11.1 KB |
db-export.h | -rw-r--r-- | 3.7 KB |
debug.c | -rw-r--r-- | 5.4 KB |
debug.h | -rw-r--r-- | 2.0 KB |
demangle-java.c | -rw-r--r-- | 4.2 KB |
demangle-java.h | -rw-r--r-- | 288 bytes |
demangle-rust.c | -rw-r--r-- | 6.5 KB |
demangle-rust.h | -rw-r--r-- | 209 bytes |
drv_configs.c | -rw-r--r-- | 1.8 KB |
drv_configs.h | -rw-r--r-- | 844 bytes |
dso.c | -rw-r--r-- | 34.4 KB |
dso.h | -rw-r--r-- | 10.3 KB |
dump-insn.c | -rw-r--r-- | 317 bytes |
dump-insn.h | -rw-r--r-- | 431 bytes |
dwarf-aux.c | -rw-r--r-- | 33.1 KB |
dwarf-aux.h | -rw-r--r-- | 5.0 KB |
dwarf-regs.c | -rw-r--r-- | 1.8 KB |
env.c | -rw-r--r-- | 3.7 KB |
env.h | -rw-r--r-- | 1.6 KB |
event.c | -rw-r--r-- | 42.7 KB |
event.h | -rw-r--r-- | 19.1 KB |
evlist.c | -rw-r--r-- | 41.1 KB |
evlist.h | -rw-r--r-- | 10.5 KB |
evsel.c | -rw-r--r-- | 71.8 KB |
evsel.h | -rw-r--r-- | 14.0 KB |
evsel_fprintf.c | -rw-r--r-- | 5.9 KB |
expr.h | -rw-r--r-- | 588 bytes |
expr.y | -rw-r--r-- | 4.4 KB |
find-vdso-map.c | -rw-r--r-- | 617 bytes |
genelf.c | -rw-r--r-- | 11.4 KB |
genelf.h | -rw-r--r-- | 1.8 KB |
genelf_debug.c | -rw-r--r-- | 14.0 KB |
generate-cmdlist.sh | -rwxr-xr-x | 1.2 KB |
group.h | -rw-r--r-- | 161 bytes |
header.c | -rw-r--r-- | 83.0 KB |
header.h | -rw-r--r-- | 5.0 KB |
help-unknown-cmd.c | -rw-r--r-- | 3.0 KB |
help-unknown-cmd.h | -rw-r--r-- | 0 bytes |
hist.c | -rw-r--r-- | 62.2 KB |
hist.h | -rw-r--r-- | 15.7 KB |
intel-bts.c | -rw-r--r-- | 22.6 KB |
intel-bts.h | -rw-r--r-- | 1.2 KB |
intel-pt.c | -rw-r--r-- | 64.0 KB |
intel-pt.h | -rw-r--r-- | 1.4 KB |
intlist.c | -rw-r--r-- | 3.0 KB |
intlist.h | -rw-r--r-- | 2.1 KB |
jit.h | -rw-r--r-- | 305 bytes |
jitdump.c | -rw-r--r-- | 17.4 KB |
jitdump.h | -rw-r--r-- | 2.8 KB |
kvm-stat.h | -rw-r--r-- | 3.2 KB |
levenshtein.c | -rw-r--r-- | 2.6 KB |
levenshtein.h | -rw-r--r-- | 281 bytes |
llvm-utils.c | -rw-r--r-- | 14.3 KB |
llvm-utils.h | -rw-r--r-- | 2.0 KB |
lzma.c | -rw-r--r-- | 2.6 KB |
machine.c | -rw-r--r-- | 60.2 KB |
machine.h | -rw-r--r-- | 9.3 KB |
map.c | -rw-r--r-- | 19.9 KB |
map.h | -rw-r--r-- | 6.7 KB |
mem-events.c | -rw-r--r-- | 9.2 KB |
mem-events.h | -rw-r--r-- | 2.8 KB |
mem2node.c | -rw-r--r-- | 2.7 KB |
mem2node.h | -rw-r--r-- | 383 bytes |
memswap.c | -rw-r--r-- | 401 bytes |
memswap.h | -rw-r--r-- | 208 bytes |
metricgroup.c | -rw-r--r-- | 11.1 KB |
metricgroup.h | -rw-r--r-- | 791 bytes |
mmap.c | -rw-r--r-- | 7.9 KB |
mmap.h | -rw-r--r-- | 2.7 KB |
namespaces.c | -rw-r--r-- | 4.8 KB |
namespaces.h | -rw-r--r-- | 1.5 KB |
ordered-events.c | -rw-r--r-- | 7.4 KB |
ordered-events.h | -rw-r--r-- | 1.6 KB |
parse-branch-options.c | -rw-r--r-- | 2.2 KB |
parse-branch-options.h | -rw-r--r-- | 307 bytes |
parse-events.c | -rw-r--r-- | 64.5 KB |
parse-events.h | -rw-r--r-- | 7.1 KB |
parse-events.l | -rw-r--r-- | 11.1 KB |
parse-events.y | -rw-r--r-- | 13.8 KB |
parse-regs-options.c | -rw-r--r-- | 1.3 KB |
parse-regs-options.h | -rw-r--r-- | 236 bytes |
path.c | -rw-r--r-- | 1.9 KB |
path.h | -rw-r--r-- | 409 bytes |
perf-hooks-list.h | -rw-r--r-- | 62 bytes |
perf-hooks.c | -rw-r--r-- | 2.0 KB |
perf-hooks.h | -rw-r--r-- | 874 bytes |
perf_regs.c | -rw-r--r-- | 730 bytes |
perf_regs.h | -rw-r--r-- | 933 bytes |
pmu.c | -rw-r--r-- | 32.8 KB |
pmu.h | -rw-r--r-- | 2.7 KB |
pmu.l | -rw-r--r-- | 571 bytes |
pmu.y | -rw-r--r-- | 1.3 KB |
print_binary.c | -rw-r--r-- | 1.4 KB |
print_binary.h | -rw-r--r-- | 945 bytes |
probe-event.c | -rw-r--r-- | 80.3 KB |
probe-event.h | -rw-r--r-- | 6.1 KB |
probe-file.c | -rw-r--r-- | 22.5 KB |
probe-file.h | -rw-r--r-- | 2.5 KB |
probe-finder.c | -rw-r--r-- | 46.4 KB |
probe-finder.h | -rw-r--r-- | 3.4 KB |
pstack.c | -rw-r--r-- | 1.6 KB |
pstack.h | -rw-r--r-- | 494 bytes |
python-ext-sources | -rw-r--r-- | 594 bytes |
python.c | -rw-r--r-- | 36.3 KB |
rb_resort.h | -rw-r--r-- | 4.9 KB |
rblist.c | -rw-r--r-- | 2.4 KB |
rblist.h | -rw-r--r-- | 1.4 KB |
record.c | -rw-r--r-- | 7.1 KB |
rwsem.c | -rw-r--r-- | 674 bytes |
rwsem.h | -rw-r--r-- | 393 bytes |
s390-cpumsf-kernel.h | -rw-r--r-- | 2.5 KB |
s390-cpumsf.c | -rw-r--r-- | 27.6 KB |
s390-cpumsf.h | -rw-r--r-- | 534 bytes |
sane_ctype.h | -rw-r--r-- | 1.5 KB |
session.c | -rw-r--r-- | 60.1 KB |
session.h | -rw-r--r-- | 3.9 KB |
setns.c | -rw-r--r-- | 139 bytes |
setup.py | -rw-r--r-- | 2.3 KB |
smt.c | -rw-r--r-- | 845 bytes |
smt.h | -rw-r--r-- | 57 bytes |
sort.c | -rw-r--r-- | 70.6 KB |
sort.h | -rw-r--r-- | 6.8 KB |
srcline.c | -rw-r--r-- | 13.7 KB |
srcline.h | -rw-r--r-- | 1.7 KB |
stat-shadow.c | -rw-r--r-- | 27.6 KB |
stat.c | -rw-r--r-- | 10.0 KB |
stat.h | -rw-r--r-- | 4.1 KB |
strbuf.c | -rw-r--r-- | 2.9 KB |
strbuf.h | -rw-r--r-- | 2.9 KB |
strfilter.c | -rw-r--r-- | 6.2 KB |
strfilter.h | -rw-r--r-- | 2.5 KB |
string.c | -rw-r--r-- | 8.4 KB |
string2.h | -rw-r--r-- | 1.2 KB |
strlist.c | -rw-r--r-- | 4.2 KB |
strlist.h | -rw-r--r-- | 2.5 KB |
svghelper.c | -rw-r--r-- | 22.6 KB |
svghelper.h | -rw-r--r-- | 1.7 KB |
symbol-elf.c | -rw-r--r-- | 49.7 KB |
symbol-minimal.c | -rw-r--r-- | 7.2 KB |
symbol.c | -rw-r--r-- | 50.1 KB |
symbol.h | -rw-r--r-- | 10.2 KB |
symbol_fprintf.c | -rw-r--r-- | 1.8 KB |
syscalltbl.c | -rw-r--r-- | 4.6 KB |
syscalltbl.h | -rw-r--r-- | 664 bytes |
target.c | -rw-r--r-- | 3.4 KB |
target.h | -rw-r--r-- | 2.1 KB |
term.c | -rw-r--r-- | 728 bytes |
term.h | -rw-r--r-- | 239 bytes |
thread-stack.c | -rw-r--r-- | 14.2 KB |
thread-stack.h | -rw-r--r-- | 3.0 KB |
thread.c | -rw-r--r-- | 8.4 KB |
thread.h | -rw-r--r-- | 3.4 KB |
thread_map.c | -rw-r--r-- | 9.8 KB |
thread_map.h | -rw-r--r-- | 1.7 KB |
time-utils.c | -rw-r--r-- | 7.9 KB |
time-utils.h | -rw-r--r-- | 830 bytes |
tool.h | -rw-r--r-- | 1.8 KB |
top.c | -rw-r--r-- | 3.5 KB |
top.h | -rw-r--r-- | 1.3 KB |
trace-event-info.c | -rw-r--r-- | 11.4 KB |
trace-event-parse.c | -rw-r--r-- | 5.7 KB |
trace-event-read.c | -rw-r--r-- | 8.9 KB |
trace-event-scripting.c | -rw-r--r-- | 4.7 KB |
trace-event.c | -rw-r--r-- | 2.5 KB |
trace-event.h | -rw-r--r-- | 3.1 KB |
trigger.h | -rw-r--r-- | 2.0 KB |
tsc.c | -rw-r--r-- | 656 bytes |
tsc.h | -rw-r--r-- | 728 bytes |
units.c | -rw-r--r-- | 1.1 KB |
units.h | -rw-r--r-- | 391 bytes |
unwind-libdw.c | -rw-r--r-- | 5.5 KB |
unwind-libdw.h | -rw-r--r-- | 553 bytes |
unwind-libunwind-local.c | -rw-r--r-- | 16.9 KB |
unwind-libunwind.c | -rw-r--r-- | 2.2 KB |
unwind.h | -rw-r--r-- | 2.3 KB |
usage.c | -rw-r--r-- | 556 bytes |
util-cxx.h | -rw-r--r-- | 460 bytes |
util.c | -rw-r--r-- | 9.5 KB |
util.h | -rw-r--r-- | 2.1 KB |
values.c | -rw-r--r-- | 7.7 KB |
values.h | -rw-r--r-- | 661 bytes |
vdso.c | -rw-r--r-- | 7.1 KB |
vdso.h | -rw-r--r-- | 639 bytes |
xyarray.c | -rw-r--r-- | 639 bytes |
xyarray.h | -rw-r--r-- | 713 bytes |
zlib.c | -rw-r--r-- | 1.8 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...