import bcc-0.16.0-3.el8
This commit is contained in:
parent
90048e4a0b
commit
d254d610d8
@ -1 +1 @@
|
|||||||
a94aa5005d66f17284f2244ff2018821f35ff4df SOURCES/bcc-src-with-submodule.tar.gz
|
ae5102ef4109f8af03c7282c1f9f2c3201c3a400 SOURCES/bcc-src-with-submodule.tar.gz
|
||||||
|
@ -1,24 +0,0 @@
|
|||||||
From 68abb51ed067c4317b991cec0bbc2ea4e7f6ddab Mon Sep 17 00:00:00 2001
|
|
||||||
From: William Findlay <william@williamfindlay.com>
|
|
||||||
Date: Wed, 17 Jun 2020 12:07:48 -0400
|
|
||||||
Subject: [PATCH] Add KBUILD_MODNAME flag to default cflags
|
|
||||||
|
|
||||||
---
|
|
||||||
src/cc/frontends/clang/kbuild_helper.cc | 1 +
|
|
||||||
1 file changed, 1 insertion(+)
|
|
||||||
|
|
||||||
diff --git a/src/cc/frontends/clang/kbuild_helper.cc b/src/cc/frontends/clang/kbuild_helper.cc
|
|
||||||
index db5ca7f6..e3aade89 100644
|
|
||||||
--- a/src/cc/frontends/clang/kbuild_helper.cc
|
|
||||||
+++ b/src/cc/frontends/clang/kbuild_helper.cc
|
|
||||||
@@ -101,6 +101,7 @@ int KBuildHelper::get_flags(const char *uname_machine, vector<string> *cflags) {
|
|
||||||
cflags->push_back("-D__HAVE_BUILTIN_BSWAP16__");
|
|
||||||
cflags->push_back("-D__HAVE_BUILTIN_BSWAP32__");
|
|
||||||
cflags->push_back("-D__HAVE_BUILTIN_BSWAP64__");
|
|
||||||
+ cflags->push_back("-DKBUILD_MODNAME=\"bcc\"");
|
|
||||||
|
|
||||||
// If ARCH env variable is set, pass this along.
|
|
||||||
if (archenv)
|
|
||||||
--
|
|
||||||
2.25.4
|
|
||||||
|
|
@ -1,184 +0,0 @@
|
|||||||
From 8999b2f610e84a2413dbea1717fe6e2ebcd1eea0 Mon Sep 17 00:00:00 2001
|
|
||||||
From: William Findlay <william@williamfindlay.com>
|
|
||||||
Date: Wed, 17 Jun 2020 18:59:43 -0400
|
|
||||||
Subject: [PATCH] Delete existing kbuild_modname definitions
|
|
||||||
|
|
||||||
---
|
|
||||||
examples/networking/xdp/xdp_drop_count.py | 1 -
|
|
||||||
examples/networking/xdp/xdp_macswap_count.py | 1 -
|
|
||||||
examples/networking/xdp/xdp_redirect_cpu.py | 1 -
|
|
||||||
examples/networking/xdp/xdp_redirect_map.py | 1 -
|
|
||||||
examples/tracing/nflatency.py | 1 -
|
|
||||||
tests/python/test_clang.py | 8 --------
|
|
||||||
tools/tcplife.lua | 1 -
|
|
||||||
tools/tcplife.py | 1 -
|
|
||||||
tools/tcpstates.py | 1 -
|
|
||||||
9 files changed, 16 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/examples/networking/xdp/xdp_drop_count.py b/examples/networking/xdp/xdp_drop_count.py
|
|
||||||
index f03273e9..512e0a20 100755
|
|
||||||
--- a/examples/networking/xdp/xdp_drop_count.py
|
|
||||||
+++ b/examples/networking/xdp/xdp_drop_count.py
|
|
||||||
@@ -52,7 +52,6 @@ mode = BPF.XDP
|
|
||||||
|
|
||||||
# load BPF program
|
|
||||||
b = BPF(text = """
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <uapi/linux/bpf.h>
|
|
||||||
#include <linux/in.h>
|
|
||||||
#include <linux/if_ether.h>
|
|
||||||
diff --git a/examples/networking/xdp/xdp_macswap_count.py b/examples/networking/xdp/xdp_macswap_count.py
|
|
||||||
index 0e2b21ca..770ce8ca 100755
|
|
||||||
--- a/examples/networking/xdp/xdp_macswap_count.py
|
|
||||||
+++ b/examples/networking/xdp/xdp_macswap_count.py
|
|
||||||
@@ -50,7 +50,6 @@ mode = BPF.XDP
|
|
||||||
|
|
||||||
# load BPF program
|
|
||||||
b = BPF(text = """
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <uapi/linux/bpf.h>
|
|
||||||
#include <linux/in.h>
|
|
||||||
#include <linux/if_ether.h>
|
|
||||||
diff --git a/examples/networking/xdp/xdp_redirect_cpu.py b/examples/networking/xdp/xdp_redirect_cpu.py
|
|
||||||
index 15b0d09b..470079f4 100755
|
|
||||||
--- a/examples/networking/xdp/xdp_redirect_cpu.py
|
|
||||||
+++ b/examples/networking/xdp/xdp_redirect_cpu.py
|
|
||||||
@@ -30,7 +30,6 @@ max_cpu = cpu_count()
|
|
||||||
|
|
||||||
# load BPF program
|
|
||||||
b = BPF(text = """
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <uapi/linux/bpf.h>
|
|
||||||
#include <linux/in.h>
|
|
||||||
#include <linux/if_ether.h>
|
|
||||||
diff --git a/examples/networking/xdp/xdp_redirect_map.py b/examples/networking/xdp/xdp_redirect_map.py
|
|
||||||
index 4a622723..4936ac1e 100755
|
|
||||||
--- a/examples/networking/xdp/xdp_redirect_map.py
|
|
||||||
+++ b/examples/networking/xdp/xdp_redirect_map.py
|
|
||||||
@@ -29,7 +29,6 @@ out_idx = ip.link_lookup(ifname=out_if)[0]
|
|
||||||
|
|
||||||
# load BPF program
|
|
||||||
b = BPF(text = """
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <uapi/linux/bpf.h>
|
|
||||||
#include <linux/in.h>
|
|
||||||
#include <linux/if_ether.h>
|
|
||||||
diff --git a/examples/tracing/nflatency.py b/examples/tracing/nflatency.py
|
|
||||||
index 76716490..c201930a 100755
|
|
||||||
--- a/examples/tracing/nflatency.py
|
|
||||||
+++ b/examples/tracing/nflatency.py
|
|
||||||
@@ -12,7 +12,6 @@ import time
|
|
||||||
from bcc import BPF
|
|
||||||
|
|
||||||
BPF_SRC = """
|
|
||||||
-#define KBUILD_MODNAME "bpf_hook_nflatency"
|
|
||||||
#include <linux/ip.h>
|
|
||||||
#include <linux/ipv6.h>
|
|
||||||
#include <linux/tcp.h>
|
|
||||||
diff --git a/tests/python/test_clang.py b/tests/python/test_clang.py
|
|
||||||
index 886eebed..648494cf 100755
|
|
||||||
--- a/tests/python/test_clang.py
|
|
||||||
+++ b/tests/python/test_clang.py
|
|
||||||
@@ -78,7 +78,6 @@ int count_foo(struct pt_regs *ctx, unsigned long a, unsigned long b) {
|
|
||||||
|
|
||||||
def test_probe_read3(self):
|
|
||||||
text = """
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <net/tcp.h>
|
|
||||||
#define _(P) ({typeof(P) val = 0; bpf_probe_read(&val, sizeof(val), &P); val;})
|
|
||||||
int count_tcp(struct pt_regs *ctx, struct sk_buff *skb) {
|
|
||||||
@@ -90,7 +89,6 @@ int count_tcp(struct pt_regs *ctx, struct sk_buff *skb) {
|
|
||||||
|
|
||||||
def test_probe_read4(self):
|
|
||||||
text = """
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <net/tcp.h>
|
|
||||||
#define _(P) ({typeof(P) val = 0; bpf_probe_read(&val, sizeof(val), &P); val;})
|
|
||||||
int test(struct pt_regs *ctx, struct sk_buff *skb) {
|
|
||||||
@@ -102,7 +100,6 @@ int test(struct pt_regs *ctx, struct sk_buff *skb) {
|
|
||||||
|
|
||||||
def test_probe_read_whitelist1(self):
|
|
||||||
text = """
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <net/tcp.h>
|
|
||||||
int count_tcp(struct pt_regs *ctx, struct sk_buff *skb) {
|
|
||||||
// The below define is in net/tcp.h:
|
|
||||||
@@ -120,7 +117,6 @@ int count_tcp(struct pt_regs *ctx, struct sk_buff *skb) {
|
|
||||||
|
|
||||||
def test_probe_read_whitelist2(self):
|
|
||||||
text = """
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <net/tcp.h>
|
|
||||||
int count_tcp(struct pt_regs *ctx, struct sk_buff *skb) {
|
|
||||||
// The below define is in net/tcp.h:
|
|
||||||
@@ -1072,7 +1068,6 @@ int test(struct __sk_buff *ctx) {
|
|
||||||
|
|
||||||
def test_probe_read_return(self):
|
|
||||||
text = """
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <uapi/linux/ptrace.h>
|
|
||||||
#include <linux/tcp.h>
|
|
||||||
static inline unsigned char *my_skb_transport_header(struct sk_buff *skb) {
|
|
||||||
@@ -1088,7 +1083,6 @@ int test(struct pt_regs *ctx, struct sock *sk, struct sk_buff *skb) {
|
|
||||||
|
|
||||||
def test_probe_read_multiple_return(self):
|
|
||||||
text = """
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <uapi/linux/ptrace.h>
|
|
||||||
#include <linux/tcp.h>
|
|
||||||
static inline u64 error_function() {
|
|
||||||
@@ -1109,7 +1103,6 @@ int test(struct pt_regs *ctx, struct sock *sk, struct sk_buff *skb) {
|
|
||||||
|
|
||||||
def test_probe_read_return_expr(self):
|
|
||||||
text = """
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <uapi/linux/ptrace.h>
|
|
||||||
#include <linux/tcp.h>
|
|
||||||
static inline unsigned char *my_skb_transport_header(struct sk_buff *skb) {
|
|
||||||
@@ -1125,7 +1118,6 @@ int test(struct pt_regs *ctx, struct sock *sk, struct sk_buff *skb) {
|
|
||||||
|
|
||||||
def test_probe_read_return_call(self):
|
|
||||||
text = """
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <uapi/linux/ptrace.h>
|
|
||||||
#include <linux/tcp.h>
|
|
||||||
static inline struct tcphdr *my_skb_transport_header(struct sk_buff *skb) {
|
|
||||||
diff --git a/tools/tcplife.lua b/tools/tcplife.lua
|
|
||||||
index 3f4f6afd..5e311631 100755
|
|
||||||
--- a/tools/tcplife.lua
|
|
||||||
+++ b/tools/tcplife.lua
|
|
||||||
@@ -25,7 +25,6 @@ uint16_t ntohs(uint16_t netshort);
|
|
||||||
|
|
||||||
local program = [[
|
|
||||||
#include <uapi/linux/ptrace.h>
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <linux/tcp.h>
|
|
||||||
#include <net/sock.h>
|
|
||||||
#include <bcc/proto.h>
|
|
||||||
diff --git a/tools/tcplife.py b/tools/tcplife.py
|
|
||||||
index d4e679dd..c2bd8236 100755
|
|
||||||
--- a/tools/tcplife.py
|
|
||||||
+++ b/tools/tcplife.py
|
|
||||||
@@ -66,7 +66,6 @@ debug = 0
|
|
||||||
# define BPF program
|
|
||||||
bpf_text = """
|
|
||||||
#include <uapi/linux/ptrace.h>
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <linux/tcp.h>
|
|
||||||
#include <net/sock.h>
|
|
||||||
#include <bcc/proto.h>
|
|
||||||
diff --git a/tools/tcpstates.py b/tools/tcpstates.py
|
|
||||||
index 48f87884..0fe5d89a 100755
|
|
||||||
--- a/tools/tcpstates.py
|
|
||||||
+++ b/tools/tcpstates.py
|
|
||||||
@@ -61,7 +61,6 @@ debug = 0
|
|
||||||
# define BPF program
|
|
||||||
bpf_header = """
|
|
||||||
#include <uapi/linux/ptrace.h>
|
|
||||||
-#define KBUILD_MODNAME "foo"
|
|
||||||
#include <linux/tcp.h>
|
|
||||||
#include <net/sock.h>
|
|
||||||
#include <bcc/proto.h>
|
|
||||||
--
|
|
||||||
2.25.4
|
|
||||||
|
|
@ -1,92 +0,0 @@
|
|||||||
From cdfa74f35910421e807d7e1deb212a5bca138413 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Mauricio=20V=C3=A1squez?= <mauricio@kinvolk.io>
|
|
||||||
Date: Thu, 21 May 2020 11:50:52 -0500
|
|
||||||
Subject: [PATCH 1/3] Fix KFUNC_PROBE return value
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
The KFUNC_PROBE macro is using "void" as return type, this is causing problems
|
|
||||||
in some tools that have a filtering enable that returns 0.
|
|
||||||
|
|
||||||
Reproducer: (Notice that it requires BTF support)
|
|
||||||
|
|
||||||
```
|
|
||||||
$ python opensnoop.py --pid 5
|
|
||||||
/virtual/main.c:33:21: error: void function '____kretfunc__do_sys_open' should not return a value [-Wreturn-type]
|
|
||||||
if (pid != 5) { return 0; }
|
|
||||||
^ ~
|
|
||||||
1 error generated.
|
|
||||||
...
|
|
||||||
```
|
|
||||||
|
|
||||||
Signed-off-by: Mauricio Vásquez <mauricio@kinvolk.io>
|
|
||||||
---
|
|
||||||
src/cc/export/helpers.h | 4 ++--
|
|
||||||
tools/klockstat.py | 6 +++---
|
|
||||||
tools/opensnoop.py | 2 ++
|
|
||||||
3 files changed, 7 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/cc/export/helpers.h b/src/cc/export/helpers.h
|
|
||||||
index b38b3f20..c6edc9cd 100644
|
|
||||||
--- a/src/cc/export/helpers.h
|
|
||||||
+++ b/src/cc/export/helpers.h
|
|
||||||
@@ -998,7 +998,7 @@ int raw_tracepoint__##event(struct bpf_raw_tracepoint_args *ctx)
|
|
||||||
#define BPF_PROG(name, args...) \
|
|
||||||
int name(unsigned long long *ctx); \
|
|
||||||
__attribute__((always_inline)) \
|
|
||||||
-static void ____##name(unsigned long long *ctx, ##args); \
|
|
||||||
+static int ____##name(unsigned long long *ctx, ##args); \
|
|
||||||
int name(unsigned long long *ctx) \
|
|
||||||
{ \
|
|
||||||
_Pragma("GCC diagnostic push") \
|
|
||||||
@@ -1007,7 +1007,7 @@ int name(unsigned long long *ctx) \
|
|
||||||
_Pragma("GCC diagnostic pop") \
|
|
||||||
return 0; \
|
|
||||||
} \
|
|
||||||
-static void ____##name(unsigned long long *ctx, ##args)
|
|
||||||
+static int ____##name(unsigned long long *ctx, ##args)
|
|
||||||
|
|
||||||
#define KFUNC_PROBE(event, args...) \
|
|
||||||
BPF_PROG(kfunc__ ## event, args)
|
|
||||||
diff --git a/tools/klockstat.py b/tools/klockstat.py
|
|
||||||
index 540dd4e7..7cb15ad3 100755
|
|
||||||
--- a/tools/klockstat.py
|
|
||||||
+++ b/tools/klockstat.py
|
|
||||||
@@ -352,17 +352,17 @@ int mutex_lock_enter(struct pt_regs *ctx)
|
|
||||||
program_kfunc = """
|
|
||||||
KFUNC_PROBE(mutex_unlock, void *lock)
|
|
||||||
{
|
|
||||||
- do_mutex_unlock_enter();
|
|
||||||
+ return do_mutex_unlock_enter();
|
|
||||||
}
|
|
||||||
|
|
||||||
KRETFUNC_PROBE(mutex_lock, void *lock, int ret)
|
|
||||||
{
|
|
||||||
- do_mutex_lock_return();
|
|
||||||
+ return do_mutex_lock_return();
|
|
||||||
}
|
|
||||||
|
|
||||||
KFUNC_PROBE(mutex_lock, void *lock)
|
|
||||||
{
|
|
||||||
- do_mutex_lock_enter(ctx, 3);
|
|
||||||
+ return do_mutex_lock_enter(ctx, 3);
|
|
||||||
}
|
|
||||||
|
|
||||||
"""
|
|
||||||
diff --git a/tools/opensnoop.py b/tools/opensnoop.py
|
|
||||||
index b28d7d55..9a526625 100755
|
|
||||||
--- a/tools/opensnoop.py
|
|
||||||
+++ b/tools/opensnoop.py
|
|
||||||
@@ -197,6 +197,8 @@ KRETFUNC_PROBE(do_sys_open, int dfd, const char *filename, int flags, int mode,
|
|
||||||
data.ret = ret;
|
|
||||||
|
|
||||||
events.perf_submit(ctx, &data, sizeof(data));
|
|
||||||
+
|
|
||||||
+ return 0:
|
|
||||||
}
|
|
||||||
"""
|
|
||||||
|
|
||||||
--
|
|
||||||
2.25.4
|
|
||||||
|
|
@ -1,47 +0,0 @@
|
|||||||
From 3a8276749b291404ec160c1eb0b51925037161aa Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jiri Olsa <jolsa@kernel.org>
|
|
||||||
Date: Wed, 19 Aug 2020 12:47:48 +0200
|
|
||||||
Subject: [PATCH 3/3] Forbid trampolines for archs other than x86_64
|
|
||||||
|
|
||||||
The trampoline support check in bcc does not work properly,
|
|
||||||
so the feature is detected even on architectures that do not
|
|
||||||
support it - all archs other than x86_64.
|
|
||||||
|
|
||||||
We are checking for bpf_trampoline_link_prog to exist in
|
|
||||||
kernel, which works fine on x86_64 to check if the feature
|
|
||||||
is supported, but it's global function, so it exists also
|
|
||||||
in other archs even when the feature is not supported
|
|
||||||
so it returns True also on other archs.
|
|
||||||
|
|
||||||
Adding explicit x86_64 check to support_kfunc function.
|
|
||||||
|
|
||||||
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
|
|
||||||
---
|
|
||||||
src/python/bcc/__init__.py | 4 ++++
|
|
||||||
1 file changed, 4 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/src/python/bcc/__init__.py b/src/python/bcc/__init__.py
|
|
||||||
index 5b3ff7b2..60ba6ec5 100644
|
|
||||||
--- a/src/python/bcc/__init__.py
|
|
||||||
+++ b/src/python/bcc/__init__.py
|
|
||||||
@@ -22,6 +22,7 @@ import re
|
|
||||||
import struct
|
|
||||||
import errno
|
|
||||||
import sys
|
|
||||||
+import platform
|
|
||||||
|
|
||||||
from .libbcc import lib, bcc_symbol, bcc_symbol_option, bcc_stacktrace_build_id, _SYM_CB_TYPE
|
|
||||||
from .table import Table, PerfEventArray
|
|
||||||
@@ -884,6 +885,9 @@ DEBUG_BTF = 0x20
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def support_kfunc():
|
|
||||||
+ # there's no trampoline support for other than x86_64 arch
|
|
||||||
+ if platform.machine() != 'x86_64':
|
|
||||||
+ return False;
|
|
||||||
if not lib.bpf_has_kernel_btf():
|
|
||||||
return False;
|
|
||||||
# kernel symbol "bpf_trampoline_link_prog" indicates kfunc support
|
|
||||||
--
|
|
||||||
2.25.4
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
|||||||
From c263daf925a7a74f7ae64b049cf3def8b298beee Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jerome Marchand <jmarchan@redhat.com>
|
|
||||||
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
|
|
||||||
|
|
@ -1,33 +0,0 @@
|
|||||||
From f7e7347dc1b4873f70a26392c997228999d346a8 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jerome Marchand <jmarchan@redhat.com>
|
|
||||||
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<llvm::Module> *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
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
|||||||
From 1762f5c28832842ea2c67ab68feaf7fddb94a543 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jerome Marchand <jmarchan@redhat.com>
|
|
||||||
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
|
|
||||||
|
|
@ -1,49 +0,0 @@
|
|||||||
From fc72365ad7a3fb66902b3e2d0b0fb712eb8735d3 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jerome Marchand <jmarchan@redhat.com>
|
|
||||||
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 <module>
|
|
||||||
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
|
|
||||||
|
|
@ -1,31 +0,0 @@
|
|||||||
From 39a4af00c99327d9498c2e1232afdfa49fa1e564 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Mauricio=20V=C3=A1squez?= <mauricio@kinvolk.io>
|
|
||||||
Date: Mon, 8 Jun 2020 08:12:08 -0500
|
|
||||||
Subject: [PATCH 2/3] tools/opensnoop: Fix compilation problem
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
Fix stupid bug introduced by myself.
|
|
||||||
|
|
||||||
Signed-off-by: Mauricio Vásquez <mauricio@kinvolk.io>
|
|
||||||
---
|
|
||||||
tools/opensnoop.py | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/tools/opensnoop.py b/tools/opensnoop.py
|
|
||||||
index 9a526625..b7408e7c 100755
|
|
||||||
--- a/tools/opensnoop.py
|
|
||||||
+++ b/tools/opensnoop.py
|
|
||||||
@@ -198,7 +198,7 @@ KRETFUNC_PROBE(do_sys_open, int dfd, const char *filename, int flags, int mode,
|
|
||||||
|
|
||||||
events.perf_submit(ctx, &data, sizeof(data));
|
|
||||||
|
|
||||||
- return 0:
|
|
||||||
+ return 0;
|
|
||||||
}
|
|
||||||
"""
|
|
||||||
|
|
||||||
--
|
|
||||||
2.25.4
|
|
||||||
|
|
@ -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 <jmarchan@redhat.com>
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
Date: Tue, 6 Aug 2019 14:44:33 +0200
|
Date: Tue, 6 Aug 2019 14:44:33 +0200
|
||||||
Subject: [PATCH] Manpages: remove unstable statement
|
Subject: [PATCH] Manpages: remove unstable statement
|
||||||
@ -30,6 +30,7 @@ enough.
|
|||||||
man/man8/dcsnoop.8 | 2 --
|
man/man8/dcsnoop.8 | 2 --
|
||||||
man/man8/dcstat.8 | 2 --
|
man/man8/dcstat.8 | 2 --
|
||||||
man/man8/deadlock.8 | 2 --
|
man/man8/deadlock.8 | 2 --
|
||||||
|
man/man8/dirtop.8 | 2 --
|
||||||
man/man8/drsnoop.8 | 2 --
|
man/man8/drsnoop.8 | 2 --
|
||||||
man/man8/execsnoop.8 | 2 --
|
man/man8/execsnoop.8 | 2 --
|
||||||
man/man8/exitsnoop.8 | 2 --
|
man/man8/exitsnoop.8 | 2 --
|
||||||
@ -39,6 +40,7 @@ enough.
|
|||||||
man/man8/fileslower.8 | 2 --
|
man/man8/fileslower.8 | 2 --
|
||||||
man/man8/filetop.8 | 2 --
|
man/man8/filetop.8 | 2 --
|
||||||
man/man8/funccount.8 | 2 --
|
man/man8/funccount.8 | 2 --
|
||||||
|
man/man8/funcinterval.8 | 2 --
|
||||||
man/man8/funclatency.8 | 2 --
|
man/man8/funclatency.8 | 2 --
|
||||||
man/man8/funcslower.8 | 2 --
|
man/man8/funcslower.8 | 2 --
|
||||||
man/man8/gethostlatency.8 | 2 --
|
man/man8/gethostlatency.8 | 2 --
|
||||||
@ -100,7 +102,7 @@ enough.
|
|||||||
man/man8/xfsslower.8 | 2 --
|
man/man8/xfsslower.8 | 2 --
|
||||||
man/man8/zfsdist.8 | 2 --
|
man/man8/zfsdist.8 | 2 --
|
||||||
man/man8/zfsslower.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
|
diff --git a/man/man8/argdist.8 b/man/man8/argdist.8
|
||||||
index 4116cd4d..aa128d2d 100644
|
index 4116cd4d..aa128d2d 100644
|
||||||
@ -128,10 +130,10 @@ index bc68a491..705c514e 100644
|
|||||||
Brendan Gregg
|
Brendan Gregg
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
diff --git a/man/man8/bindsnoop.8 b/man/man8/bindsnoop.8
|
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
|
--- a/man/man8/bindsnoop.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -282,10 +284,10 @@ index 5642fa1d..1fe4067b 100644
|
|||||||
Emmanuel Bretelle
|
Emmanuel Bretelle
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
diff --git a/man/man8/capable.8 b/man/man8/capable.8
|
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
|
--- a/man/man8/capable.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -409,6 +411,19 @@ index 0be3f4ab..7300446a 100644
|
|||||||
-Unstable - in development.
|
-Unstable - in development.
|
||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
Kenny Yu
|
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
|
diff --git a/man/man8/drsnoop.8 b/man/man8/drsnoop.8
|
||||||
index 572c0dce..3563da81 100644
|
index 572c0dce..3563da81 100644
|
||||||
--- a/man/man8/drsnoop.8
|
--- a/man/man8/drsnoop.8
|
||||||
@ -422,10 +437,10 @@ index 572c0dce..3563da81 100644
|
|||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
Wenbo Zhang
|
Wenbo Zhang
|
||||||
diff --git a/man/man8/execsnoop.8 b/man/man8/execsnoop.8
|
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
|
--- a/man/man8/execsnoop.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -435,10 +450,10 @@ index 4a88e007..f8db4944 100644
|
|||||||
Brendan Gregg
|
Brendan Gregg
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
diff --git a/man/man8/exitsnoop.8 b/man/man8/exitsnoop.8
|
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
|
--- a/man/man8/exitsnoop.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -513,10 +528,10 @@ index ba0cbd6e..1f818d68 100644
|
|||||||
Brendan Gregg
|
Brendan Gregg
|
||||||
.SH INSPIRATION
|
.SH INSPIRATION
|
||||||
diff --git a/man/man8/funccount.8 b/man/man8/funccount.8
|
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
|
--- a/man/man8/funccount.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -525,6 +540,19 @@ index 9039ab33..70e222f2 100644
|
|||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
Brendan Gregg, Sasha Goldshtein
|
Brendan Gregg, Sasha Goldshtein
|
||||||
.SH SEE ALSO
|
.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
|
diff --git a/man/man8/funclatency.8 b/man/man8/funclatency.8
|
||||||
index b82626cf..3c8e248e 100644
|
index b82626cf..3c8e248e 100644
|
||||||
--- a/man/man8/funclatency.8
|
--- a/man/man8/funclatency.8
|
||||||
@ -592,10 +620,10 @@ index 2ab80dbb..85b36b6e 100644
|
|||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
Howard McLauchlan
|
Howard McLauchlan
|
||||||
diff --git a/man/man8/killsnoop.8 b/man/man8/killsnoop.8
|
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
|
--- a/man/man8/killsnoop.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -644,10 +672,10 @@ index 9d10ca87..3c3b9bba 100644
|
|||||||
Brendan Gregg
|
Brendan Gregg
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
diff --git a/man/man8/memleak.8 b/man/man8/memleak.8
|
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
|
--- a/man/man8/memleak.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -721,10 +749,10 @@ index be5387b9..270991d8 100644
|
|||||||
Brendan Gregg
|
Brendan Gregg
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
diff --git a/man/man8/offwaketime.8 b/man/man8/offwaketime.8
|
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
|
--- a/man/man8/offwaketime.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -747,10 +775,10 @@ index b6d6f9e1..965ba545 100644
|
|||||||
Brendan Gregg
|
Brendan Gregg
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
diff --git a/man/man8/opensnoop.8 b/man/man8/opensnoop.8
|
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
|
--- a/man/man8/opensnoop.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -773,7 +801,7 @@ index 2164ffaf..9d272c81 100644
|
|||||||
Brendan Gregg
|
Brendan Gregg
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
diff --git a/man/man8/profile.8 b/man/man8/profile.8
|
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
|
--- a/man/man8/profile.8
|
||||||
+++ b/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
|
@@ -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
|
Jiri Olsa
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
diff --git a/man/man8/sslsniff.8 b/man/man8/sslsniff.8
|
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
|
--- a/man/man8/sslsniff.8
|
||||||
+++ b/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
|
@@ -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
|
Sasha Goldshtein
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
diff --git a/man/man8/tcpaccept.8 b/man/man8/tcpaccept.8
|
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
|
--- a/man/man8/tcpaccept.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -987,10 +1015,10 @@ index 43219260..4176a32b 100644
|
|||||||
Brendan Gregg
|
Brendan Gregg
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
diff --git a/man/man8/tcpconnect.8 b/man/man8/tcpconnect.8
|
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
|
--- a/man/man8/tcpconnect.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -1078,10 +1106,10 @@ index 525b8082..daf41583 100644
|
|||||||
Rodrigo Manyari
|
Rodrigo Manyari
|
||||||
.SH INSPIRATION
|
.SH INSPIRATION
|
||||||
diff --git a/man/man8/tcptop.8 b/man/man8/tcptop.8
|
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
|
--- a/man/man8/tcptop.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -1091,10 +1119,10 @@ index 631c00c3..eddab761 100644
|
|||||||
Brendan Gregg
|
Brendan Gregg
|
||||||
.SH INSPIRATION
|
.SH INSPIRATION
|
||||||
diff --git a/man/man8/tcptracer.8 b/man/man8/tcptracer.8
|
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
|
--- a/man/man8/tcptracer.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -1116,10 +1144,10 @@ index da5edf37..f7e459da 100644
|
|||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
Sasha Goldshtein
|
Sasha Goldshtein
|
||||||
diff --git a/man/man8/trace.8 b/man/man8/trace.8
|
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
|
--- a/man/man8/trace.8
|
||||||
+++ b/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.
|
example usage, output, and commentary for this tool.
|
||||||
.SH OS
|
.SH OS
|
||||||
Linux
|
Linux
|
||||||
@ -1310,5 +1338,5 @@ index d1e2f9c1..31d382f6 100644
|
|||||||
Brendan Gregg
|
Brendan Gregg
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
--
|
--
|
||||||
2.25.3
|
2.25.4
|
||||||
|
|
@ -0,0 +1,39 @@
|
|||||||
|
From fe1f2189326a54e3496b2fcfdc1b08839f3165b4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Daniel Rank <dwrank@gmail.com>
|
||||||
|
Date: Sun, 27 Sep 2020 16:55:22 -0700
|
||||||
|
Subject: [PATCH] slabratetop: Add memcg_cache_params struct def
|
||||||
|
|
||||||
|
struct memcg_cache_params moved from include/linux/slab.h to
|
||||||
|
mm/slab.h in kernel v5.4, causing a compiler error when including
|
||||||
|
slub_def.h or slab_def.h in slabratetop's bpf program.
|
||||||
|
|
||||||
|
It has been removed completely from kernel version 5.9.
|
||||||
|
|
||||||
|
Add an empty memcg_cache_params struct in slabratetop's bpf
|
||||||
|
program so it will compile with kernel versions 5.4 to 5.8.
|
||||||
|
---
|
||||||
|
tools/slabratetop.py | 8 +++++++-
|
||||||
|
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/tools/slabratetop.py b/tools/slabratetop.py
|
||||||
|
index 066f79d6..182dbd1d 100755
|
||||||
|
--- a/tools/slabratetop.py
|
||||||
|
+++ b/tools/slabratetop.py
|
||||||
|
@@ -62,7 +62,13 @@ loadavg = "/proc/loadavg"
|
||||||
|
bpf_text = """
|
||||||
|
#include <uapi/linux/ptrace.h>
|
||||||
|
#include <linux/mm.h>
|
||||||
|
-#include <linux/slab.h>
|
||||||
|
+
|
||||||
|
+// memcg_cache_params is a part of kmem_cache, but is not publicly exposed in
|
||||||
|
+// kernel versions 5.4 to 5.8. Define an empty struct for it here to allow the
|
||||||
|
+// bpf program to compile. It has been completely removed in kernel version
|
||||||
|
+// 5.9, but it does not hurt to have it here for versions 5.4 to 5.8.
|
||||||
|
+struct memcg_cache_params {};
|
||||||
|
+
|
||||||
|
#ifdef CONFIG_SLUB
|
||||||
|
#include <linux/slub_def.h>
|
||||||
|
#else
|
||||||
|
--
|
||||||
|
2.29.2
|
||||||
|
|
121
SOURCES/bcc-0.16.0-sync-with-libbpf-repo.patch
Normal file
121
SOURCES/bcc-0.16.0-sync-with-libbpf-repo.patch
Normal file
@ -0,0 +1,121 @@
|
|||||||
|
From da9ec2b1673ddf6b956304dca6ed6918d89d4631 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Yonghong Song <yhs@fb.com>
|
||||||
|
Date: Sat, 22 Aug 2020 15:19:46 -0700
|
||||||
|
Subject: [PATCH] sync with libbpf repo
|
||||||
|
|
||||||
|
sync with latest libbpf repo.
|
||||||
|
|
||||||
|
Strut definition for btf_ext_header is defined in libbpf/src/btf.h
|
||||||
|
previously and used by bcc. Now, the struct is moved to
|
||||||
|
libbpf/src/libbpf_internal.h and not available to bcc.
|
||||||
|
We do not want to include libbpf/src/libbpf_internal.h as
|
||||||
|
it is really libbpf internal. Let us define bcc version
|
||||||
|
of btf_ext_header with struct name bcc_btf_ext_header.
|
||||||
|
The new name is to avoid conflict when compiling with
|
||||||
|
old libbpf package.
|
||||||
|
|
||||||
|
Signed-off-by: Yonghong Song <yhs@fb.com>
|
||||||
|
---
|
||||||
|
src/cc/bcc_btf.cc | 2 +-
|
||||||
|
src/cc/bcc_btf.h | 17 +++++++++++++++++
|
||||||
|
src/cc/compat/linux/virtual_bpf.h | 17 ++++++++++++-----
|
||||||
|
4 files changed, 31 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/cc/bcc_btf.cc b/src/cc/bcc_btf.cc
|
||||||
|
index e220f117..1056950c 100644
|
||||||
|
--- a/src/cc/bcc_btf.cc
|
||||||
|
+++ b/src/cc/bcc_btf.cc
|
||||||
|
@@ -185,7 +185,7 @@ void BTF::adjust(uint8_t *btf_sec, uintptr_t btf_sec_size,
|
||||||
|
}
|
||||||
|
|
||||||
|
struct btf_header *hdr = (struct btf_header *)btf_sec;
|
||||||
|
- struct btf_ext_header *ehdr = (struct btf_ext_header *)btf_ext_sec;
|
||||||
|
+ struct bcc_btf_ext_header *ehdr = (struct bcc_btf_ext_header *)btf_ext_sec;
|
||||||
|
|
||||||
|
// Fixup btf for old kernels or kernel requirements.
|
||||||
|
fixup_btf(btf_sec + hdr->hdr_len + hdr->type_off, hdr->type_len,
|
||||||
|
diff --git a/src/cc/bcc_btf.h b/src/cc/bcc_btf.h
|
||||||
|
index 438c1f73..75b47cc3 100644
|
||||||
|
--- a/src/cc/bcc_btf.h
|
||||||
|
+++ b/src/cc/bcc_btf.h
|
||||||
|
@@ -45,6 +45,23 @@ class BTFStringTable {
|
||||||
|
};
|
||||||
|
|
||||||
|
class BTF {
|
||||||
|
+ struct bcc_btf_ext_header {
|
||||||
|
+ uint16_t magic;
|
||||||
|
+ uint8_t version;
|
||||||
|
+ uint8_t flags;
|
||||||
|
+ uint32_t hdr_len;
|
||||||
|
+
|
||||||
|
+ /* All offsets are in bytes relative to the end of this header */
|
||||||
|
+ uint32_t func_info_off;
|
||||||
|
+ uint32_t func_info_len;
|
||||||
|
+ uint32_t line_info_off;
|
||||||
|
+ uint32_t line_info_len;
|
||||||
|
+
|
||||||
|
+ /* optional part of .BTF.ext header */
|
||||||
|
+ uint32_t core_relo_off;
|
||||||
|
+ uint32_t core_relo_len;
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
public:
|
||||||
|
BTF(bool debug, sec_map_def §ions);
|
||||||
|
~BTF();
|
||||||
|
diff --git a/src/cc/compat/linux/virtual_bpf.h b/src/cc/compat/linux/virtual_bpf.h
|
||||||
|
index 38262630..0387b970 100644
|
||||||
|
--- a/src/cc/compat/linux/virtual_bpf.h
|
||||||
|
+++ b/src/cc/compat/linux/virtual_bpf.h
|
||||||
|
@@ -768,7 +768,7 @@ union bpf_attr {
|
||||||
|
*
|
||||||
|
* Also, note that **bpf_trace_printk**\ () is slow, and should
|
||||||
|
* only be used for debugging purposes. For this reason, a notice
|
||||||
|
- * bloc (spanning several lines) is printed to kernel logs and
|
||||||
|
+ * block (spanning several lines) is printed to kernel logs and
|
||||||
|
* states that the helper should not be used "for production use"
|
||||||
|
* the first time this helper is used (or more precisely, when
|
||||||
|
* **trace_printk**\ () buffers are allocated). For passing values
|
||||||
|
@@ -1034,14 +1034,14 @@ union bpf_attr {
|
||||||
|
*
|
||||||
|
* int ret;
|
||||||
|
* struct bpf_tunnel_key key = {};
|
||||||
|
- *
|
||||||
|
+ *
|
||||||
|
* ret = bpf_skb_get_tunnel_key(skb, &key, sizeof(key), 0);
|
||||||
|
* if (ret < 0)
|
||||||
|
* return TC_ACT_SHOT; // drop packet
|
||||||
|
- *
|
||||||
|
+ *
|
||||||
|
* if (key.remote_ipv4 != 0x0a000001)
|
||||||
|
* return TC_ACT_SHOT; // drop packet
|
||||||
|
- *
|
||||||
|
+ *
|
||||||
|
* return TC_ACT_OK; // accept packet
|
||||||
|
*
|
||||||
|
* This interface can also be used with all encapsulation devices
|
||||||
|
@@ -1148,7 +1148,7 @@ union bpf_attr {
|
||||||
|
* Description
|
||||||
|
* Retrieve the realm or the route, that is to say the
|
||||||
|
* **tclassid** field of the destination for the *skb*. The
|
||||||
|
- * indentifier retrieved is a user-provided tag, similar to the
|
||||||
|
+ * identifier retrieved is a user-provided tag, similar to the
|
||||||
|
* one used with the net_cls cgroup (see description for
|
||||||
|
* **bpf_get_cgroup_classid**\ () helper), but here this tag is
|
||||||
|
* held by a route (a destination entry), not by a task.
|
||||||
|
@@ -4072,6 +4072,13 @@ struct bpf_link_info {
|
||||||
|
__u64 cgroup_id;
|
||||||
|
__u32 attach_type;
|
||||||
|
} cgroup;
|
||||||
|
+ struct {
|
||||||
|
+ __aligned_u64 target_name; /* in/out: target_name buffer ptr */
|
||||||
|
+ __u32 target_name_len; /* in/out: target_name buffer len */
|
||||||
|
+ union {
|
||||||
|
+ __u32 map_id;
|
||||||
|
+ } map;
|
||||||
|
+ } iter;
|
||||||
|
struct {
|
||||||
|
__u32 netns_ino;
|
||||||
|
__u32 attach_type;
|
||||||
|
--
|
||||||
|
2.29.2
|
||||||
|
|
@ -0,0 +1,42 @@
|
|||||||
|
From 33393d3008969e43d26f0e4b3e71198130f9f44d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Date: Thu, 18 Feb 2021 11:33:20 +0100
|
||||||
|
Subject: [PATCH] tools: include kasan header in slabtoprate
|
||||||
|
|
||||||
|
slabtoprate fails on 5.10 kernels because of a missing kasan_reset_tag
|
||||||
|
declaration. We need to include the kasan header file.
|
||||||
|
|
||||||
|
Fixes the following error:
|
||||||
|
In file included from /virtual/main.c:12:
|
||||||
|
include/linux/slub_def.h:181:27: warning: implicit declaration of function 'kasan_reset_tag' is invalid in C99 [-Wimplicit-function-declaration]
|
||||||
|
return reciprocal_divide(kasan_reset_tag(obj) - addr,
|
||||||
|
^
|
||||||
|
include/linux/slub_def.h:181:48: error: invalid operands to binary expression ('int' and 'void *')
|
||||||
|
return reciprocal_divide(kasan_reset_tag(obj) - addr,
|
||||||
|
~~~~~~~~~~~~~~~~~~~~ ^ ~~~~
|
||||||
|
1 warning and 1 error generated.
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "/usr/share/bcc/tools/slabratetop", line 115, in <module>
|
||||||
|
b = BPF(text=bpf_text)
|
||||||
|
File "/usr/lib/python3.9/site-packages/bcc/__init__.py", line 364, in __init__
|
||||||
|
raise Exception("Failed to compile BPF module %s" % (src_file or "<text>"))
|
||||||
|
Exception: Failed to compile BPF module <text>
|
||||||
|
---
|
||||||
|
tools/slabratetop.py | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/tools/slabratetop.py b/tools/slabratetop.py
|
||||||
|
index 182dbd1d..75280c6d 100755
|
||||||
|
--- a/tools/slabratetop.py
|
||||||
|
+++ b/tools/slabratetop.py
|
||||||
|
@@ -62,6 +62,7 @@ loadavg = "/proc/loadavg"
|
||||||
|
bpf_text = """
|
||||||
|
#include <uapi/linux/ptrace.h>
|
||||||
|
#include <linux/mm.h>
|
||||||
|
+#include <linux/kasan.h>
|
||||||
|
|
||||||
|
// memcg_cache_params is a part of kmem_cache, but is not publicly exposed in
|
||||||
|
// kernel versions 5.4 to 5.8. Define an empty struct for it here to allow the
|
||||||
|
--
|
||||||
|
2.29.2
|
||||||
|
|
@ -0,0 +1,46 @@
|
|||||||
|
From 52c4e8cec4dd560503ff011f8fe7eec5f67b33c9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
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
|
||||||
|
|
@ -1,11 +1,15 @@
|
|||||||
# luajit is not available RHEL 8
|
# luajit is not available RHEL 8
|
||||||
%bcond_with lua
|
%bcond_with lua
|
||||||
|
|
||||||
%bcond_without llvm_static
|
%bcond_with llvm_static
|
||||||
|
|
||||||
|
%if %{without llvm_static}
|
||||||
|
%global with_llvm_shared 1
|
||||||
|
%endif
|
||||||
|
|
||||||
Name: bcc
|
Name: bcc
|
||||||
Version: 0.14.0
|
Version: 0.16.0
|
||||||
Release: 4%{?dist}
|
Release: 3%{?dist}
|
||||||
Summary: BPF Compiler Collection (BCC)
|
Summary: BPF Compiler Collection (BCC)
|
||||||
License: ASL 2.0
|
License: ASL 2.0
|
||||||
URL: https://github.com/iovisor/bcc
|
URL: https://github.com/iovisor/bcc
|
||||||
@ -13,36 +17,34 @@ URL: https://github.com/iovisor/bcc
|
|||||||
Source0: %{url}/releases/download/v%{version}/%{name}-src-with-submodule.tar.gz
|
Source0: %{url}/releases/download/v%{version}/%{name}-src-with-submodule.tar.gz
|
||||||
#Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
|
#Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
|
||||||
Patch0: %{name}-%{version}-Manpages-remove-unstable-statement.patch
|
Patch0: %{name}-%{version}-Manpages-remove-unstable-statement.patch
|
||||||
Patch1: %{name}-%{version}-deadlock-print-a-more-explicit-message-when-pthread_.patch
|
Patch1: %{name}-%{version}-tools-tcptracer-fix-alignement-in-tcp_ipv6_event_t.patch
|
||||||
Patch2: %{name}-%{version}-man-remove-non-existent-x-argument-from-tcpconnect-m.patch
|
Patch2: %{name}-%{version}-sync-with-libbpf-repo.patch
|
||||||
Patch3: %{name}-%{version}-loader-suggest-to-install-the-right-kernel-devel-pac.patch
|
Patch3: %{name}-%{version}-slabratetop-Add-memcg_cache_params-struct-def.patch
|
||||||
Patch4: %{name}-%{version}-tools-fix-a-python-3-map-issue-in-dbstat-and-dbslowe.patch
|
Patch4: %{name}-%{version}-tools-include-kasan-header-in-slabtoprate.patch
|
||||||
Patch5: %{name}-%{version}-Add-KBUILD_MODNAME-flag-to-default-cflags.patch
|
|
||||||
Patch6: %{name}-%{version}-Delete-existing-kbuild_modname-definitions.patch
|
|
||||||
Patch7: %{name}-%{version}-Fix-KFUNC_PROBE-return-value.patch
|
|
||||||
Patch8: %{name}-%{version}-tools-opensnoop-Fix-compilation-problem.patch
|
|
||||||
Patch9: %{name}-%{version}-Forbid-trampolines-for-archs-other-than-x86_64.patch
|
|
||||||
|
|
||||||
# Arches will be included as upstream support is added and dependencies are
|
# Arches will be included as upstream support is added and dependencies are
|
||||||
# satisfied in the respective arches
|
# satisfied in the respective arches
|
||||||
ExcludeArch: i686
|
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: python3-devel
|
||||||
BuildRequires: elfutils-libelf-devel
|
BuildRequires: elfutils-libelf-devel
|
||||||
BuildRequires: llvm-devel
|
BuildRequires: llvm-devel
|
||||||
BuildRequires: clang-devel
|
BuildRequires: clang-devel
|
||||||
BuildRequires: ncurses-devel
|
|
||||||
%if %{with lua}
|
|
||||||
BuildRequires: pkgconfig(luajit)
|
|
||||||
%endif
|
|
||||||
%if %{with llvm_static}
|
%if %{with llvm_static}
|
||||||
BuildRequires: llvm-static
|
BuildRequires: llvm-static
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: ncurses-devel
|
||||||
BuildRequires: clang
|
%if %{with lua}
|
||||||
|
BuildRequires: pkgconfig(luajit)
|
||||||
|
%endif
|
||||||
|
BuildRequires: libbpf-devel >= 0.0.9, libbpf-static >= 0.0.9
|
||||||
|
|
||||||
Requires: %{name}-tools = %{version}-%{release}
|
Requires: %{name}-tools = %{version}-%{release}
|
||||||
|
Requires: libbpf >= 0.0.9
|
||||||
|
|
||||||
%description
|
%description
|
||||||
BCC is a toolkit for creating efficient kernel tracing and manipulation
|
BCC is a toolkit for creating efficient kernel tracing and manipulation
|
||||||
@ -109,9 +111,12 @@ Command line tools for BPF Compiler Collection (BCC)
|
|||||||
%build
|
%build
|
||||||
%cmake . \
|
%cmake . \
|
||||||
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
-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
|
%make_build
|
||||||
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%make_install
|
%make_install
|
||||||
|
|
||||||
@ -155,12 +160,14 @@ done
|
|||||||
%license LICENSE.txt
|
%license LICENSE.txt
|
||||||
%{_libdir}/lib%{name}.so.*
|
%{_libdir}/lib%{name}.so.*
|
||||||
%{_libdir}/libbcc_bpf.so.*
|
%{_libdir}/libbcc_bpf.so.*
|
||||||
|
%{_libdir}/libbcc-no-libbpf.so.*
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%exclude %{_libdir}/lib%{name}*.a
|
%exclude %{_libdir}/lib%{name}*.a
|
||||||
%exclude %{_libdir}/lib%{name}*.la
|
%exclude %{_libdir}/lib%{name}*.la
|
||||||
%{_libdir}/lib%{name}.so
|
%{_libdir}/lib%{name}.so
|
||||||
%{_libdir}/libbcc_bpf.so
|
%{_libdir}/libbcc_bpf.so
|
||||||
|
%{_libdir}/libbcc-no-libbpf.so
|
||||||
%{_libdir}/pkgconfig/lib%{name}.pc
|
%{_libdir}/pkgconfig/lib%{name}.pc
|
||||||
%{_includedir}/%{name}/
|
%{_includedir}/%{name}/
|
||||||
|
|
||||||
@ -211,6 +218,18 @@ done
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Feb 22 2021 Jerome Marchand <jmarchan@redhat.com> - 0.16.0-3
|
||||||
|
- Fix slabratetop header issues
|
||||||
|
- Rebuild with latest libbpf
|
||||||
|
|
||||||
|
* Fri Jan 22 2021 Jerome Marchand <jmarchan@redhat.com> - 0.16.0-2
|
||||||
|
- Build with libbpf package
|
||||||
|
- spec file cleanups
|
||||||
|
|
||||||
|
* Mon Oct 26 2020 Jerome Marchand <jmarchan@redhat.com> - 0.16.0-1
|
||||||
|
- Rebase on bcc-0.16.0
|
||||||
|
- Fix IPv6 ports
|
||||||
|
|
||||||
* Wed Sep 02 2020 Jerome Marchand <jmarchan@redhat.com> - 0.14.0-4
|
* Wed Sep 02 2020 Jerome Marchand <jmarchan@redhat.com> - 0.14.0-4
|
||||||
- Fix KFUNC_PROBE return value
|
- Fix KFUNC_PROBE return value
|
||||||
- Forbid trampolines on unsupported arches
|
- Forbid trampolines on unsupported arches
|
||||||
|
Loading…
Reference in New Issue
Block a user