import trace-cmd-2.7-8.el8
This commit is contained in:
		
						commit
						4ff3bb5207
					
				
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | |||||||
|  | SOURCES/trace-cmd-v2.7.tar.gz | ||||||
							
								
								
									
										1
									
								
								.trace-cmd.metadata
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.trace-cmd.metadata
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | |||||||
|  | f95c34b6d9090b81f5c91e97ef71e6b6d835147b SOURCES/trace-cmd-v2.7.tar.gz | ||||||
| @ -0,0 +1,33 @@ | |||||||
|  | From 7e8a6e3d03c0a6a7a5014ce488be1e16f99db006 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Zamir SUN <sztsian@gmail.com> | ||||||
|  | Date: Sat, 11 Nov 2017 10:28:32 +0800 | ||||||
|  | Subject: [PATCH] trace-cmd: Figure out the arch and install library to the | ||||||
|  |  right place | ||||||
|  | 
 | ||||||
|  | Signed-off-by: Zamir SUN <sztsian@gmail.com> | ||||||
|  | ---
 | ||||||
|  |  Makefile | 8 +++++++- | ||||||
|  |  1 file changed, 7 insertions(+), 1 deletion(-) | ||||||
|  | 
 | ||||||
|  | diff --git a/Makefile b/Makefile
 | ||||||
|  | index 5c35143..d10e547 100644
 | ||||||
|  | --- a/Makefile
 | ||||||
|  | +++ b/Makefile
 | ||||||
|  | @@ -47,7 +47,13 @@ html_install = $(prefix)/share/kernelshark/html
 | ||||||
|  |  html_install_SQ = '$(subst ','\'',$(html_install))' | ||||||
|  |  img_install = $(prefix)/share/kernelshark/html/images | ||||||
|  |  img_install_SQ = '$(subst ','\'',$(img_install))' | ||||||
|  | -libdir ?= $(prefix)/lib
 | ||||||
|  | +
 | ||||||
|  | +# figure out what arch we are on and install to the right place
 | ||||||
|  | +ARCH = $(shell getconf LONG_BIT)
 | ||||||
|  | +LIBDIR_32 = /lib
 | ||||||
|  | +LIBDIR_64 = /lib64
 | ||||||
|  | +
 | ||||||
|  | +libdir ?= $(prefix)/$(LIBDIR_$(ARCH))
 | ||||||
|  |  libdir_SQ = '$(subst ','\'',$(libdir))' | ||||||
|  |  includedir = $(prefix)/include/trace-cmd | ||||||
|  |  includedir_SQ = '$(subst ','\'',$(includedir))' | ||||||
|  | -- 
 | ||||||
|  | 2.13.4 | ||||||
|  | 
 | ||||||
							
								
								
									
										53
									
								
								SOURCES/Add-trace-cmd-flightrecorder-service.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								SOURCES/Add-trace-cmd-flightrecorder-service.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,53 @@ | |||||||
|  | From a57b906f58c8d293a1a353dbc5dabea237875759 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: John Kacur <jkacur@redhat.com> | ||||||
|  | Date: Thu, 4 Jun 2015 21:02:13 +0200 | ||||||
|  | Subject: [PATCH] Add trace-cmd flightrecorder service | ||||||
|  | 
 | ||||||
|  | Make it possible to start and stop trace-cmd commands at start-up time. | ||||||
|  | 
 | ||||||
|  | Signed-off-by: John Kacur <jkacur@redhat.com> | ||||||
|  | ---
 | ||||||
|  |  98-trace-cmd.rules |  1 + | ||||||
|  |  trace-cmd.conf     |  4 ++++ | ||||||
|  |  trace-cmd.service  | 10 ++++++++++ | ||||||
|  |  3 files changed, 15 insertions(+) | ||||||
|  |  create mode 100644 98-trace-cmd.rules | ||||||
|  |  create mode 100644 trace-cmd.conf | ||||||
|  |  create mode 100644 trace-cmd.service | ||||||
|  | 
 | ||||||
|  | diff --git a/98-trace-cmd.rules b/98-trace-cmd.rules
 | ||||||
|  | new file mode 100644 | ||||||
|  | index 000000000000..7c073692a0ab
 | ||||||
|  | --- /dev/null
 | ||||||
|  | +++ b/98-trace-cmd.rules
 | ||||||
|  | @@ -0,0 +1 @@
 | ||||||
|  | +SUBSYSTEM=="module", ACTION=="add", PROGRAM="/usr/bin/systemctl try-restart trace-cmd.service"
 | ||||||
|  | diff --git a/trace-cmd.conf b/trace-cmd.conf
 | ||||||
|  | new file mode 100644 | ||||||
|  | index 000000000000..22896d961d64
 | ||||||
|  | --- /dev/null
 | ||||||
|  | +++ b/trace-cmd.conf
 | ||||||
|  | @@ -0,0 +1,4 @@
 | ||||||
|  | +# ftrace based flightrecorder configuration file.
 | ||||||
|  | +
 | ||||||
|  | +# trace-cmd options
 | ||||||
|  | +OPTS="-b 2048 -i -e block -e irq -e mce -e module -e power -e sched -e signal -e sys_enter -e sys_exit -e timer -e workqueue -e kvm -e net"
 | ||||||
|  | diff --git a/trace-cmd.service b/trace-cmd.service
 | ||||||
|  | new file mode 100644 | ||||||
|  | index 000000000000..6439b490f8f4
 | ||||||
|  | --- /dev/null
 | ||||||
|  | +++ b/trace-cmd.service
 | ||||||
|  | @@ -0,0 +1,10 @@
 | ||||||
|  | +[Unit]
 | ||||||
|  | +Description=trace-cmd Flightrecorder
 | ||||||
|  | +
 | ||||||
|  | +[Service]
 | ||||||
|  | +Type=oneshot
 | ||||||
|  | +RemainAfterExit=yes
 | ||||||
|  | +EnvironmentFile=/etc/sysconfig/trace-cmd.conf
 | ||||||
|  | +ExecStart=/usr/bin/trace-cmd start $OPTS
 | ||||||
|  | +ExecStop=/usr/bin/trace-cmd reset
 | ||||||
|  | +ExecReload=/usr/bin/trace-cmd reset; /usr/bin/trace-cmd start $OPTS
 | ||||||
|  | -- 
 | ||||||
|  | 1.8.3.1 | ||||||
|  | 
 | ||||||
							
								
								
									
										170
									
								
								SOURCES/Various-fixes-for-trace-cmd-flightrecorder-systemd.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										170
									
								
								SOURCES/Various-fixes-for-trace-cmd-flightrecorder-systemd.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,170 @@ | |||||||
|  | From 1132270594314acb2eed250f1690d5b10d0fb47c Mon Sep 17 00:00:00 2001 | ||||||
|  | From: John Kacur <jkacur@redhat.com> | ||||||
|  | Date: Tue, 30 Jun 2015 14:30:47 +0200 | ||||||
|  | Subject: [PATCH] Various fixes for trace-cmd flightrecorder - systemd files | ||||||
|  | 
 | ||||||
|  | 1) Allow systemctl enable trace-cmd.service to start trace-cmd.service automatically at system boot | ||||||
|  | 2) Don't stop trace-cmd.service at system shutdown | ||||||
|  | 3) Don't stop trace-cmd.service at each kernel module loading | ||||||
|  | 4) Start trace-cmd.service before any normal services | ||||||
|  | 1) Allow systemctl enable trace-cmd.service to start trace-cmd.service automatically at system boot | ||||||
|  | 
 | ||||||
|  | I added [Install] section in trace-cmd.service. This is necessary to | ||||||
|  | make trace-cmd.service automatically get started at system | ||||||
|  | boot. Without the [Install] section, systemctl enable | ||||||
|  | trace-cmd.service fails as below: | ||||||
|  | 
 | ||||||
|  |   ~]# systemctl enable trace-cmd.service | ||||||
|  |   The unit files have no [Install] section. They are not meant to be enabled | ||||||
|  |   using systemctl. | ||||||
|  |   Possible reasons for having this kind of units are: | ||||||
|  |   1) A unit may be statically enabled by being symlinked from another unit's | ||||||
|  |      .wants/ or .requires/ directory. | ||||||
|  |   2) A unit's purpose may be to act as a helper for some other unit which has | ||||||
|  |      a requirement dependency on it. | ||||||
|  |   3) A unit may be started when needed via activation (socket, path, timer, | ||||||
|  |      D-Bus, udev, scripted systemctl call, ...). | ||||||
|  | 
 | ||||||
|  | WantedBy=multi-user.target in trace-cmd.service means that | ||||||
|  | trace-cmd.service is started if multi-user.target, traditional | ||||||
|  | runlevel 3, is active. | ||||||
|  | 
 | ||||||
|  | 2) Don't stop trace-cmd.service at system shutdown | ||||||
|  | 
 | ||||||
|  | In the current configuration, trace-cmd reset is executed when | ||||||
|  | trace-cmd.service is stopped at system shutdown. Then, trace buffer is | ||||||
|  | cleared. This could become a problem if system crash happens at system | ||||||
|  | shutdown. Even if we get a crash dump at the crash during system | ||||||
|  | shutdown, the crash dump doesn't contain useful trace data. | ||||||
|  | 
 | ||||||
|  | To fix the issue, it's necessary to make trace-cmd.service not stop at | ||||||
|  | system shutdown. | ||||||
|  | 
 | ||||||
|  | To achieve this, I added DefaultDependencies=no into trace-cmd.service. | ||||||
|  | 
 | ||||||
|  | To understand this, first you need to understand how systemd achieves | ||||||
|  | system shutdown. Look at the description of shutdown.target in man 7 | ||||||
|  | systemd.special. | ||||||
|  | 
 | ||||||
