From: Dr.Z Date: Fri, 23 Oct 2015 09:59:10 +0000 (+0900) Subject: Python: fix detach_kprobe() X-Git-Tag: v0.1.8~88^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=bf96d374157ecf6ddef2cb5bdc0145f73b75323e;p=platform%2Fupstream%2Fbcc.git Python: fix detach_kprobe() As open_kprobes contains not fd but pointer to struct perf_reader, it should call lib.perf_reader_free() instead of os.close() --- diff --git a/src/python/bcc/__init__.py b/src/python/bcc/__init__.py index 001610d..f7a1973 100644 --- a/src/python/bcc/__init__.py +++ b/src/python/bcc/__init__.py @@ -575,7 +575,7 @@ class BPF(object): ev_name = "p_" + event.replace("+", "_").replace(".", "_") if ev_name not in open_kprobes: raise Exception("Kprobe %s is not attached" % event) - os.close(open_kprobes[ev_name]) + lib.perf_reader_free(open_kprobes[ev_name]) desc = "-:kprobes/%s" % ev_name res = lib.bpf_detach_kprobe(desc.encode("ascii")) if res < 0: @@ -612,7 +612,7 @@ class BPF(object): ev_name = "r_" + event.replace("+", "_").replace(".", "_") if ev_name not in open_kprobes: raise Exception("Kretprobe %s is not attached" % event) - os.close(open_kprobes[ev_name]) + lib.perf_reader_free(open_kprobes[ev_name]) desc = "-:kprobes/%s" % ev_name res = lib.bpf_detach_kprobe(desc.encode("ascii")) if res < 0: