-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/li…
…nux/kernel/git/tip/tip Pull perf tooling updates from Ingo Molnar: "perf.data: - Streaming compression of perf ring buffer into PERF_RECORD_COMPRESSED user space records, resulting in ~3-5x perf.data file size reduction on variety of tested workloads what saves storage space on larger server systems where perf.data size can easily reach several tens or even hundreds of GiBs, especially when profiling with DWARF-based stacks and tracing of context switches. perf record: - Improve -user-regs/intr-regs suggestions to overcome errors perf annotate: - Remove hist__account_cycles() from callback, speeding up branch processing (perf record -b) perf stat: - Add a 'percore' event qualifier, e.g.: -e cpu/event=0,umask=0x3,percore=1/, that sums up the event counts for both hardware threads in a core. We can already do this with --per-core, but it's often useful to do this together with other metrics that are collected per hardware thread. I.e. now its possible to do this per-event, and have it mixed with other events not aggregated by core. arm64: - Map Brahma-B53 CPUID to cortex-a53 events. - Add Cortex-A57 and Cortex-A72 events. csky: - Add DWARF register mappings for libdw, allowing --call-graph=dwarf to work on the C-SKY arch. x86: - Add support for recording and printing XMM registers, available, for instance, on Icelake. - Add uncore_upi (Intel's "Ultra Path Interconnect" events) JSON support. UPI replaced the Intel QuickPath Interconnect (QPI) in Xeon Skylake-SP. Intel PT: - Fix instructions sampling rate. - Timestamp fixes. - Improve exported-sql-viewer GUI, allowing, for instance, to copy'n'paste the trees, useful for e-mailing" * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (73 commits) perf stat: Support 'percore' event qualifier perf stat: Factor out aggregate counts printing perf tools: Add a 'percore' event qualifier perf docs: Add description for stderr perf intel-pt: Fix sample timestamp wrt non-taken branches perf intel-pt: Fix improved sample timestamp perf intel-pt: Fix instructions sampling rate perf regs x86: Add X86 specific arch__intr_reg_mask() perf parse-regs: Add generic support for arch__intr/user_reg_mask() perf parse-regs: Split parse_regs perf vendor events arm64: Add Cortex-A57 and Cortex-A72 events perf vendor events arm64: Map Brahma-B53 CPUID to cortex-a53 events perf vendor events arm64: Remove [[:xdigit:]] wildcard perf jevents: Remove unused variable perf test zstd: Fixup verbose mode output perf tests: Implement Zstd comp/decomp integration test perf inject: Enable COMPRESSED record decompression perf report: Implement perf.data record decompression perf record: Implement -z,--compression_level[=<n>] option perf report: Add stub processing of compressed events for -D ...
- Loading branch information
Showing
94 changed files
with
5,414 additions
and
214 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,207 @@ | ||
include ../../../scripts/Makefile.include | ||
include ../../../scripts/utilities.mak | ||
|
||
# This Makefile and manpage XSL files were taken from tools/perf/Documentation | ||
# and modified for libtraceevent. | ||
|
||
MAN3_TXT= \ | ||
$(wildcard libtraceevent-*.txt) \ | ||
libtraceevent.txt | ||
|
||
MAN_TXT = $(MAN3_TXT) | ||
_MAN_XML=$(patsubst %.txt,%.xml,$(MAN_TXT)) | ||
_MAN_HTML=$(patsubst %.txt,%.html,$(MAN_TXT)) | ||
_DOC_MAN3=$(patsubst %.txt,%.3,$(MAN3_TXT)) | ||
|
||
MAN_XML=$(addprefix $(OUTPUT),$(_MAN_XML)) | ||
MAN_HTML=$(addprefix $(OUTPUT),$(_MAN_HTML)) | ||
DOC_MAN3=$(addprefix $(OUTPUT),$(_DOC_MAN3)) | ||
|
||
# Make the path relative to DESTDIR, not prefix | ||
ifndef DESTDIR | ||
prefix?=$(HOME) | ||
endif | ||
bindir?=$(prefix)/bin | ||
htmldir?=$(prefix)/share/doc/libtraceevent-doc | ||
pdfdir?=$(prefix)/share/doc/libtraceevent-doc | ||
mandir?=$(prefix)/share/man | ||
man3dir=$(mandir)/man3 | ||
|
||
ASCIIDOC=asciidoc | ||
ASCIIDOC_EXTRA = --unsafe -f asciidoc.conf | ||
ASCIIDOC_HTML = xhtml11 | ||
MANPAGE_XSL = manpage-normal.xsl | ||
XMLTO_EXTRA = | ||
INSTALL?=install | ||
RM ?= rm -f | ||
|
||
ifdef USE_ASCIIDOCTOR | ||
ASCIIDOC = asciidoctor | ||
ASCIIDOC_EXTRA = -a compat-mode | ||
ASCIIDOC_EXTRA += -I. -rasciidoctor-extensions | ||
ASCIIDOC_EXTRA += -a mansource="libtraceevent" -a manmanual="libtraceevent Manual" | ||
ASCIIDOC_HTML = xhtml5 | ||
endif | ||
|
||
XMLTO=xmlto | ||
|
||
_tmp_tool_path := $(call get-executable,$(ASCIIDOC)) | ||
ifeq ($(_tmp_tool_path),) | ||
missing_tools = $(ASCIIDOC) | ||
endif | ||
|
||
ifndef USE_ASCIIDOCTOR | ||
_tmp_tool_path := $(call get-executable,$(XMLTO)) | ||
ifeq ($(_tmp_tool_path),) | ||
missing_tools += $(XMLTO) | ||
endif | ||
endif | ||
|
||
# | ||
# For asciidoc ... | ||
# -7.1.2, no extra settings are needed. | ||
# 8.0-, set ASCIIDOC8. | ||
# | ||
|
||
# | ||
# For docbook-xsl ... | ||
# -1.68.1, set ASCIIDOC_NO_ROFF? (based on changelog from 1.73.0) | ||
# 1.69.0, no extra settings are needed? | ||
# 1.69.1-1.71.0, set DOCBOOK_SUPPRESS_SP? | ||
# 1.71.1, no extra settings are needed? | ||
# 1.72.0, set DOCBOOK_XSL_172. | ||
# 1.73.0-, set ASCIIDOC_NO_ROFF | ||
# | ||
|
||
# | ||
# If you had been using DOCBOOK_XSL_172 in an attempt to get rid | ||
# of 'the ".ft C" problem' in your generated manpages, and you | ||
# instead ended up with weird characters around callouts, try | ||
# using ASCIIDOC_NO_ROFF instead (it works fine with ASCIIDOC8). | ||
# | ||
|
||
ifdef ASCIIDOC8 | ||
ASCIIDOC_EXTRA += -a asciidoc7compatible | ||
endif | ||
ifdef DOCBOOK_XSL_172 | ||
ASCIIDOC_EXTRA += -a libtraceevent-asciidoc-no-roff | ||
MANPAGE_XSL = manpage-1.72.xsl | ||
else | ||
ifdef ASCIIDOC_NO_ROFF | ||
# docbook-xsl after 1.72 needs the regular XSL, but will not | ||
# pass-thru raw roff codes from asciidoc.conf, so turn them off. | ||
ASCIIDOC_EXTRA += -a libtraceevent-asciidoc-no-roff | ||
endif | ||
endif | ||
ifdef MAN_BOLD_LITERAL | ||
XMLTO_EXTRA += -m manpage-bold-literal.xsl | ||
endif | ||
ifdef DOCBOOK_SUPPRESS_SP | ||
XMLTO_EXTRA += -m manpage-suppress-sp.xsl | ||
endif | ||
|
||
SHELL_PATH ?= $(SHELL) | ||
# Shell quote; | ||
SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH)) | ||
|
||
DESTDIR ?= | ||
DESTDIR_SQ = '$(subst ','\'',$(DESTDIR))' | ||
|
||
export DESTDIR DESTDIR_SQ | ||
|
||
# | ||
# Please note that there is a minor bug in asciidoc. | ||
# The version after 6.0.3 _will_ include the patch found here: | ||
# http://marc.theaimsgroup.com/?l=libtraceevent&m=111558757202243&w=2 | ||
# | ||
# Until that version is released you may have to apply the patch | ||
# yourself - yes, all 6 characters of it! | ||
# | ||
QUIET_SUBDIR0 = +$(MAKE) -C # space to separate -C and subdir | ||
QUIET_SUBDIR1 = | ||
|
||
ifneq ($(findstring $(MAKEFLAGS),w),w) | ||
PRINT_DIR = --no-print-directory | ||
else # "make -w" | ||
NO_SUBDIR = : | ||
endif | ||
|
||
ifneq ($(findstring $(MAKEFLAGS),s),s) | ||
ifneq ($(V),1) | ||
QUIET_ASCIIDOC = @echo ' ASCIIDOC '$@; | ||
QUIET_XMLTO = @echo ' XMLTO '$@; | ||
QUIET_SUBDIR0 = +@subdir= | ||
QUIET_SUBDIR1 = ;$(NO_SUBDIR) \ | ||
echo ' SUBDIR ' $$subdir; \ | ||
$(MAKE) $(PRINT_DIR) -C $$subdir | ||
export V | ||
endif | ||
endif | ||
|
||
all: html man | ||
|
||
man: man3 | ||
man3: $(DOC_MAN3) | ||
|
||
html: $(MAN_HTML) | ||
|
||
$(MAN_HTML) $(DOC_MAN3): asciidoc.conf | ||
|
||
install: install-man | ||
|
||
check-man-tools: | ||
ifdef missing_tools | ||
$(error "You need to install $(missing_tools) for man pages") | ||
endif | ||
|
||
do-install-man: man | ||
$(call QUIET_INSTALL, Documentation-man) \ | ||
$(INSTALL) -d -m 755 $(DESTDIR)$(man3dir); \ | ||
$(INSTALL) -m 644 $(DOC_MAN3) $(DESTDIR)$(man3dir); | ||
|
||
install-man: check-man-tools man do-install-man | ||
|
||
uninstall: uninstall-man | ||
|
||
uninstall-man: | ||
$(call QUIET_UNINST, Documentation-man) \ | ||
$(Q)$(RM) $(addprefix $(DESTDIR)$(man3dir)/,$(DOC_MAN3)) | ||
|
||
|
||
ifdef missing_tools | ||
DO_INSTALL_MAN = $(warning Please install $(missing_tools) to have the man pages installed) | ||
else | ||
DO_INSTALL_MAN = do-install-man | ||
endif | ||
|
||
CLEAN_FILES = \ | ||
$(MAN_XML) $(addsuffix +,$(MAN_XML)) \ | ||
$(MAN_HTML) $(addsuffix +,$(MAN_HTML)) \ | ||
$(DOC_MAN3) *.3 | ||
|
||
clean: | ||
$(call QUIET_CLEAN, Documentation) $(RM) $(CLEAN_FILES) | ||
|
||
ifdef USE_ASCIIDOCTOR | ||
$(OUTPUT)%.3 : $(OUTPUT)%.txt | ||
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \ | ||
$(ASCIIDOC) -b manpage -d manpage \ | ||
$(ASCIIDOC_EXTRA) -alibtraceevent_version=$(EVENT_PARSE_VERSION) -o $@+ $< && \ | ||
mv $@+ $@ | ||
endif | ||
|
||
$(OUTPUT)%.3 : $(OUTPUT)%.xml | ||
$(QUIET_XMLTO)$(RM) $@ && \ | ||
$(XMLTO) -o $(OUTPUT). -m $(MANPAGE_XSL) $(XMLTO_EXTRA) man $< | ||
|
||
$(OUTPUT)%.xml : %.txt | ||
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \ | ||
$(ASCIIDOC) -b docbook -d manpage \ | ||
$(ASCIIDOC_EXTRA) -alibtraceevent_version=$(EVENT_PARSE_VERSION) -o $@+ $< && \ | ||
mv $@+ $@ | ||
|
||
$(MAN_HTML): $(OUTPUT)%.html : %.txt | ||
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \ | ||
$(ASCIIDOC) -b $(ASCIIDOC_HTML) -d manpage \ | ||
$(ASCIIDOC_EXTRA) -aperf_version=$(EVENT_PARSE_VERSION) -o $@+ $< && \ | ||
mv $@+ $@ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,120 @@ | ||
## linktep: macro | ||
# | ||
# Usage: linktep:command[manpage-section] | ||
# | ||
# Note, {0} is the manpage section, while {target} is the command. | ||
# | ||
# Show TEP link as: <command>(<section>); if section is defined, else just show | ||
# the command. | ||
|
||
[macros] | ||
(?su)[\\]?(?P<name>linktep):(?P<target>\S*?)\[(?P<attrlist>.*?)\]= | ||
|
||
[attributes] | ||
asterisk=* | ||
plus=+ | ||
caret=^ | ||
startsb=[ | ||
endsb=] | ||
tilde=~ | ||
|
||
ifdef::backend-docbook[] | ||
[linktep-inlinemacro] | ||
{0%{target}} | ||
{0#<citerefentry>} | ||
{0#<refentrytitle>{target}</refentrytitle><manvolnum>{0}</manvolnum>} | ||
{0#</citerefentry>} | ||
endif::backend-docbook[] | ||
|
||
ifdef::backend-docbook[] | ||
ifndef::tep-asciidoc-no-roff[] | ||
# "unbreak" docbook-xsl v1.68 for manpages. v1.69 works with or without this. | ||
# v1.72 breaks with this because it replaces dots not in roff requests. | ||
[listingblock] | ||
<example><title>{title}</title> | ||
<literallayout> | ||
ifdef::doctype-manpage[] | ||
.ft C | ||
endif::doctype-manpage[] | ||
| | ||
ifdef::doctype-manpage[] | ||
.ft | ||
endif::doctype-manpage[] | ||
</literallayout> | ||
{title#}</example> | ||
endif::tep-asciidoc-no-roff[] | ||
|
||
ifdef::tep-asciidoc-no-roff[] | ||
ifdef::doctype-manpage[] | ||
# The following two small workarounds insert a simple paragraph after screen | ||
[listingblock] | ||
<example><title>{title}</title> | ||
<literallayout> | ||
| | ||
</literallayout><simpara></simpara> | ||
{title#}</example> | ||
|
||
[verseblock] | ||
<formalpara{id? id="{id}"}><title>{title}</title><para> | ||
{title%}<literallayout{id? id="{id}"}> | ||
{title#}<literallayout> | ||
| | ||
</literallayout> | ||
{title#}</para></formalpara> | ||
{title%}<simpara></simpara> | ||
endif::doctype-manpage[] | ||
endif::tep-asciidoc-no-roff[] | ||
endif::backend-docbook[] | ||
|
||
ifdef::doctype-manpage[] | ||
ifdef::backend-docbook[] | ||
[header] | ||
template::[header-declarations] | ||
<refentry> | ||
<refmeta> | ||
<refentrytitle>{mantitle}</refentrytitle> | ||
<manvolnum>{manvolnum}</manvolnum> | ||
<refmiscinfo class="source">libtraceevent</refmiscinfo> | ||
<refmiscinfo class="version">{libtraceevent_version}</refmiscinfo> | ||
<refmiscinfo class="manual">libtraceevent Manual</refmiscinfo> | ||
</refmeta> | ||
<refnamediv> | ||
<refname>{manname1}</refname> | ||
<refname>{manname2}</refname> | ||
<refname>{manname3}</refname> | ||
<refname>{manname4}</refname> | ||
<refname>{manname5}</refname> | ||
<refname>{manname6}</refname> | ||
<refname>{manname7}</refname> | ||
<refname>{manname8}</refname> | ||
<refname>{manname9}</refname> | ||
<refname>{manname10}</refname> | ||
<refname>{manname11}</refname> | ||
<refname>{manname12}</refname> | ||
<refname>{manname13}</refname> | ||
<refname>{manname14}</refname> | ||
<refname>{manname15}</refname> | ||
<refname>{manname16}</refname> | ||
<refname>{manname17}</refname> | ||
<refname>{manname18}</refname> | ||
<refname>{manname19}</refname> | ||
<refname>{manname20}</refname> | ||
<refname>{manname21}</refname> | ||
<refname>{manname22}</refname> | ||
<refname>{manname23}</refname> | ||
<refname>{manname24}</refname> | ||
<refname>{manname25}</refname> | ||
<refname>{manname26}</refname> | ||
<refname>{manname27}</refname> | ||
<refname>{manname28}</refname> | ||
<refname>{manname29}</refname> | ||
<refname>{manname30}</refname> | ||
<refpurpose>{manpurpose}</refpurpose> | ||
</refnamediv> | ||
endif::backend-docbook[] | ||
endif::doctype-manpage[] | ||
|
||
ifdef::backend-xhtml11[] | ||
[linktep-inlinemacro] | ||
<a href="{target}.html">{target}{0?({0})}</a> | ||
endif::backend-xhtml11[] |
Oops, something went wrong.