|  |      shutdown.target | ||||||
|  |          A special target unit that terminates the services on | ||||||
|  |          system shutdown. | ||||||
|  | 
 | ||||||
|  |          Services that shall be terminated on system shutdown | ||||||
|  |          shall add Conflicts= dependencies to this unit for their | ||||||
|  |          service unit, which is implicitly done when | ||||||
|  |          DefaultDependencies=yes is set (the default). | ||||||
|  | 
 | ||||||
|  | As this explains, systemd adds Conflicts=shutdown.target dependency to | ||||||
|  | all the unit files by default. By this, if we shutdown system for | ||||||
|  | example by systemctl poweroff, then all the currently active services | ||||||
|  | with the default dependency get stopped when shutdown.target is pulled | ||||||
|  | in. | ||||||
|  | 
 | ||||||
|  | Thus, in order not to stop trace-cmd.service at system shutdown, it's | ||||||
|  | necessary to remove the default Conflicts=shutdown.target | ||||||
|  | dependency. This is achieved by DefaultDependencies=no. | ||||||
|  | 
 | ||||||
|  | Also, we need to consider a default dependency around basic.target | ||||||
|  | that is explained in man 7 systemd.special as follows: | ||||||
|  | 
 | ||||||
|  |      basic.target | ||||||
|  |          A special target unit covering basic boot-up. | ||||||
|  | 
 | ||||||
|  |          systemd automatically adds dependencies of the types | ||||||
|  |          Requires= and After= for this target unit to all | ||||||
|  |          services (except for those with DefaultDependencies=no). | ||||||
|  | 
 | ||||||
|  |          Usually this should pull-in all mount points, swap | ||||||
|  |          devices, sockets, timers, and path units and other basic | ||||||
|  |          initialization necessary for general purpose daemons. | ||||||
|  | 
 | ||||||
|  | As this explains, Requires=basic.target is assigned to each service by | ||||||
|  | default. | ||||||
|  | 
 | ||||||
|  | Requires=basic.target means that the service tries to pull in the | ||||||
|  | basic.target when it's pulled in and gets stopped if the basic.target | ||||||
|  | gets stopped. | ||||||
|  | 
 | ||||||
|  | This means that trace-cmd.service gets stopped at system shutdown via | ||||||
|  | Requires=basic.target when basic.target is stopped. | ||||||
|  | 
 | ||||||
|  | Thus, not to stop trace-cmd.service at system shutdown, it's necessary | ||||||
|  | to remove the default Requires=basic.target dependency. This is again | ||||||
|  | achieved by DefaultDependencies=no. | ||||||
|  | 
 | ||||||
|  | 3) Don't stop trace-cmd.service at each kernel module loading | ||||||
|  | 
 | ||||||
|  | We have now udev configuration that restarts trace-cmd.service each | ||||||
|  | time some kernel module is loaded. However, systemctl restart | ||||||
|  | trace-cmd.service means that systemctl stop trace-cmd.service and then | ||||||
|  | systemctl start trace-cmd.service. trace data gets lost when the | ||||||
|  | systemctl stop trace-cmd.service is executed as I explained above. | ||||||
|  | 
 | ||||||
|  | To fix the issue, we remove trace-cmd reset from ExecReload= in | ||||||
|  | trace-cmd.service and use systemctl reload trace-cmd.service in the | ||||||
|  | udev script instead of systemctl try-restart trace-cmd.service. | ||||||
|  | 
 | ||||||
|  | Note that it's enough to trace-cmd start to enable trace events of | ||||||
|  | newly loaded kernel modules. | ||||||
|  | 
 | ||||||
|  | Also note that systemctl is-active trace-cmd.service in the udev | ||||||
|  | script is needed to avoid executing systemctl reload trace-cmd.service | ||||||
|  | when trace-cmd.service is inactive. Without systemctl is-active | ||||||
|  | trace-cmd.service, systemctl reload trace-cmd.service is executed even | ||||||
|  | when trace-cmd.service is inactive and then logs the following | ||||||
|  | message: | ||||||
|  | 
 | ||||||
|  |   Jun 12 20:24:25 localhost systemd: Unit trace-cmd.service cannot be reloaded because it is inactive. | ||||||
|  | 
 | ||||||
|  | 4) Start trace-cmd.service before any normal services | ||||||
|  | 
 | ||||||
|  | trace-cmd.service needs to start early enough to collect useful kernel | ||||||
|  | event information. It's too late if any of the normal services has | ||||||
|  | started. | ||||||
|  | 
 | ||||||
|  | To achieve this, DefaultDependencies=no is again needed to remove | ||||||
|  | After=basic.target dependency assigned by default that is explained in | ||||||
|  | man 7 systemd.special. | ||||||
|  | 
 | ||||||
|  | Also, we need Before=basic.target to start trace-cmd.service *before* | ||||||
|  | any normal services, i.e. any services with the default | ||||||
|  | After=basic.target dependency. | ||||||
|  | 
 | ||||||
