Compare commits
No commits in common. "c9-beta" and "c10s" have entirely different histories.
8
.gitignore
vendored
8
.gitignore
vendored
@ -1 +1,7 @@
|
|||||||
SOURCES/libtracefs-1.6.4.tar.gz
|
/libtracefs-1.0.2.tar.gz
|
||||||
|
/libtracefs-1.1.1.tar.gz
|
||||||
|
/libtracefs-1.2.5.tar.gz
|
||||||
|
/libtracefs-1.3.1.tar.gz
|
||||||
|
/libtracefs-1.5.0.tar.gz
|
||||||
|
/libtracefs-1.6.4.tar.gz
|
||||||
|
/libtracefs-1.8.0.tar.gz
|
||||||
|
@ -1 +0,0 @@
|
|||||||
66a7a64e69d049e52a61923e6b448dc42041c844 SOURCES/libtracefs-1.6.4.tar.gz
|
|
@ -1,100 +0,0 @@
|
|||||||
# git tag
|
|
||||||
#%%global commit 4f24f98960c223e56329519bb90a90f0b2ad813f
|
|
||||||
#%%global commitdate 20201120
|
|
||||||
#%%global shortcommit %%(c=%%{commit}; echo ${c:0:7})
|
|
||||||
|
|
||||||
# LTO causes linking issues randomly like
|
|
||||||
# lto1: internal compiler error: resolution sub id 0x7136344381f3059f not in object file
|
|
||||||
# So disabling LTO at this moment.
|
|
||||||
|
|
||||||
%global _lto_cflags %nil
|
|
||||||
|
|
||||||
Name: libtracefs
|
|
||||||
Version: 1.6.4
|
|
||||||
Release: 1%{?dist}
|
|
||||||
License: LGPLv2+ and GPLv2+
|
|
||||||
Summary: Library for access kernel tracefs
|
|
||||||
|
|
||||||
URL: https://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git/
|
|
||||||
# If upstream does not provide tarballs, to generate:
|
|
||||||
# git clone git://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git
|
|
||||||
# cd libtracefs
|
|
||||||
# git archive --prefix=libtracefs-%%{version}/ -o libtracefs-%%{version}.tar.gz %%{git_commit}
|
|
||||||
#Source0: libtracefs-%%{version}.tar.gz
|
|
||||||
#Source0: https://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git/snapshot/libtracefs-%%{commit}.tar.gz
|
|
||||||
Source0: https://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git/snapshot/libtracefs-%{version}.tar.gz
|
|
||||||
BuildRequires: gcc
|
|
||||||
BuildRequires: make
|
|
||||||
BuildRequires: pkgconfig(libtraceevent)
|
|
||||||
# The libtracefs is meant to be used by perf, trace-cmd etc. in the future, before it's ready in perf, let's add a conflict
|
|
||||||
Conflicts: trace-cmd < 2.9.1-6
|
|
||||||
|
|
||||||
%description
|
|
||||||
libtracefs is a library for accessing kernel tracefs
|
|
||||||
|
|
||||||
%package devel
|
|
||||||
Summary: Development headers of %{name}
|
|
||||||
Requires: %{name}%{_isa} = %{version}-%{release}
|
|
||||||
|
|
||||||
%description devel
|
|
||||||
Development headers of %{name}
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%setup -q
|
|
||||||
|
|
||||||
%build
|
|
||||||
%set_build_flags
|
|
||||||
export GCCLDFLAGS="-Wl,-z,now"
|
|
||||||
%make_build prefix=%{_prefix} libdir=%{_libdir} all
|
|
||||||
|
|
||||||
%install
|
|
||||||
%set_build_flags
|
|
||||||
export GCCLDFLAGS="-Wl,-z,now"
|
|
||||||
%make_install prefix=%{_prefix} libdir=%{_libdir}
|
|
||||||
rm -rf %{buildroot}/%{_libdir}/libtracefs.a
|
|
||||||
|
|
||||||
%files
|
|
||||||
%license LICENSES/LGPL-2.1
|
|
||||||
%license LICENSES/GPL-2.0
|
|
||||||
%{_libdir}/%{name}.so.*
|
|
||||||
|
|
||||||
%files devel
|
|
||||||
%{_includedir}/tracefs/tracefs.h
|
|
||||||
%{_libdir}/pkgconfig/%{name}.pc
|
|
||||||
%{_libdir}/%{name}.so
|
|
||||||
|
|
||||||
%changelog
|
|
||||||
* Fri Aug 16 2024 Jerome Marchand <jmarchan@redhat.com> - 1.6.4-1
|
|
||||||
- Rebase to 1.6.4 (RHEL-36547)
|
|
||||||
|
|
||||||
* Tue Aug 30 2022 Michael Petlan <mpetlan@redhat.com> - 1.3.1-1
|
|
||||||
- Rebase to 1.3.1
|
|
||||||
Related: rhbz#2075215
|
|
||||||
|
|
||||||
* Fri Jan 14 2022 Michael Petlan <mpetlan@redhat.com> - 1.0.2-7
|
|
||||||
- Harden library linking; add the flags to install section too
|
|
||||||
Related: rhbz#2038853
|
|
||||||
|
|
||||||
* Wed Jan 12 2022 Michael Petlan <mpetlan@redhat.com> - 1.0.2-6
|
|
||||||
- Harden library linking
|
|
||||||
Related: rhbz#2038853
|
|
||||||
|
|
||||||
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1.0.2-5
|
|
||||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
|
||||||
Related: rhbz#1991688
|
|
||||||
|
|
||||||
* Thu Apr 22 2021 Jerome Marchand <jmarchan@redhat.com> - 1.0.2-4
|
|
||||||
- Kernelshark rebuild
|
|
||||||
|
|
||||||
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 1.0.2-3
|
|
||||||
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
|
||||||
|
|
||||||
* Wed Mar 24 2021 Jerome Marchand <jmarchan@redhat.com> - 1.0.2-2
|
|
||||||
- Remove conflict for latest trace-cmd
|
|
||||||
|
|
||||||
* Mon Feb 08 2021 Zamir SUN <sztsian@gmail.com> - 1.0.2-1
|
|
||||||
- Update to 1.0.2
|
|
||||||
|
|
||||||
* Mon Nov 23 2020 Zamir SUN <sztsian@gmail.com> - 0-0.1.20201120git4f24f98
|
|
||||||
- Initial libtracefs
|
|
||||||
|
|
6
gating.yaml
Normal file
6
gating.yaml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
--- !Policy
|
||||||
|
product_versions:
|
||||||
|
- rhel-10
|
||||||
|
decision_context: osci_compose_gate
|
||||||
|
rules:
|
||||||
|
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
|
41
libtracefs-Call-va_end-before-exiting-tracefs_hist_s.patch
Normal file
41
libtracefs-Call-va_end-before-exiting-tracefs_hist_s.patch
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
From aecc0b7b4d5ba986517fb86fb0a87a110ad0c816 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:15 +0200
|
||||||
|
Subject: [PATCH 01/15] libtracefs: Call va_end() before exiting
|
||||||
|
tracefs_hist_set_sort_key()
|
||||||
|
|
||||||
|
Each invocation of va_start() must be matched by a corresponding
|
||||||
|
invocation of va_end() in the same function. If add_sort_key() fails,
|
||||||
|
tracefs_hist_set_sort_key() exits without calling it. Call va_end
|
||||||
|
after add_sort_key() fails.
|
||||||
|
|
||||||
|
Fixes a VARARGS error (CWE-237)
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-2-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: 5d1c2ea2d6a7b ("libtracefs: Implement API to create / modify and display histograms")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-hist.c | 4 +++-
|
||||||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-hist.c b/src/tracefs-hist.c
|
||||||
|
index 2b4f17f..87287b5 100644
|
||||||
|
--- a/src/tracefs-hist.c
|
||||||
|
+++ b/src/tracefs-hist.c
|
||||||
|
@@ -596,8 +596,10 @@ int tracefs_hist_set_sort_key(struct tracefs_hist *hist,
|
||||||
|
if (!sort_key)
|
||||||
|
break;
|
||||||
|
tmp = add_sort_key(hist, sort_key, list);
|
||||||
|
- if (!tmp)
|
||||||
|
+ if (!tmp) {
|
||||||
|
+ va_end(ap);
|
||||||
|
goto fail;
|
||||||
|
+ }
|
||||||
|
list = tmp;
|
||||||
|
}
|
||||||
|
va_end(ap);
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
36
libtracefs-Close-dir-in-the-error-path-in-tracefs_ev.patch
Normal file
36
libtracefs-Close-dir-in-the-error-path-in-tracefs_ev.patch
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
From 590e45220531201e09c9a4292bded25d7c941ab8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:28 +0200
|
||||||
|
Subject: [PATCH 14/15] libtracefs: Close dir in the error path in
|
||||||
|
tracefs_event_systems()
|
||||||
|
|
||||||
|
In tracefs_event_systems, we don't close dir if add_list_string()
|
||||||
|
fails. At this point, just breaking out of the loop fixes that.
|
||||||
|
|
||||||
|
Fixes a RESSOURCE_LEAK error (CWE-772)
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-15-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: 056a177e1d686 ("libtracefs: Restructure how string lists work")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-events.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-events.c b/src/tracefs-events.c
|
||||||
|
index 1fa3f2f..83069aa 100644
|
||||||
|
--- a/src/tracefs-events.c
|
||||||
|
+++ b/src/tracefs-events.c
|
||||||
|
@@ -858,7 +858,7 @@ char **tracefs_event_systems(const char *tracing_dir)
|
||||||
|
free(sys);
|
||||||
|
if (ret >= 0) {
|
||||||
|
if (add_list_string(&systems, name) < 0)
|
||||||
|
- goto out_free;
|
||||||
|
+ break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
36
libtracefs-Close-dir-in-the-error-path-in-tracefs_sy.patch
Normal file
36
libtracefs-Close-dir-in-the-error-path-in-tracefs_sy.patch
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
From 0309a876ba3ac13f7a436f292a6bdc0927213a76 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:27 +0200
|
||||||
|
Subject: [PATCH 13/15] libtracefs: Close dir in the error path in
|
||||||
|
tracefs_system_events()
|
||||||
|
|
||||||
|
In tracefs_system_events(), we don't close dir if add_list_string()
|
||||||
|
fails. At this point, just breaking out of the loop fixes that.
|
||||||
|
|
||||||
|
Fixes a RESSOURCE_LEAK error (CWE-772)
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-14-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: 056a177e1d686 ("libtracefs: Restructure how string lists work")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-events.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-events.c b/src/tracefs-events.c
|
||||||
|
index 88325e1..1fa3f2f 100644
|
||||||
|
--- a/src/tracefs-events.c
|
||||||
|
+++ b/src/tracefs-events.c
|
||||||
|
@@ -922,7 +922,7 @@ char **tracefs_system_events(const char *tracing_dir, const char *system)
|
||||||
|
free(event);
|
||||||
|
|
||||||
|
if (add_list_string(&events, name) < 0)
|
||||||
|
- goto out_free;
|
||||||
|
+ break;
|
||||||
|
}
|
||||||
|
|
||||||
|
closedir(dir);
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
38
libtracefs-Don-t-leak-socket-file-descriptor-in-open.patch
Normal file
38
libtracefs-Don-t-leak-socket-file-descriptor-in-open.patch
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
From a01d0ba2d810336870deb8fd4f5366fee45865fe Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:20 +0200
|
||||||
|
Subject: [PATCH 06/15] libtracefs: Don't leak socket file descriptor in
|
||||||
|
open_vsock()
|
||||||
|
|
||||||
|
Close the socket file descriptor if connect() fails.
|
||||||
|
|
||||||
|
Fixes a RESSOURCE_LEAK error (CWE-772)
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-7-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: 5ea41283fa071 ("libtracefs: Add tracefs_find_cid_pid() API")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-vsock.c | 4 +++-
|
||||||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-vsock.c b/src/tracefs-vsock.c
|
||||||
|
index e171382..9171321 100644
|
||||||
|
--- a/src/tracefs-vsock.c
|
||||||
|
+++ b/src/tracefs-vsock.c
|
||||||
|
@@ -19,8 +19,10 @@ static int open_vsock(unsigned int cid, unsigned int port)
|
||||||
|
if (sd < 0)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
- if (connect(sd, (struct sockaddr *)&addr, sizeof(addr)))
|
||||||
|
+ if (connect(sd, (struct sockaddr *)&addr, sizeof(addr))) {
|
||||||
|
+ close(sd);
|
||||||
|
return -1;
|
||||||
|
+ }
|
||||||
|
|
||||||
|
return sd;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
35
libtracefs-Initialize-val-in-build_filter.patch
Normal file
35
libtracefs-Initialize-val-in-build_filter.patch
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
From e6737d4ee9de9af86061de58cbb3fcb14fd0ffbc Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:29 +0200
|
||||||
|
Subject: [PATCH 15/15] libtracefs: Initialize val in build_filter()
|
||||||
|
|
||||||
|
In build_filter(), val is only initialized if filter->rval->type is
|
||||||
|
either EXPR_NUMBER or EXPR_STRING. AS far as I can understand that is
|
||||||
|
expected at that point. Howvever, it doesn't cost much to initialize
|
||||||
|
it in case the parser let some bogus request pass by and it should
|
||||||
|
prevent the static analyser to complain.
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-16-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-sqlhist.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-sqlhist.c b/src/tracefs-sqlhist.c
|
||||||
|
index 0f678c1..08bd0fa 100644
|
||||||
|
--- a/src/tracefs-sqlhist.c
|
||||||
|
+++ b/src/tracefs-sqlhist.c
|
||||||
|
@@ -1109,7 +1109,7 @@ static int build_filter(struct tep_handle *tep, struct sqlhist_bison *sb,
|
||||||
|
const char *val);
|
||||||
|
struct filter *filter = &expr->filter;
|
||||||
|
enum tracefs_compare cmp;
|
||||||
|
- const char *val;
|
||||||
|
+ const char *val = NULL;
|
||||||
|
int and_or = TRACEFS_FILTER_AND;
|
||||||
|
char num[64];
|
||||||
|
int ret;
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
37
libtracefs-Prevent-a-memory-leak-in-add_func_str.patch
Normal file
37
libtracefs-Prevent-a-memory-leak-in-add_func_str.patch
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
From 7fcd8d27ff95670ffb0478486d408162f5299e89 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:21 +0200
|
||||||
|
Subject: [PATCH 07/15] libtracefs: Prevent a memory leak in add_func_str()
|
||||||
|
|
||||||
|
Free func_list if strdup() fails.
|
||||||
|
|
||||||
|
Fixes a RESSOURCE_LEAK error (CWE-772)
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-8-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: c1606fb72264a ("libtracefs: Implement tracefs_filter_functions()")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-tools.c | 4 +++-
|
||||||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-tools.c b/src/tracefs-tools.c
|
||||||
|
index 8e7b46d..74cfe91 100644
|
||||||
|
--- a/src/tracefs-tools.c
|
||||||
|
+++ b/src/tracefs-tools.c
|
||||||
|
@@ -559,8 +559,10 @@ static int add_func_str(struct func_list ***next_func_ptr, const char *func)
|
||||||
|
if (!func_list)
|
||||||
|
return -1;
|
||||||
|
func_list->func = strdup(func);
|
||||||
|
- if (!func_list->func)
|
||||||
|
+ if (!func_list->func) {
|
||||||
|
+ free(func_list);
|
||||||
|
return -1;
|
||||||
|
+ }
|
||||||
|
*next_func = func_list;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
57
libtracefs-Prevent-a-memory-leak-in-open_cpu_files.patch
Normal file
57
libtracefs-Prevent-a-memory-leak-in-open_cpu_files.patch
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
From 8f2593fbbad2a549b854645acde7b11f5e02a924 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:23 +0200
|
||||||
|
Subject: [PATCH 09/15] libtracefs: Prevent a memory leak in open_cpu_files()
|
||||||
|
|
||||||
|
In open_cpu_files(), if realloc() fails, the latest allocated tcpu
|
||||||
|
isn't freed. Rearrange the loop to prevent that.
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-10-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: 564bffddcb117 ("libtracefs: Use tracefs_cpu_read() for tracefs_iterate_raw_events()")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-events.c | 10 +++++-----
|
||||||
|
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-events.c b/src/tracefs-events.c
|
||||||
|
index d65837e..88325e1 100644
|
||||||
|
--- a/src/tracefs-events.c
|
||||||
|
+++ b/src/tracefs-events.c
|
||||||
|
@@ -275,9 +275,12 @@ static int open_cpu_files(struct tracefs_instance *instance, cpu_set_t *cpus,
|
||||||
|
tcpu = tracefs_cpu_snapshot_open(instance, cpu, true);
|
||||||
|
else
|
||||||
|
tcpu = tracefs_cpu_open_mapped(instance, cpu, true);
|
||||||
|
+ if (!tcpu)
|
||||||
|
+ goto error;
|
||||||
|
+
|
||||||
|
tmp = realloc(*all_cpus, (i + 1) * sizeof(*tmp));
|
||||||
|
if (!tmp) {
|
||||||
|
- i--;
|
||||||
|
+ tracefs_cpu_close(tcpu);
|
||||||
|
goto error;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -285,9 +288,6 @@ static int open_cpu_files(struct tracefs_instance *instance, cpu_set_t *cpus,
|
||||||
|
|
||||||
|
memset(tmp + i, 0, sizeof(*tmp));
|
||||||
|
|
||||||
|
- if (!tcpu)
|
||||||
|
- goto error;
|
||||||
|
-
|
||||||
|
tmp[i].tcpu = tcpu;
|
||||||
|
tmp[i].cpu = cpu;
|
||||||
|
i++;
|
||||||
|
@@ -296,7 +296,7 @@ static int open_cpu_files(struct tracefs_instance *instance, cpu_set_t *cpus,
|
||||||
|
return 0;
|
||||||
|
error:
|
||||||
|
tmp = *all_cpus;
|
||||||
|
- for (; i >= 0; i--) {
|
||||||
|
+ for (i--; i >= 0; i--) {
|
||||||
|
tracefs_cpu_close(tmp[i].tcpu);
|
||||||
|
}
|
||||||
|
free(tmp);
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
53
libtracefs-Prevent-a-memory-leak-in-tracefs_synth_ad.patch
Normal file
53
libtracefs-Prevent-a-memory-leak-in-tracefs_synth_ad.patch
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
From 2342293f9aac9ce3706eb7ffaab0e5cf11231215 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:18 +0200
|
||||||
|
Subject: [PATCH 04/15] libtracefs: Prevent a memory leak in
|
||||||
|
tracefs_synth_add_end_field()
|
||||||
|
|
||||||
|
Free tmp_var in the error path.
|
||||||
|
|
||||||
|
Fixes a RESSOURCE_LEAK error (CWE-772)
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-5-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: f1cdbe9b52b07 ("libtracefs: Have end event variables not be the end event field name")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-hist.c | 6 +++---
|
||||||
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-hist.c b/src/tracefs-hist.c
|
||||||
|
index 87287b5..4f4971e 100644
|
||||||
|
--- a/src/tracefs-hist.c
|
||||||
|
+++ b/src/tracefs-hist.c
|
||||||
|
@@ -1576,7 +1576,7 @@ int tracefs_synth_add_end_field(struct tracefs_synth *synth,
|
||||||
|
const struct tep_format_field *field;
|
||||||
|
const char *hname = NULL;
|
||||||
|
char *tmp_var = NULL;
|
||||||
|
- int ret;
|
||||||
|
+ int ret = -1;
|
||||||
|
|
||||||
|
if (!synth || !end_field) {
|
||||||
|
errno = EINVAL;
|
||||||
|
@@ -1594,15 +1594,15 @@ int tracefs_synth_add_end_field(struct tracefs_synth *synth,
|
||||||
|
tmp_var = new_arg(synth);
|
||||||
|
|
||||||
|
if (!trace_verify_event_field(synth->end_event, end_field, &field))
|
||||||
|
- return -1;
|
||||||
|
+ goto out;
|
||||||
|
|
||||||
|
ret = add_var(&synth->end_vars, name ? hname : tmp_var, end_field, false);
|
||||||
|
if (ret)
|
||||||
|
goto out;
|
||||||
|
|
||||||
|
ret = add_synth_fields(synth, field, name, hname ? : tmp_var);
|
||||||
|
- free(tmp_var);
|
||||||
|
out:
|
||||||
|
+ free(tmp_var);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
40
libtracefs-Prevent-a-memory-leak-in-tracefs_system_e.patch
Normal file
40
libtracefs-Prevent-a-memory-leak-in-tracefs_system_e.patch
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
From 7d77b83ce83c318cb83cf2529f45cc950edb44d5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:22 +0200
|
||||||
|
Subject: [PATCH 08/15] libtracefs: Prevent a memory leak in
|
||||||
|
tracefs_system_events()
|
||||||
|
|
||||||
|
If add_list_string() fails, event isn't freed. Free event before
|
||||||
|
calling add_list_string();
|
||||||
|
|
||||||
|
Fixes a RESSOURCE_LEAK error (CWE-772)
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-9-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: 056a177e1d686 ("libtracefs: Restructure how string lists work")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-events.c | 3 +--
|
||||||
|
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-events.c b/src/tracefs-events.c
|
||||||
|
index 906dbe8..d65837e 100644
|
||||||
|
--- a/src/tracefs-events.c
|
||||||
|
+++ b/src/tracefs-events.c
|
||||||
|
@@ -919,11 +919,10 @@ char **tracefs_system_events(const char *tracing_dir, const char *system)
|
||||||
|
free(event);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
+ free(event);
|
||||||
|
|
||||||
|
if (add_list_string(&events, name) < 0)
|
||||||
|
goto out_free;
|
||||||
|
-
|
||||||
|
- free(event);
|
||||||
|
}
|
||||||
|
|
||||||
|
closedir(dir);
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
38
libtracefs-Prevent-a-memory-leak-in-update_fields.patch
Normal file
38
libtracefs-Prevent-a-memory-leak-in-update_fields.patch
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
From 1c9539491d2440eab01ffc3b7a616502ef22cc1b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:17 +0200
|
||||||
|
Subject: [PATCH 03/15] libtracefs: Prevent a memory leak in update_fields()
|
||||||
|
|
||||||
|
In update_fields() p isn't freed is store_str fails. Since p is to be
|
||||||
|
freed whatever the result of store_str() might be, move the call to
|
||||||
|
free() before checking field_name.
|
||||||
|
|
||||||
|
Fixes a RESSOURCE_LEAK error (CWE-772)
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-4-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: fa51df99ad21d ("libtracefs: Allow for simple SQL statements to create a histogram")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-sqlhist.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-sqlhist.c b/src/tracefs-sqlhist.c
|
||||||
|
index ecf09ce..c7b9eff 100644
|
||||||
|
--- a/src/tracefs-sqlhist.c
|
||||||
|
+++ b/src/tracefs-sqlhist.c
|
||||||
|
@@ -810,9 +810,9 @@ static int update_fields(struct tep_handle *tep,
|
||||||
|
if (!p)
|
||||||
|
return -1;
|
||||||
|
field_name = store_str(sb, p);
|
||||||
|
+ free((char *)p);
|
||||||
|
if (!field_name)
|
||||||
|
return -1;
|
||||||
|
- free((char *)p);
|
||||||
|
}
|
||||||
|
|
||||||
|
tfield = tep_find_any_field(event, field_name);
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
50
libtracefs-Prevent-memory-leak-in-append_filer.patch
Normal file
50
libtracefs-Prevent-memory-leak-in-append_filer.patch
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
From 6b356651a3fdbb63531036941dd02fd60da5e52d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:16 +0200
|
||||||
|
Subject: [PATCH 02/15] libtracefs: Prevent memory leak in append_filer()
|
||||||
|
|
||||||
|
The buffer containing the new filter isn't freed if we encounter an
|
||||||
|
error after it was allocated. Free tmp in the error path.
|
||||||
|
|
||||||
|
Fixes a RESSOURCE_LEAK error (CWE-772)
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-3-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: 24b856f0bcf3d ("libtracefs: Add filter creating and verify API")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-filter.c | 6 ++++--
|
||||||
|
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-filter.c b/src/tracefs-filter.c
|
||||||
|
index afe3338..1b1c60e 100644
|
||||||
|
--- a/src/tracefs-filter.c
|
||||||
|
+++ b/src/tracefs-filter.c
|
||||||
|
@@ -250,12 +250,12 @@ static int append_filter(char **filter, unsigned int *state,
|
||||||
|
case TRACEFS_COMPARE_NE: tmp = append_string(tmp, NULL, " != "); break;
|
||||||
|
case TRACEFS_COMPARE_RE:
|
||||||
|
if (!is_string)
|
||||||
|
- goto inval;
|
||||||
|
+ goto free;
|
||||||
|
tmp = append_string(tmp, NULL, "~");
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
if (is_string)
|
||||||
|
- goto inval;
|
||||||
|
+ goto free;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (compare) {
|
||||||
|
@@ -277,6 +277,8 @@ static int append_filter(char **filter, unsigned int *state,
|
||||||
|
*state = S_COMPARE;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
+free:
|
||||||
|
+ free(tmp);
|
||||||
|
inval:
|
||||||
|
errno = EINVAL;
|
||||||
|
return -1;
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
34
libtracefs-Prevent-memory-leak-in-tracefs_dynevent_g.patch
Normal file
34
libtracefs-Prevent-memory-leak-in-tracefs_dynevent_g.patch
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
From f34fb1f29a89196afe3ce793a6395e1687a88a66 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:26 +0200
|
||||||
|
Subject: [PATCH 12/15] libtracefs: Prevent memory leak in
|
||||||
|
tracefs_dynevent_get_all()
|
||||||
|
|
||||||
|
Free events in the error path of tracefs_dynevent_get_all().
|
||||||
|
|
||||||
|
Fixes a RESSOURCE_LEAK error (CWE-772)
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-13-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: b04f18b005c6b ("libtracefs: New APIs for dynamic events")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-dynevents.c | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-dynevents.c b/src/tracefs-dynevents.c
|
||||||
|
index 7a3c45c..85c1fcd 100644
|
||||||
|
--- a/src/tracefs-dynevents.c
|
||||||
|
+++ b/src/tracefs-dynevents.c
|
||||||
|
@@ -589,6 +589,7 @@ tracefs_dynevent_get_all(unsigned int types, const char *system)
|
||||||
|
return all_events;
|
||||||
|
|
||||||
|
error:
|
||||||
|
+ free(events);
|
||||||
|
if (all_events) {
|
||||||
|
for (i = 0; i < all; i++)
|
||||||
|
free(all_events[i]);
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
42
libtracefs-Prevent-memory-leak-in-tracefs_event_syst.patch
Normal file
42
libtracefs-Prevent-memory-leak-in-tracefs_event_syst.patch
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
From efdf7f7fcb9a4e0a5ccefb805d78123332aa7a23 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:19 +0200
|
||||||
|
Subject: [PATCH 05/15] libtracefs: Prevent memory leak in
|
||||||
|
tracefs_event_systems()
|
||||||
|
|
||||||
|
If an error is encountered in the loop, enable and sys might not get
|
||||||
|
freed. Move the calls to free() before possibly exiting the loop.
|
||||||
|
|
||||||
|
Fixes a RESSOURCE_LEAK error (CWE-772)
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-6-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: 056a177e1d686 ("libtracefs: Restructure how string lists work")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-events.c | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-events.c b/src/tracefs-events.c
|
||||||
|
index 1b1693c..906dbe8 100644
|
||||||
|
--- a/src/tracefs-events.c
|
||||||
|
+++ b/src/tracefs-events.c
|
||||||
|
@@ -854,12 +854,12 @@ char **tracefs_event_systems(const char *tracing_dir)
|
||||||
|
enable = trace_append_file(sys, "enable");
|
||||||
|
|
||||||
|
ret = stat(enable, &st);
|
||||||
|
+ free(enable);
|
||||||
|
+ free(sys);
|
||||||
|
if (ret >= 0) {
|
||||||
|
if (add_list_string(&systems, name) < 0)
|
||||||
|
goto out_free;
|
||||||
|
}
|
||||||
|
- free(enable);
|
||||||
|
- free(sys);
|
||||||
|
}
|
||||||
|
|
||||||
|
closedir(dir);
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
34
libtracefs-Prevent-memory-leak-in-tracefs_instance_c.patch
Normal file
34
libtracefs-Prevent-memory-leak-in-tracefs_instance_c.patch
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
From 5e5b2a760b13aeecd72da9bda392d2d3510fc409 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:24 +0200
|
||||||
|
Subject: [PATCH 10/15] libtracefs: Prevent memory leak in
|
||||||
|
tracefs_instance_create()
|
||||||
|
|
||||||
|
Free the path of the instance directory in the error path.
|
||||||
|
|
||||||
|
Fixes a RESSOURCE_LEAK error (CWE-772)
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-11-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: ebbb8507de560 libtracefs: Combine allocate and create APIs into one
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-instance.c | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-instance.c b/src/tracefs-instance.c
|
||||||
|
index 9a26708..dd7decd 100644
|
||||||
|
--- a/src/tracefs-instance.c
|
||||||
|
+++ b/src/tracefs-instance.c
|
||||||
|
@@ -217,6 +217,7 @@ struct tracefs_instance *tracefs_instance_create(const char *name)
|
||||||
|
return inst;
|
||||||
|
|
||||||
|
error:
|
||||||
|
+ tracefs_put_tracing_file(path);
|
||||||
|
tracefs_instance_free(inst);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
38
libtracefs-my_yyinput-should-return-0-when-no-data-c.patch
Normal file
38
libtracefs-my_yyinput-should-return-0-when-no-data-c.patch
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
From 48e906bceb8b4770bfcbaf481338c134658ce2c8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 6 Jun 2024 17:38:25 +0200
|
||||||
|
Subject: [PATCH 11/15] libtracefs: my_yyinput() should return 0 when no data
|
||||||
|
can be read
|
||||||
|
|
||||||
|
YY_INPUT() is redefined in sqlhist.l and basically just call
|
||||||
|
my_yyinput() to do the work. However, YY_INPUT is supposed to return
|
||||||
|
YY_NULL (0 on Unix system) when no data can be read, not -1. This can
|
||||||
|
cause an overflow error in the generated sqlhist-lex.c file.
|
||||||
|
|
||||||
|
Have my_yyinput() returns zero when no buffer is found.
|
||||||
|
|
||||||
|
Link: https://lore.kernel.org/linux-trace-devel/20240606153830.2666120-12-jmarchan@redhat.com
|
||||||
|
|
||||||
|
Fixes: 25446407c5151 ("libtracefs: Added new API tracefs_sql()")
|
||||||
|
Signed-off-by: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
|
||||||
|
---
|
||||||
|
src/tracefs-sqlhist.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/tracefs-sqlhist.c b/src/tracefs-sqlhist.c
|
||||||
|
index c7b9eff..0f678c1 100644
|
||||||
|
--- a/src/tracefs-sqlhist.c
|
||||||
|
+++ b/src/tracefs-sqlhist.c
|
||||||
|
@@ -121,7 +121,7 @@ __hidden int my_yyinput(void *extra, char *buf, int max)
|
||||||
|
struct sqlhist_bison *sb = extra;
|
||||||
|
|
||||||
|
if (!sb || !sb->buffer)
|
||||||
|
- return -1;
|
||||||
|
+ return 0;
|
||||||
|
|
||||||
|
if (sb->buffer_idx + max > sb->buffer_size)
|
||||||
|
max = sb->buffer_size - sb->buffer_idx;
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
132
libtracefs.spec
Normal file
132
libtracefs.spec
Normal file
@ -0,0 +1,132 @@
|
|||||||
|
Name: libtracefs
|
||||||
|
Version: 1.8.0
|
||||||
|
Release: 6%{?dist}
|
||||||
|
License: LGPL-2.1-or-later AND GPL-2.0-or-later AND GPL-2.0-only
|
||||||
|
Summary: Library for access kernel tracefs
|
||||||
|
|
||||||
|
URL: https://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git/
|
||||||
|
Source0: https://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git/snapshot/libtracefs-%{version}.tar.gz
|
||||||
|
Patch0: libtracefs-Call-va_end-before-exiting-tracefs_hist_s.patch
|
||||||
|
Patch1: libtracefs-Prevent-memory-leak-in-append_filer.patch
|
||||||
|
Patch2: libtracefs-Prevent-a-memory-leak-in-update_fields.patch
|
||||||
|
Patch3: libtracefs-Prevent-a-memory-leak-in-tracefs_synth_ad.patch
|
||||||
|
Patch4: libtracefs-Prevent-memory-leak-in-tracefs_event_syst.patch
|
||||||
|
Patch5: libtracefs-Don-t-leak-socket-file-descriptor-in-open.patch
|
||||||
|
Patch6: libtracefs-Prevent-a-memory-leak-in-add_func_str.patch
|
||||||
|
Patch7: libtracefs-Prevent-a-memory-leak-in-tracefs_system_e.patch
|
||||||
|
Patch8: libtracefs-Prevent-a-memory-leak-in-open_cpu_files.patch
|
||||||
|
Patch9: libtracefs-Prevent-memory-leak-in-tracefs_instance_c.patch
|
||||||
|
Patch10: libtracefs-my_yyinput-should-return-0-when-no-data-c.patch
|
||||||
|
Patch11: libtracefs-Prevent-memory-leak-in-tracefs_dynevent_g.patch
|
||||||
|
Patch12: libtracefs-Close-dir-in-the-error-path-in-tracefs_sy.patch
|
||||||
|
Patch13: libtracefs-Close-dir-in-the-error-path-in-tracefs_ev.patch
|
||||||
|
Patch14: libtracefs-Initialize-val-in-build_filter.patch
|
||||||
|
|
||||||
|
BuildRequires: gcc
|
||||||
|
BuildRequires: make
|
||||||
|
BuildRequires: pkgconfig(libtraceevent) >= 1.8.0
|
||||||
|
# The libtracefs is meant to be used by perf, trace-cmd etc. in the future, before it's ready in perf, let's add a conflict
|
||||||
|
Conflicts: trace-cmd < 2.9.1-6
|
||||||
|
|
||||||
|
%description
|
||||||
|
libtracefs is a library for accessing kernel tracefs
|
||||||
|
|
||||||
|
%package devel
|
||||||
|
Summary: Development headers of %{name}
|
||||||
|
Requires: %{name}%{_isa} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description devel
|
||||||
|
Development headers of %{name}
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1
|
||||||
|
|
||||||
|
%build
|
||||||
|
%set_build_flags
|
||||||
|
# parallel compiling don't always work
|
||||||
|
make -O -j1 V=1 VERBOSE=1 prefix=%{_prefix} libdir=%{_libdir} all
|
||||||
|
|
||||||
|
%install
|
||||||
|
%make_install prefix=%{_prefix} libdir=%{_libdir}
|
||||||
|
rm -rf %{buildroot}/%{_libdir}/libtracefs.a
|
||||||
|
|
||||||
|
%files
|
||||||
|
%license LICENSES/LGPL-2.1
|
||||||
|
%license LICENSES/GPL-2.0
|
||||||
|
%{_libdir}/%{name}.so.1
|
||||||
|
%{_libdir}/%{name}.so.1.8.0
|
||||||
|
|
||||||
|
%files devel
|
||||||
|
%{_includedir}/tracefs/tracefs.h
|
||||||
|
%{_libdir}/pkgconfig/%{name}.pc
|
||||||
|
%{_libdir}/%{name}.so
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1.8.0-6
|
||||||
|
- Bump release for October 2024 mass rebuild:
|
||||||
|
Resolves: RHEL-64018
|
||||||
|
|
||||||
|
* Wed Jul 10 2024 Jerome Marchand <jmarchan@redhat.com> - 1.8.0-5
|
||||||
|
- Fix SAST vulnerabilities (RHEL-40413)
|
||||||
|
|
||||||
|
* Tue Jul 09 2024 Jerome Marchand <jmarchan@redhat.com> - 1.8.0-4
|
||||||
|
- Build with LTO (RHEL-46715)
|
||||||
|
|
||||||
|
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 1.8.0-3
|
||||||
|
- Bump release for June 2024 mass rebuild
|
||||||
|
|
||||||
|
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.0-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Jan 23 2024 Zamir SUN <sztsian@gmail.com> - 1.8.0-1
|
||||||
|
- Update to 1.8.0 (RHBZ#2213357)
|
||||||
|
|
||||||
|
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.4-4
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.4-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jun 05 2023 Zamir SUN <sztsian@gmail.com> - 1.6.4-2
|
||||||
|
- SPDX migration
|
||||||
|
|
||||||
|
* Wed Apr 05 2023 Zamir SUN <sztsian@gmail.com> - 1.6.4-1
|
||||||
|
- Update to 1.6.4
|
||||||
|
|
||||||
|
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.0-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Oct 11 2022 Zamir SUN <sztsian@gmail.com> - 1.5.0-1
|
||||||
|
- Update to 1.5.0
|
||||||
|
|
||||||
|
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.1-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||||
|
|
||||||
|
* Fri Apr 15 2022 Zamir SUN <sztsian@gmail.com> - 1.3.1-2
|
||||||
|
- Update with newer libtracefs
|
||||||
|
|
||||||
|
* Wed Apr 13 2022 Zamir SUN <sztsian@gmail.com> - 1.3.1-1
|
||||||
|
- Update to 1.3.1
|
||||||
|
|
||||||
|
* Tue Feb 15 2022 Zamir SUN <sztsian@gmail.com> - 1.2.5-1
|
||||||
|
- Update to 1.2.5
|
||||||
|
|
||||||
|
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.1-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.1-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||||
|
|
||||||
|
|
||||||
|
* Mon Apr 19 2021 Zamir SUN <sztsian@gmail.com> - 1.1.1-1
|
||||||
|
- Update to 1.1.1
|
||||||
|
|
||||||
|
* Wed Mar 24 2021 Jerome Marchand <jmarchan@redhat.com> - 1.0.2-2
|
||||||
|
- Remove conflict for latest trace-cmd
|
||||||
|
|
||||||
|
* Mon Feb 08 2021 Zamir SUN <sztsian@gmail.com> - 1.0.2-1
|
||||||
|
- Update to 1.0.2
|
||||||
|
|
||||||
|
* Mon Nov 23 2020 Zamir SUN <sztsian@gmail.com> - 0-0.1.20201120git4f24f98
|
||||||
|
- Initial libtracefs
|
||||||
|
|
1
sources
Normal file
1
sources
Normal file
@ -0,0 +1 @@
|
|||||||
|
SHA512 (libtracefs-1.8.0.tar.gz) = 2d9728186de63f03a2222d56efe6b373c038519ad1e81dd10d97640c296696df6b0661743dcd9e851edda5225342ea10a8746434439f7ad878e26780b797eb6c
|
29
tests/scripts/run_tests.sh
Executable file
29
tests/scripts/run_tests.sh
Executable file
@ -0,0 +1,29 @@
|
|||||||
|
#!/usr/bin/bash
|
||||||
|
|
||||||
|
if rpm -q --quiet libtracefs; then
|
||||||
|
:
|
||||||
|
else
|
||||||
|
sudo dnf install -y libtracefs
|
||||||
|
if [[ $? != 0 ]]; then
|
||||||
|
echo "install of libtracefs failed!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "The libtracefs is meant to be used by perf, trace-cmd etc. Check installation."
|
||||||
|
if [[ ! -f /usr/lib64/libtracefs.so.1 ]]; then
|
||||||
|
echo "/usr/lib64/libtracefs.so.1 not found!"
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Check the trace-cmd works."
|
||||||
|
if ! rpm -q --quiet trace-cmd; then
|
||||||
|
sudo dnf install -y trace-cmd
|
||||||
|
if [[ $? != 0 ]]; then
|
||||||
|
echo "install trace-cmd failed when libtracefs exist!"
|
||||||
|
exit 3
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
trace-cmd list || exit 4
|
||||||
|
|
||||||
|
exit 0
|
11
tests/tests.yml
Normal file
11
tests/tests.yml
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
- hosts: localhost
|
||||||
|
roles:
|
||||||
|
- role: standard-test-basic
|
||||||
|
tags:
|
||||||
|
- classic
|
||||||
|
tests:
|
||||||
|
- simple:
|
||||||
|
dir: scripts
|
||||||
|
run: ./run_tests.sh
|
||||||
|
required_packages:
|
||||||
|
- libtracefs trace-cmd
|
Loading…
Reference in New Issue
Block a user