diff --git a/.bcc.metadata b/.bcc.metadata index c84dac0..21fd784 100644 --- a/.bcc.metadata +++ b/.bcc.metadata @@ -1 +1 @@ -a94aa5005d66f17284f2244ff2018821f35ff4df SOURCES/bcc-src-with-submodule.tar.gz +ae5102ef4109f8af03c7282c1f9f2c3201c3a400 SOURCES/bcc-src-with-submodule.tar.gz diff --git a/SOURCES/bcc-0.14.0-deadlock-print-a-more-explicit-message-when-pthread_.patch b/SOURCES/bcc-0.14.0-deadlock-print-a-more-explicit-message-when-pthread_.patch deleted file mode 100644 index b068ff6..0000000 --- a/SOURCES/bcc-0.14.0-deadlock-print-a-more-explicit-message-when-pthread_.patch +++ /dev/null @@ -1,28 +0,0 @@ -From c263daf925a7a74f7ae64b049cf3def8b298beee Mon Sep 17 00:00:00 2001 -From: Jerome Marchand -Date: Wed, 10 Jun 2020 10:28:42 +0200 -Subject: [PATCH 1/4] deadlock: print a more explicit message when - pthread_mutex_unlock can't be attached - -Most likely, this happen because of a missing --binary argument. Let's -be friendly to our user and print a more useful messsage. ---- - tools/deadlock.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tools/deadlock.py b/tools/deadlock.py -index 17848720..81122adb 100755 ---- a/tools/deadlock.py -+++ b/tools/deadlock.py -@@ -483,7 +483,7 @@ import time - pid=args.pid, - ) - except Exception as e: -- print('%s. Failed to attach to symbol: %s' % (str(e), symbol)) -+ print('%s. Failed to attach to symbol: %s\nIs --binary argument missing?' % (str(e), symbol)) - sys.exit(1) - for symbol in args.lock_symbols: - try: --- -2.25.4 - diff --git a/SOURCES/bcc-0.14.0-loader-suggest-to-install-the-right-kernel-devel-pac.patch b/SOURCES/bcc-0.14.0-loader-suggest-to-install-the-right-kernel-devel-pac.patch deleted file mode 100644 index 6dc155c..0000000 --- a/SOURCES/bcc-0.14.0-loader-suggest-to-install-the-right-kernel-devel-pac.patch +++ /dev/null @@ -1,33 +0,0 @@ -From f7e7347dc1b4873f70a26392c997228999d346a8 Mon Sep 17 00:00:00 2001 -From: Jerome Marchand -Date: Wed, 10 Jun 2020 11:41:59 +0200 -Subject: [PATCH 3/4] loader: suggest to install the right kernel devel package - -Unfortunately, some package dependency system do not allow to make -sure that the kernel development package installed is the same version -as the running kernel. When this happen, the loader, unable to find -the kernel header, will suggest to rebuild the kernel with -CONFIG_IKHEADERS. For most users, this is probably not an option, but -installing the kernel development package corresponding to the running -kernel version is. ---- - src/cc/frontends/clang/loader.cc | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/cc/frontends/clang/loader.cc b/src/cc/frontends/clang/loader.cc -index 9d768d30..79558dd3 100644 ---- a/src/cc/frontends/clang/loader.cc -+++ b/src/cc/frontends/clang/loader.cc -@@ -151,7 +151,8 @@ int ClangLoader::parse(unique_ptr *mod, TableStorage &ts, - kpath = tmpdir; - } else { - std::cout << "Unable to find kernel headers. "; -- std::cout << "Try rebuilding kernel with CONFIG_IKHEADERS=m (module)\n"; -+ std::cout << "Try rebuilding kernel with CONFIG_IKHEADERS=m (module) "; -+ std::cout << "or installing the kernel development package for your running kernel version.\n"; - } - } - --- -2.25.4 - diff --git a/SOURCES/bcc-0.14.0-man-remove-non-existent-x-argument-from-tcpconnect-m.patch b/SOURCES/bcc-0.14.0-man-remove-non-existent-x-argument-from-tcpconnect-m.patch deleted file mode 100644 index fcc49c5..0000000 --- a/SOURCES/bcc-0.14.0-man-remove-non-existent-x-argument-from-tcpconnect-m.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 1762f5c28832842ea2c67ab68feaf7fddb94a543 Mon Sep 17 00:00:00 2001 -From: Jerome Marchand -Date: Wed, 10 Jun 2020 11:30:35 +0200 -Subject: [PATCH 2/4] man: remove non-existent -x argument from tcpconnect man - page - -There's no -x option in tcpconnect. I don't know how it get into the -man page sysnopsis, but it doesn't belong there. ---- - man/man8/tcpconnect.8 | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/man/man8/tcpconnect.8 b/man/man8/tcpconnect.8 -index 60aac1e2..8180f0fe 100644 ---- a/man/man8/tcpconnect.8 -+++ b/man/man8/tcpconnect.8 -@@ -2,7 +2,7 @@ - .SH NAME - tcpconnect \- Trace TCP active connections (connect()). Uses Linux eBPF/bcc. - .SH SYNOPSIS --.B tcpconnect [\-h] [\-c] [\-t] [\-x] [\-p PID] [-P PORT] [\-\-cgroupmap MAPPATH] -+.B tcpconnect [\-h] [\-c] [\-t] [\-p PID] [-P PORT] [\-\-cgroupmap MAPPATH] - .SH DESCRIPTION - This tool traces active TCP connections (eg, via a connect() syscall; - accept() are passive connections). This can be useful for general --- -2.25.4 - diff --git a/SOURCES/bcc-0.14.0-tools-fix-a-python-3-map-issue-in-dbstat-and-dbslowe.patch b/SOURCES/bcc-0.14.0-tools-fix-a-python-3-map-issue-in-dbstat-and-dbslowe.patch deleted file mode 100644 index 603368a..0000000 --- a/SOURCES/bcc-0.14.0-tools-fix-a-python-3-map-issue-in-dbstat-and-dbslowe.patch +++ /dev/null @@ -1,49 +0,0 @@ -From fc72365ad7a3fb66902b3e2d0b0fb712eb8735d3 Mon Sep 17 00:00:00 2001 -From: Jerome Marchand -Date: Wed, 10 Jun 2020 18:29:11 +0200 -Subject: [PATCH 4/4] tools: fix a python 3 map issue in dbstat and dbslower - -In python 3, map returns an iterator and not a list anymore. This -patch cast the map into a list. It fixes the following error: - -$ /usr/share/bcc/tools/dbstat mysql -Traceback (most recent call last): - File "/usr/share/bcc/tools/dbstat", line 95, in - bpf = BPF(text=program, usdt_contexts=usdts) - File "/usr/lib/python3.6/site-packages/bcc/__init__.py", line 339, in __init__ - ctx_array = (ct.c_void_p * len(usdt_contexts))() -TypeError: object of type 'map' has no len() ---- - tools/dbslower.py | 2 +- - tools/dbstat.py | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/tools/dbslower.py b/tools/dbslower.py -index 2f1b6a8b..e2ee7ad0 100755 ---- a/tools/dbslower.py -+++ b/tools/dbslower.py -@@ -188,7 +188,7 @@ int query_end(struct pt_regs *ctx) { - args.pids = map(int, subprocess.check_output( - "pidof postgres".split()).split()) - -- usdts = map(lambda pid: USDT(pid=pid), args.pids) -+ usdts = list(map(lambda pid: USDT(pid=pid), args.pids)) - for usdt in usdts: - usdt.enable_probe("query__start", "query_start") - usdt.enable_probe("query__done", "query_end") -diff --git a/tools/dbstat.py b/tools/dbstat.py -index a89b0971..a7d301b1 100755 ---- a/tools/dbstat.py -+++ b/tools/dbstat.py -@@ -83,7 +83,7 @@ program = program.replace("SCALE", str(1000 if args.microseconds else 1000000)) - program = program.replace("FILTER", "" if args.threshold == 0 else - "if (delta / 1000000 < %d) { return 0; }" % args.threshold) - --usdts = map(lambda pid: USDT(pid=pid), args.pids) -+usdts = list(map(lambda pid: USDT(pid=pid), args.pids)) - for usdt in usdts: - usdt.enable_probe("query__start", "probe_start") - usdt.enable_probe("query__done", "probe_end") --- -2.25.4 - diff --git a/SOURCES/bcc-0.14.0-Manpages-remove-unstable-statement.patch b/SOURCES/bcc-0.16.0-Manpages-remove-unstable-statement.patch similarity index 94% rename from SOURCES/bcc-0.14.0-Manpages-remove-unstable-statement.patch rename to SOURCES/bcc-0.16.0-Manpages-remove-unstable-statement.patch index 2981e68..7832153 100644 --- a/SOURCES/bcc-0.14.0-Manpages-remove-unstable-statement.patch +++ b/SOURCES/bcc-0.16.0-Manpages-remove-unstable-statement.patch @@ -1,4 +1,4 @@ -From 0f53d4de3416d78d0af5c0f70b9a29cb988719c3 Mon Sep 17 00:00:00 2001 +From c42e75d3a80e9fcee66a27edf256452451a3a9b1 Mon Sep 17 00:00:00 2001 From: Jerome Marchand Date: Tue, 6 Aug 2019 14:44:33 +0200 Subject: [PATCH] Manpages: remove unstable statement @@ -30,6 +30,7 @@ enough. man/man8/dcsnoop.8 | 2 -- man/man8/dcstat.8 | 2 -- man/man8/deadlock.8 | 2 -- + man/man8/dirtop.8 | 2 -- man/man8/drsnoop.8 | 2 -- man/man8/execsnoop.8 | 2 -- man/man8/exitsnoop.8 | 2 -- @@ -39,6 +40,7 @@ enough. man/man8/fileslower.8 | 2 -- man/man8/filetop.8 | 2 -- man/man8/funccount.8 | 2 -- + man/man8/funcinterval.8 | 2 -- man/man8/funclatency.8 | 2 -- man/man8/funcslower.8 | 2 -- man/man8/gethostlatency.8 | 2 -- @@ -100,7 +102,7 @@ enough. man/man8/xfsslower.8 | 2 -- man/man8/zfsdist.8 | 2 -- man/man8/zfsslower.8 | 2 -- - 94 files changed, 190 deletions(-) + 96 files changed, 194 deletions(-) diff --git a/man/man8/argdist.8 b/man/man8/argdist.8 index 4116cd4d..aa128d2d 100644 @@ -128,10 +130,10 @@ index bc68a491..705c514e 100644 Brendan Gregg .SH SEE ALSO diff --git a/man/man8/bindsnoop.8 b/man/man8/bindsnoop.8 -index ec7ca1da..2ac4b69e 100644 +index f8fa1850..05ed95a7 100644 --- a/man/man8/bindsnoop.8 +++ b/man/man8/bindsnoop.8 -@@ -136,8 +136,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -141,8 +141,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -282,10 +284,10 @@ index 5642fa1d..1fe4067b 100644 Emmanuel Bretelle .SH SEE ALSO diff --git a/man/man8/capable.8 b/man/man8/capable.8 -index dfb8a6aa..7e545638 100644 +index 342946f8..2b7d13ba 100644 --- a/man/man8/capable.8 +++ b/man/man8/capable.8 -@@ -84,8 +84,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -87,8 +87,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -409,6 +411,19 @@ index 0be3f4ab..7300446a 100644 -Unstable - in development. .SH AUTHOR Kenny Yu +diff --git a/man/man8/dirtop.8 b/man/man8/dirtop.8 +index cc61a676..9a0fd3d9 100644 +--- a/man/man8/dirtop.8 ++++ b/man/man8/dirtop.8 +@@ -105,8 +105,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing + example usage, output, and commentary for this tool. + .SH OS + Linux +-.SH STABILITY +-Unstable - in development. + .SH AUTHOR + Erwan Velu + .SH INSPIRATION diff --git a/man/man8/drsnoop.8 b/man/man8/drsnoop.8 index 572c0dce..3563da81 100644 --- a/man/man8/drsnoop.8 @@ -422,10 +437,10 @@ index 572c0dce..3563da81 100644 .SH AUTHOR Wenbo Zhang diff --git a/man/man8/execsnoop.8 b/man/man8/execsnoop.8 -index 4a88e007..f8db4944 100644 +index e42ad38a..9daaf4b1 100644 --- a/man/man8/execsnoop.8 +++ b/man/man8/execsnoop.8 -@@ -137,8 +137,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -141,8 +141,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -435,10 +450,10 @@ index 4a88e007..f8db4944 100644 Brendan Gregg .SH SEE ALSO diff --git a/man/man8/exitsnoop.8 b/man/man8/exitsnoop.8 -index fb1942b4..f4b0b563 100644 +index 86a43921..c37e1caf 100644 --- a/man/man8/exitsnoop.8 +++ b/man/man8/exitsnoop.8 -@@ -95,8 +95,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -102,8 +102,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -513,10 +528,10 @@ index ba0cbd6e..1f818d68 100644 Brendan Gregg .SH INSPIRATION diff --git a/man/man8/funccount.8 b/man/man8/funccount.8 -index 9039ab33..70e222f2 100644 +index 16ce4fc0..1c7b71c1 100644 --- a/man/man8/funccount.8 +++ b/man/man8/funccount.8 -@@ -97,8 +97,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -104,8 +104,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -525,6 +540,19 @@ index 9039ab33..70e222f2 100644 .SH AUTHOR Brendan Gregg, Sasha Goldshtein .SH SEE ALSO +diff --git a/man/man8/funcinterval.8 b/man/man8/funcinterval.8 +index 89a4a7b4..c9e1f31a 100755 +--- a/man/man8/funcinterval.8 ++++ b/man/man8/funcinterval.8 +@@ -106,8 +106,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing + example usage, output, and commentary for this tool. + .SH OS + Linux +-.SH STABILITY +-Unstable - in development. + .SH AUTHOR + Edward Wu + .SH SEE ALSO diff --git a/man/man8/funclatency.8 b/man/man8/funclatency.8 index b82626cf..3c8e248e 100644 --- a/man/man8/funclatency.8 @@ -592,10 +620,10 @@ index 2ab80dbb..85b36b6e 100644 .SH AUTHOR Howard McLauchlan diff --git a/man/man8/killsnoop.8 b/man/man8/killsnoop.8 -index b90162f0..ff44a306 100644 +index acb376ea..2543b6a6 100644 --- a/man/man8/killsnoop.8 +++ b/man/man8/killsnoop.8 -@@ -75,8 +75,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -82,8 +82,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -644,10 +672,10 @@ index 9d10ca87..3c3b9bba 100644 Brendan Gregg .SH SEE ALSO diff --git a/man/man8/memleak.8 b/man/man8/memleak.8 -index fa52c8cf..718ae3c2 100644 +index 2fd26764..d56cf207 100644 --- a/man/man8/memleak.8 +++ b/man/man8/memleak.8 -@@ -129,7 +129,5 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -135,7 +135,5 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -721,10 +749,10 @@ index be5387b9..270991d8 100644 Brendan Gregg .SH SEE ALSO diff --git a/man/man8/offwaketime.8 b/man/man8/offwaketime.8 -index cdc49a71..b0027832 100644 +index 7334b6f8..f0704e92 100644 --- a/man/man8/offwaketime.8 +++ b/man/man8/offwaketime.8 -@@ -101,8 +101,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -107,8 +107,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -747,10 +775,10 @@ index b6d6f9e1..965ba545 100644 Brendan Gregg .SH SEE ALSO diff --git a/man/man8/opensnoop.8 b/man/man8/opensnoop.8 -index 54a7788a..8a1b9949 100644 +index fee83263..953af623 100644 --- a/man/man8/opensnoop.8 +++ b/man/man8/opensnoop.8 -@@ -145,8 +145,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -148,8 +148,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -773,7 +801,7 @@ index 2164ffaf..9d272c81 100644 Brendan Gregg .SH SEE ALSO diff --git a/man/man8/profile.8 b/man/man8/profile.8 -index 823ff699..7739058f 100644 +index 30871afe..8523a731 100644 --- a/man/man8/profile.8 +++ b/man/man8/profile.8 @@ -148,8 +148,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing @@ -909,7 +937,7 @@ index ffad57c5..df80437f 100644 Jiri Olsa .SH SEE ALSO diff --git a/man/man8/sslsniff.8 b/man/man8/sslsniff.8 -index 72836e27..b9254645 100644 +index 7b945b00..b23f4c68 100644 --- a/man/man8/sslsniff.8 +++ b/man/man8/sslsniff.8 @@ -43,8 +43,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing @@ -974,10 +1002,10 @@ index d13793be..88343e14 100644 Sasha Goldshtein .SH SEE ALSO diff --git a/man/man8/tcpaccept.8 b/man/man8/tcpaccept.8 -index 43219260..4176a32b 100644 +index 603a5ca4..4e7dfc9e 100644 --- a/man/man8/tcpaccept.8 +++ b/man/man8/tcpaccept.8 -@@ -101,8 +101,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -104,8 +104,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -987,10 +1015,10 @@ index 43219260..4176a32b 100644 Brendan Gregg .SH SEE ALSO diff --git a/man/man8/tcpconnect.8 b/man/man8/tcpconnect.8 -index 60aac1e2..856873c0 100644 +index c96058b0..843aaa9c 100644 --- a/man/man8/tcpconnect.8 +++ b/man/man8/tcpconnect.8 -@@ -118,8 +118,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -125,8 +125,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -1078,10 +1106,10 @@ index 525b8082..daf41583 100644 Rodrigo Manyari .SH INSPIRATION diff --git a/man/man8/tcptop.8 b/man/man8/tcptop.8 -index 631c00c3..eddab761 100644 +index e636f456..633b0c93 100644 --- a/man/man8/tcptop.8 +++ b/man/man8/tcptop.8 -@@ -110,8 +110,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -113,8 +113,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -1091,10 +1119,10 @@ index 631c00c3..eddab761 100644 Brendan Gregg .SH INSPIRATION diff --git a/man/man8/tcptracer.8 b/man/man8/tcptracer.8 -index 728c80af..cd444ee4 100644 +index d2346c77..893604d6 100644 --- a/man/man8/tcptracer.8 +++ b/man/man8/tcptracer.8 -@@ -96,8 +96,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -99,8 +99,6 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -1116,10 +1144,10 @@ index da5edf37..f7e459da 100644 .SH AUTHOR Sasha Goldshtein diff --git a/man/man8/trace.8 b/man/man8/trace.8 -index 0b27dbd6..fb33599a 100644 +index e4f06fc7..7b68d833 100644 --- a/man/man8/trace.8 +++ b/man/man8/trace.8 -@@ -206,7 +206,5 @@ Also look in the bcc distribution for a companion _examples.txt file containing +@@ -210,7 +210,5 @@ Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux @@ -1310,5 +1338,5 @@ index d1e2f9c1..31d382f6 100644 Brendan Gregg .SH SEE ALSO -- -2.25.3 +2.25.4 diff --git a/SOURCES/bcc-0.16.0-tools-tcptracer-fix-alignement-in-tcp_ipv6_event_t.patch b/SOURCES/bcc-0.16.0-tools-tcptracer-fix-alignement-in-tcp_ipv6_event_t.patch new file mode 100644 index 0000000..ff7675e --- /dev/null +++ b/SOURCES/bcc-0.16.0-tools-tcptracer-fix-alignement-in-tcp_ipv6_event_t.patch @@ -0,0 +1,46 @@ +From 52c4e8cec4dd560503ff011f8fe7eec5f67b33c9 Mon Sep 17 00:00:00 2001 +From: Jerome Marchand +Date: Thu, 17 Sep 2020 10:37:02 +0200 +Subject: [PATCH 2/2] tools: tcptracer: fix alignement in tcp_ipv6_event_t + +On IPv6, tcptracer ports always appears as zeros: + +Tracing TCP established connections. Ctrl-C to end. +T PID COMM IP SADDR DADDR SPORT DPORT +X 7055 nc 4 127.0.0.1 127.0.0.1 49476 9999 +C 7074 nc 4 127.0.0.1 127.0.0.1 49478 9999 +X 7074 nc 4 127.0.0.1 127.0.0.1 49478 9999 +C 7085 nc 6 [::] [0:0:0:1::] 0 0 +X 7085 nc 6 [::] [0:0:0:1::] 0 0 +C 7086 nc 6 [::] [0:0:0:1::] 0 0 + +This seems related to alignment issue wrt to the __int128 type in +tcp_ipv6_event_t structure. Moving the u8 field ip to the end of the +structure fixes the issue. + +Fixes #2781 +--- + tools/tcptracer.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tools/tcptracer.py b/tools/tcptracer.py +index 2e486b15..3220105e 100755 +--- a/tools/tcptracer.py ++++ b/tools/tcptracer.py +@@ -73,12 +73,12 @@ struct tcp_ipv6_event_t { + u32 type; + u32 pid; + char comm[TASK_COMM_LEN]; +- u8 ip; + unsigned __int128 saddr; + unsigned __int128 daddr; + u16 sport; + u16 dport; + u32 netns; ++ u8 ip; + }; + BPF_PERF_OUTPUT(tcp_ipv6_event); + +-- +2.25.4 + diff --git a/SPECS/bcc.spec b/SPECS/bcc.spec index 95f2731..f4c4f45 100644 --- a/SPECS/bcc.spec +++ b/SPECS/bcc.spec @@ -1,10 +1,14 @@ # luajit is not available RHEL 8 %bcond_with lua -%bcond_without llvm_static +%bcond_with llvm_static + +%if %{without llvm_static} +%global with_llvm_shared 1 +%endif Name: bcc -Version: 0.14.0 +Version: 0.16.0 Release: 2%{?dist} Summary: BPF Compiler Collection (BCC) License: ASL 2.0 @@ -13,31 +17,31 @@ URL: https://github.com/iovisor/bcc Source0: %{url}/releases/download/v%{version}/%{name}-src-with-submodule.tar.gz #Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz Patch0: %{name}-%{version}-Manpages-remove-unstable-statement.patch -Patch1: %{name}-%{version}-deadlock-print-a-more-explicit-message-when-pthread_.patch -Patch2: %{name}-%{version}-man-remove-non-existent-x-argument-from-tcpconnect-m.patch -Patch3: %{name}-%{version}-loader-suggest-to-install-the-right-kernel-devel-pac.patch -Patch4: %{name}-%{version}-tools-fix-a-python-3-map-issue-in-dbstat-and-dbslowe.patch +Patch1: %{name}-%{version}-tools-tcptracer-fix-alignement-in-tcp_ipv6_event_t.patch # Arches will be included as upstream support is added and dependencies are # satisfied in the respective arches ExcludeArch: i686 -BuildRequires: bison, cmake >= 2.8.7, flex, libxml2-devel +BuildRequires: bison +BuildRequires: cmake >= 2.8.7 +BuildRequires: flex +BuildRequires: libxml2-devel BuildRequires: python3-devel BuildRequires: elfutils-libelf-devel BuildRequires: llvm-devel BuildRequires: clang-devel -BuildRequires: ncurses-devel -%if %{with lua} -BuildRequires: pkgconfig(luajit) -%endif %if %{with llvm_static} BuildRequires: llvm-static %endif - -BuildRequires: clang +BuildRequires: ncurses-devel +%if %{with lua} +BuildRequires: pkgconfig(luajit) +%endif +BuildRequires: libbpf-devel >= 0.0.9, libbpf-static >= 0.0.9 Requires: %{name}-tools = %{version}-%{release} +Requires: libbpf >= 0.0.9 %description BCC is a toolkit for creating efficient kernel tracing and manipulation @@ -104,9 +108,12 @@ Command line tools for BPF Compiler Collection (BCC) %build %cmake . \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ - -DREVISION_LAST=%{version} -DREVISION=%{version} -DPYTHON_CMD=python3 + -DREVISION_LAST=%{version} -DREVISION=%{version} -DPYTHON_CMD=python3 \ + -DCMAKE_USE_LIBBPF_PACKAGE:BOOL=TRUE \ + %{?with_llvm_shared:-DENABLE_LLVM_SHARED=1} %make_build + %install %make_install @@ -150,12 +157,14 @@ done %license LICENSE.txt %{_libdir}/lib%{name}.so.* %{_libdir}/libbcc_bpf.so.* +%{_libdir}/libbcc-no-libbpf.so.* %files devel %exclude %{_libdir}/lib%{name}*.a %exclude %{_libdir}/lib%{name}*.la %{_libdir}/lib%{name}.so %{_libdir}/libbcc_bpf.so +%{_libdir}/libbcc-no-libbpf.so %{_libdir}/pkgconfig/lib%{name}.pc %{_includedir}/%{name}/ @@ -206,6 +215,21 @@ done %changelog +* Fri Jan 22 2021 Jerome Marchand - 0.16.0-2 +- Build with libbpf package +- spec file cleanups + +* Mon Oct 26 2020 Jerome Marchand - 0.16.0-1 +- Rebase on bcc-0.16.0 +- Fix IPv6 ports + +* Wed Sep 02 2020 Jerome Marchand - 0.14.0-4 +- Fix KFUNC_PROBE return value +- Forbid trampolines on unsupported arches + +* Tue Jul 21 2020 Jerome Marchand - 0.14.0-3 +- Add KBUILD_MODNAME flag to default cflags + * Thu Jun 11 2020 Jerome Marchand - 0.14.0-2 - Remove criticalstat manpage - Remove compactsnoop on non x86_64