|  | Signed-off-by: John Kacur <jkacur@redhat.com> | ||||||
|  | ---
 | ||||||
|  |  98-trace-cmd.rules | 2 +- | ||||||
|  |  trace-cmd.service  | 7 ++++++- | ||||||
|  |  2 files changed, 7 insertions(+), 2 deletions(-) | ||||||
|  | 
 | ||||||
|  | diff --git a/98-trace-cmd.rules b/98-trace-cmd.rules
 | ||||||
|  | index 7c073692a0ab..9575bd819a8e 100644
 | ||||||
|  | --- a/98-trace-cmd.rules
 | ||||||
|  | +++ b/98-trace-cmd.rules
 | ||||||
|  | @@ -1 +1 @@
 | ||||||
|  | -SUBSYSTEM=="module", ACTION=="add", PROGRAM="/usr/bin/systemctl try-restart trace-cmd.service"
 | ||||||
|  | +SUBSYSTEM=="module", ACTION=="add", PROGRAM="/usr/bin/systemctl is-active trace-cmd.service", PROGRAM="/usr/bin/systemctl reload trace-cmd.service"
 | ||||||
|  | diff --git a/trace-cmd.service b/trace-cmd.service
 | ||||||
|  | index 6439b490f8f4..a5cdd046ca0c 100644
 | ||||||
|  | --- a/trace-cmd.service
 | ||||||
|  | +++ b/trace-cmd.service
 | ||||||
|  | @@ -1,5 +1,7 @@
 | ||||||
|  |  [Unit] | ||||||
|  |  Description=trace-cmd Flightrecorder | ||||||
|  | +DefaultDependencies=no
 | ||||||
|  | +Before=basic.target
 | ||||||
|  |   | ||||||
|  |  [Service] | ||||||
|  |  Type=oneshot | ||||||
|  | @@ -7,4 +9,7 @@ RemainAfterExit=yes
 | ||||||
|  |  EnvironmentFile=/etc/sysconfig/trace-cmd.conf | ||||||
|  |  ExecStart=/usr/bin/trace-cmd start $OPTS | ||||||
|  |  ExecStop=/usr/bin/trace-cmd reset | ||||||
|  | -ExecReload=/usr/bin/trace-cmd reset; /usr/bin/trace-cmd start $OPTS
 | ||||||
|  | +ExecReload=/usr/bin/trace-cmd start $OPTS
 | ||||||
|  | +
 | ||||||
|  | +[Install]
 | ||||||
|  | +WantedBy=multi-user.target
 | ||||||
|  | -- 
 | ||||||
|  | 1.8.3.1 | ||||||
|  | 
 | ||||||
							
								
								
									
										7
									
								
								SOURCES/kernelshark.desktop
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								SOURCES/kernelshark.desktop
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,7 @@ | |||||||
|  | [Desktop Entry] | ||||||
|  | Name=Kernelshark | ||||||
|  | Comment=Analyze data output by trace-cmd | ||||||
|  | Exec=kernelshark | ||||||
|  | Type=Application | ||||||
|  | Categories=Development;Profiling; | ||||||
|  | Icon=applications-development | ||||||
							
								
								
									
										35
									
								
								SOURCES/trace-cmd-Force-no-build-of-python2-plugin.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								SOURCES/trace-cmd-Force-no-build-of-python2-plugin.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | |||||||
|  | From 34762bbe9ecd4913bd4a8d04a3ef24cfac6c3d54 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: John Kacur <jkacur@redhat.com> | ||||||
|  | Date: Mon, 11 Jun 2018 14:41:22 +0200 | ||||||
|  | Subject: [PATCH] trace-cmd: Force no build of python2 plugin | ||||||
|  | 
 | ||||||
|  | Force no build of python2 plugin | ||||||
|  | 
 | ||||||
|  | Signed-off-by: John Kacur <jkacur@redhat.com> | ||||||
|  | ---
 | ||||||
|  |  Makefile | 7 ++++--- | ||||||
|  |  1 file changed, 4 insertions(+), 3 deletions(-) | ||||||
|  | 
 | ||||||
|  | diff --git a/Makefile b/Makefile
 | ||||||
|  | index a5d2c384415b..62c469393a76 100644
 | ||||||
|  | --- a/Makefile
 | ||||||
|  | +++ b/Makefile
 | ||||||
|  | @@ -92,11 +92,12 @@ ifndef VERBOSE
 | ||||||
|  |    VERBOSE = 0 | ||||||
|  |  endif | ||||||
|  |   | ||||||
|  | -SWIG_DEFINED := $(shell if swig -help &> /dev/null; then echo 1; else echo 0; fi)
 | ||||||
|  | -ifeq ($(SWIG_DEFINED), 0)
 | ||||||
|  | +# SWIG_DEFINED := $(shell if swig -help &> /dev/null; then echo 1; else echo 0; fi)
 | ||||||
|  | +# Don't build python2 plugin
 | ||||||
|  | +#ifeq ($(SWIG_DEFINED), 0)
 | ||||||
|  |  BUILD_PYTHON := report_noswig | ||||||
|  |  NO_PYTHON = 1 | ||||||
|  | -endif
 | ||||||
|  | +#endif
 | ||||||
|  |   | ||||||
|  |  ifndef NO_PYTHON | ||||||
|  |  PYTHON		:= ctracecmd.so | ||||||
|  | -- 
 | ||||||
|  | 2.14.4 | ||||||
|  | 
 | ||||||
| @ -0,0 +1,32 @@ | |||||||
|  | From a7f654a1fa9087312e77be82574abc1fe10c2ab6 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: John Kacur <jkacur@redhat.com> | ||||||
|  | Date: Tue, 31 Jul 2018 14:53:31 +0200 | ||||||
|  | Subject: [PATCH] trace-cmd: Makefile: Consistent ELF application hardening | ||||||
|  |  build flags | ||||||
|  | 
 | ||||||
|  | These are the recommend build changes for Redhat | ||||||
|  | 
 | ||||||
|  | Signed-off-by: John Kacur <jkacur@redhat.com> | ||||||
|  | ---
 | ||||||
|  |  Makefile | 4 ++-- | ||||||
|  |  1 file changed, 2 insertions(+), 2 deletions(-) | ||||||
|  | 
 | ||||||
|  | diff --git a/Makefile b/Makefile
 | ||||||
|  | index 62c469393a76..17eacc114450 100644
 | ||||||
|  | --- a/Makefile
 | ||||||
|  | +++ b/Makefile
 | ||||||
|  | @@ -243,9 +243,9 @@ INCLUDES = -I. -I ./include -I $(srctree)/../../include $(CONFIG_INCLUDES)
 | ||||||
|  |  include $(src)/features.mk | ||||||
|  |   | ||||||
|  |  # Set compile option CFLAGS if not set elsewhere | ||||||
|  | -CFLAGS ?= -g -Wall
 | ||||||
|  | +CFLAGS ?= -g -Wall -fPIE -fstack-protector-strong --param=ssp-buffer-size=4 -fstack-clash-protection -fexceptions
 | ||||||
|  |  CPPFLAGS ?= | ||||||
|  | -LDFLAGS ?=
 | ||||||
|  | +LDFLAGS ?= -pie -Wl,-z,now
 | ||||||
|  |   | ||||||
|  |  # Required CFLAGS | ||||||
|  |  override CFLAGS += -D_GNU_SOURCE | ||||||
|  | -- 
 | ||||||
|  | 2.14.4 | ||||||
|  | 
 | ||||||
							
								
								
									
										267
									
								
								SPECS/trace-cmd.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										267
									
								
								SPECS/trace-cmd.spec
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,267 @@ | |||||||
|  | # git tag | ||||||
|  | #%%global git_commit trace-cmd-v2.6.2 | ||||||
|  | #%%global git_commit 57371aaa2f469d0ba15fd85276deca7bfdd7ce36 | ||||||
|  | 
 | ||||||
|  | Name: trace-cmd | ||||||
|  | Version: 2.7 | ||||||
|  | Release: 8%{?dist} | ||||||
|  | License: GPLv2 and LGPLv2 | ||||||
|  | Summary: A user interface to Ftrace | ||||||
|  | 
 | ||||||
|  | URL: http://git.kernel.org/?p=linux/kernel/git/rostedt/trace-cmd.git;a=summary | ||||||
|  | # If upstream does not provide tarballs, to generate: | ||||||
|  | # git clone git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git | ||||||
|  | # cd trace-cmd | ||||||
|  | # git archive --prefix=trace-cmd-%%{version}/ -o trace-cmd-v%%{version}.tar.gz %%{git_commit} | ||||||
|  | Source0: https://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git/snapshot/%{name}-v%{version}.tar.gz | ||||||
|  | Source1: kernelshark.desktop | ||||||
|  | Patch1: 0001-trace-cmd-Figure-out-the-arch-and-install-library-to.patch | ||||||
|  | Patch2: trace-cmd-Force-no-build-of-python2-plugin.patch | ||||||
|  | Patch3: Add-trace-cmd-flightrecorder-service.patch | ||||||
|  | Patch4: Various-fixes-for-trace-cmd-flightrecorder-systemd.patch | ||||||
|  | Patch5: trace-cmd-Makefile-Consistent-ELF-application-harden.patch | ||||||
|  | 
 | ||||||
|  | BuildRequires: xmlto | ||||||
|  | BuildRequires: asciidoc | ||||||
|  | BuildRequires: mlocate | ||||||
|  | BuildRequires: systemd | ||||||
|  | # needed for the GUI parts | ||||||
|  | BuildRequires: libxml2-devel | ||||||
|  | BuildRequires: gtk2-devel | ||||||
|  | BuildRequires: glib2-devel | ||||||
|  | BuildRequires: desktop-file-utils | ||||||
|  | 
 | ||||||
|  | %description | ||||||
|  | trace-cmd is a user interface to Ftrace. Instead of needing to use the | ||||||
|  | debugfs directly, trace-cmd will handle of setting of options and | ||||||
|  | tracers and will record into a data file. | ||||||
|  | 
 | ||||||
|  | %package -n kernelshark | ||||||
|  | Summary: GUI analysis for Ftrace data captured by trace-cmd | ||||||
|  | Requires: trace-cmd%{_isa} = %{version}-%{release} | ||||||
|  | 
 | ||||||
|  | %description -n kernelshark | ||||||
|  | Kernelshark is the GUI frontend for analyzing data produced by | ||||||
|  | 'trace-cmd extract' | ||||||
|  | 
 | ||||||
|  | %prep | ||||||
|  | %setup -q -n %{name}-v%{version} | ||||||
|  | %patch1 -p1 | ||||||
|  | %patch2 -p1 | ||||||
|  | %patch3 -p1 | ||||||
|  | %patch4 -p1 | ||||||
|  | %patch5 -p1 | ||||||
|  | 
 | ||||||
|  | %build | ||||||
|  | # MANPAGE_DOCBOOK_XSL define is hack to avoid using locate | ||||||
|  | MANPAGE_DOCBOOK_XSL=`rpm -ql docbook-style-xsl | grep manpages/docbook.xsl` | ||||||
|  | make V=1 CFLAGS="%{optflags} -D_GNU_SOURCE -g -Wall -fPIE -fstack-protector-strong --param=ssp-buffer-size=4 -fstack-clash-protection -fexceptions" LDFLAGS="%{build_ldflags} -pie -Wl,-z,now" \ | ||||||
|  |   MANPAGE_DOCBOOK_XSL=$MANPAGE_DOCBOOK_XSL prefix=%{_prefix} all doc gui | ||||||
|  | 
 | ||||||
|  | %install | ||||||
|  | make V=1 DESTDIR=%{buildroot}/ prefix=%{_prefix} install install_doc install_gui | ||||||
|  | find %{buildroot}%{_mandir} -type f | xargs chmod u-x,g-x,o-x | ||||||
|  | find %{buildroot}%{_datadir} -type f | xargs chmod u-x,g-x,o-x | ||||||
|  | find %{buildroot}%{_libdir} -type f -iname "*.so" | xargs chmod 0755 | ||||||
|  | install -dm 755 %{buildroot}/%{_datadir}/applications | ||||||
|  | install -pm 644 %{SOURCE1} %{buildroot}/%{_datadir}/applications/kernelshark.desktop | ||||||
|  | mkdir -p %{buildroot}/%{_unitdir}/ | ||||||
|  | mkdir -p %{buildroot}/%{_sysconfdir}/sysconfig/ | ||||||
|  | mkdir -p %{buildroot}/%{_udevrulesdir} | ||||||
|  | install -p -m 644 trace-cmd.service %{buildroot}/%{_unitdir}/ | ||||||
|  | install -p -m 644 trace-cmd.conf %{buildroot}/%{_sysconfdir}/sysconfig/ | ||||||
|  | install -p -m 644 98-trace-cmd.rules %{buildroot}/%{_udevrulesdir}/ | ||||||
|  | desktop-file-validate %{buildroot}/%{_datadir}/applications/kernelshark.desktop | ||||||
|  | 
 | ||||||
|  | %files | ||||||
|  | %doc COPYING COPYING.LIB README | ||||||
|  | %{_bindir}/trace-cmd | ||||||
|  | %dir %{_libdir}/%{name} | ||||||
|  | %dir %{_libdir}/%{name}/plugins | ||||||
|  | %{_libdir}/%{name}/plugins/plugin_blk.so | ||||||
|  | %{_libdir}/%{name}/plugins/plugin_cfg80211.so | ||||||
|  | %{_libdir}/%{name}/plugins/plugin_function.so | ||||||
|  | %{_libdir}/%{name}/plugins/plugin_hrtimer.so | ||||||
|  | %{_libdir}/%{name}/plugins/plugin_jbd2.so | ||||||
|  | %{_libdir}/%{name}/plugins/plugin_kmem.so | ||||||
|  | %{_libdir}/%{name}/plugins/plugin_kvm.so | ||||||
|  | %{_libdir}/%{name}/plugins/plugin_mac80211.so | ||||||
|  | %{_libdir}/%{name}/plugins/plugin_sched_switch.so | ||||||
|  | %{_libdir}/%{name}/plugins/plugin_scsi.so | ||||||
|  | %{_libdir}/%{name}/plugins/plugin_tlb.so | ||||||
|  | %{_libdir}/%{name}/plugins/plugin_xen.so | ||||||
|  | 
 | ||||||
|  | %{_mandir}/man1/trace-cmd* | ||||||
|  | %{_mandir}/man5/* | ||||||
|  | %{_unitdir}/trace-cmd.service | ||||||
|  | %{_sysconfdir}/sysconfig/trace-cmd.conf | ||||||
|  | %{_udevrulesdir}/98-trace-cmd.rules | ||||||
|  | 
 | ||||||
|  | %files -n kernelshark | ||||||
|  | %{_bindir}/trace-view | ||||||
|  | %{_bindir}/trace-graph | ||||||
|  | %{_bindir}/kernelshark | ||||||
|  | %{_datadir}/kernelshark | ||||||
|  | %{_datadir}/applications/kernelshark.desktop | ||||||
|  | %{_sysconfdir}/bash_completion.d/trace-cmd.bash | ||||||
|  | %{_mandir}/man1/kernelshark.1.gz | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %changelog | ||||||
|  | * Fri Apr 26 2019 John Kacur <jkacur@redhat.com> - 2.7-8 | ||||||
|  | - Install kernelshark manpage with kernelshark subpackage, not with trace-cmd | ||||||
|  | Resolves: rhbz#1678252 | ||||||
|  | 
 | ||||||
|  | * Tue Apr 02 2019 Clark Williams <williams@redhat.com> - 2.7-7 | ||||||
|  | - added OSCI gating framework | ||||||
|  | Resolves: rhbz#1682420 | ||||||
|  | 
 | ||||||
|  | * Thu Nov 15 2018 John Kacur <jkacur@redhat.com> - 2.7-6 | ||||||
|  | - The changes to the Makefile need to be applied from the specfile too. | ||||||
|  | Resolves: rhbz#1601040 | ||||||
|  | 
 | ||||||
|  | * Tue Jul 31 2018 John Kacur <jkacur@redhat.com> - 2.7-5 | ||||||
|  | - trace-cmd-Makefile-Consistent-ELF-application-harden.patch | ||||||
|  | Resolves: rhbz#1601040 | ||||||
|  | 
 | ||||||
|  | * Mon Jun 11 2018 John Kacur <jkacur@redhat.com> - 2.7-4 | ||||||
|  | - Remove the unsupported python2 plugin | ||||||
|  | Resolves: rhbz#1589786 | ||||||
|  | 
 | ||||||
|  | * Tue May 29 2018 John Kacur <jkacur@redhat.com> - 2.7-3 | ||||||
|  | - Add trace-cmd flightrecorder services | ||||||
|  | Resolves: rhbz#1574544 | ||||||
|  | 
 | ||||||
|  | * Fri Mar 02 2018 Zamir SUN <sztsian@gmail.com> - 2.7-2 | ||||||
|  | - Add python plugins | ||||||
|  | 
 | ||||||
|  | * Fri Mar 02 2018 Zamir SUN <sztsian@gmail.com> - 2.7-1 | ||||||
|  | - Update to 2.7 | ||||||
|  | - Remove Groups tag | ||||||
|  | 
 | ||||||
|  | * Fri Feb 23 2018 Florian Weimer <fweimer@redhat.com> - 2.6.2-3 | ||||||
|  | - Use LDFLAGS from redhat-rpm-config | ||||||
|  | 
 | ||||||
|  | * Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.2-2 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Sat Nov 11 2017 Zamir SUN <zsun@fedoraproject.org> - 2.6.2-1 | ||||||
|  | - Rebase to 2.6.2. | ||||||
|  | 
 | ||||||
|  | * Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.1-3 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.1-2 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Tue May 23 2017 Zamir SUN <zsun@fedoraproject.org> - 2.6.1-1 | ||||||
|  | - Rebase to 2.6.1. | ||||||
|  | 
 | ||||||
|  | * Thu Mar 30 2017 Zamir SUN <zsun@fedoraproject.org> - 2.6-4.20170330git013205 | ||||||
|  | - Rebase to newest upstream version to include various bug fixes. | ||||||
|  | 
 | ||||||
|  | * Mon Mar 27 2017 Zamir SUN <zsun@fedoraproject.org> - 2.6-4 | ||||||
|  | - Fix bz1389219 segmentation fault in trace-cmd snapshot | ||||||
|  | 
 | ||||||
|  | * Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-3 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Wed Oct 19 2016 Zamir SUN <zsun@fedoraproject.org> - 2.6-2 | ||||||
|  | - Add bz1386451-trace-cmd-record-crash-f-before-e.patch | ||||||
|  | - Fix rpmlint error unstripped-binary-or-object | ||||||
|  | - Resolves: rhbz#1386451 | ||||||
|  | 
 | ||||||
|  | * Thu Aug 18 2016 Jon Stanley <jonstanley@gmail.com> - 2.6-1 | ||||||
|  | - Upgrade to uptream 2.6 | ||||||
|  | - Rebase distro patch | ||||||
|  | - Resolves: rhbz#1365951 | ||||||
|  | 
 | ||||||
|  | * Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.1-7 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.1-6 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.1-5 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.1-4 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.1-3 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Wed Jul 24 2013 Jon Stanley <jonstanley@gmail.com> - 2.2.1-2 | ||||||
|  | - Remove addition to %%files - not needed with Makefile patch | ||||||
|  | 
 | ||||||
|  | * Tue Jul 23 2013 Dwight Engen <dwight.engen@oracle.com> - 2.2.1-1 | ||||||
|  | - Update to 2.2.1 | ||||||
|  | 
 | ||||||
|  | * Wed Feb 13 2013 Jon Stanley <jonstanley@gmail.com> - 2.1.0-1 | ||||||
|  | - Update to latest upstream | ||||||
|  | 
 | ||||||
|  | * Thu Sep 13 2012 Jon Stanley <jonstanley@gmail.com> - 1.2-4.20120606git8266dff | ||||||
|  | - Remove %%defattr | ||||||
|  | 
 | ||||||
|  | * Thu Sep 06 2012 Jon Stanley <jonstanley@gmail.com> - 1.2-3.20120606git8266dff | ||||||
|  | - More review fixups | ||||||
|  | 
 | ||||||
|  | * Tue Aug 28 2012 Jon Stanley <jonstanley@gmail.com> - 1.2-2.20120606git8266dff | ||||||
|  | - Rebase to git snapshot so it builds | ||||||
|  | - Fix license tag per review | ||||||
|  | - Move plugin dir per review | ||||||
|  | 
 | ||||||
|  | * Mon Aug 27 2012 Jon Stanley <jonstanley@gmail.com> - 1.2-1 | ||||||
|  | - Rebase to 1.2 | ||||||
|  | - Makefile now supports CFLAGS, drop patch | ||||||
|  | 
 | ||||||
|  | * Sat Feb 19 2011 Jon Stanley <jonstanley@gmail.com> - 1.0.5-1 | ||||||
|  | - Rebase to 1.0.5 | ||||||
|  | - Add Makefile patch to support passing RPM_OPT_FLAGS | ||||||
|  | - Add kernelshark subpackage | ||||||
|  | - Initial Fedora version | ||||||
|  | 
 | ||||||
|  | * Mon Jul 5 2010 John Kacur <jkacur@redhat.com> - 1.0.4-7 | ||||||
|  | - Rebasing to trace-cmd-1.0.4 | ||||||
|  | 
 | ||||||
|  | * Wed Jun 16 2010 John Kacur <jkacur@redhat.com> | ||||||
|  | - Rebasing to trace-cmd-1.0.2 | ||||||
|  | - Added parse-events-Do-not-fail-on-FORMAT-TOO-BIG-event-err.patch | ||||||
|  | - Added trace-cmd-Prevent-latency-tracer-plugins-from-doing-.patch | ||||||
|  | - Added trace-cmd-Prevent-print_graph_duration-buffer-overfl.patch | ||||||
|  | 
 | ||||||
|  | * Wed Jun 9 2010 John Kacur <jkacur@redhat.com> | ||||||
|  | - Added trace-cmd-Makefile-EXTRAVERSION-should-be-set-withou.patch | ||||||
|  | - Added trace-cmd-Makefile-use-a-substitution-reference.patch | ||||||
|  | - add-DESTDIR-to-make.patch | ||||||
|  | - Related: rhbz599507 | ||||||
|  | 
 | ||||||
|  | * Fri Jun 4 2010 John Kacur <jkacur@redhat.com> | ||||||
|  | - Updating to trace-cmd-1.0.1 | ||||||
|  | - Related: rhbz599507 | ||||||
|  | 
 | ||||||
|  | * Wed Apr 21 2010 John Kacur <jkacur@redhat.com> | ||||||
|  | - Using trick from William Cohen to avoid the "locate" problem. | ||||||
|  | 
 | ||||||
|  | * Fri Apr 16 2010 John Kacur <jkacur@redhat.com> | ||||||
|  | - Update the source to the 1.0.0 version | ||||||
|  | - Many fixes to the spec file. | ||||||
|  | 
 | ||||||
|  | * Mon Apr 12 2010 William Cohen <wcohen@redhat.com> | ||||||
|  | - Include manpages in the package. | ||||||
|  | 
 | ||||||
|  | * Fri Apr 9 2010 John Kacur <jkacur@redhat.com> | ||||||
|  | - disabled #patch01 | ||||||
|  | - Updated the trace-cmd source | ||||||
|  | - Changed version to 0.7.0 | ||||||
|  | - Added bogus patch to satisfy rpm requirements | ||||||
|  | - Related:bz519630 | ||||||
|  | 
 | ||||||
|  | * Mon Mar 15 2010 John Kacur <jkacur@redhat.com> | ||||||
|  | - disabled trace-cmd_rusage.patch | ||||||
|  | - Updated the trace-cmd source | ||||||
|  | - Related:bz519630 | ||||||
|  | 
 | ||||||
|  | * Fri Nov 16 2007 Luis Claudio R. Goncalves <lgoncalv@redhat.com> - 1.0-1%{?dist} | ||||||
|  | - Initial packaging | ||||||
|  | - Added a patch to display rusage information | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user