Brenden Blanco [Tue, 28 Jul 2015 17:45:52 +0000 (10:45 -0700)]
Add bpf_tunnel_info and helpers
* Update compat.h
* Move bpf_clone_redirect to signed int, matching the implementation.
This allows error codes to be compared to < 0.
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Tue, 28 Jul 2015 20:17:30 +0000 (13:17 -0700)]
Merge pull request #92 from iovisor/bblanco_dev
Add index-based function references to c api
Brenden Blanco [Tue, 28 Jul 2015 19:29:36 +0000 (12:29 -0700)]
Include libbpf.h in some places, cleanup constants
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Tue, 28 Jul 2015 18:57:32 +0000 (11:57 -0700)]
Add #define for ".bpf.fn."
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Tue, 28 Jul 2015 03:29:25 +0000 (20:29 -0700)]
Add index-based function references to c api
* Add the index based API so that an external api (bcc-fuse) can iterate
through the maps and functions that were compiled in this program.
* Add a more unique section prefix to disambiguate exportable functions.
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Mon, 27 Jul 2015 16:14:16 +0000 (09:14 -0700)]
Merge pull request #91 from iovisor/bcc_export
Include bcc headers in /usr/include
Brenden Blanco [Sun, 26 Jul 2015 00:17:10 +0000 (17:17 -0700)]
Kill wrapper .h, add #include to libbpf.h
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Thu, 23 Jul 2015 20:19:13 +0000 (13:19 -0700)]
Include bcc headers in /usr/include
* Add wrapper bcc.h to include dependencies
* Add text bpf_module_create_* to list of exports
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Wed, 22 Jul 2015 18:20:09 +0000 (11:20 -0700)]
Merge pull request #90 from iovisor/yhs_dev
simply vlan_learning example with newer vlan_push/pop helpers
Yonghong Song [Wed, 22 Jul 2015 18:04:23 +0000 (11:04 -0700)]
update ifindex/vlan info unconditionally in the map in vlan_learning example
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Yonghong Song [Wed, 22 Jul 2015 17:17:39 +0000 (10:17 -0700)]
simply vlan_learning example with newer vlan_push/pop helpers
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
4ast [Tue, 21 Jul 2015 21:07:19 +0000 (14:07 -0700)]
Merge pull request #89 from iovisor/quick_fix
Cache function handles in BPF class
Brenden Blanco [Tue, 21 Jul 2015 18:45:52 +0000 (11:45 -0700)]
Cache function handles in BPF class
* This means repeated calls to get_func() are now allowed
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Sat, 18 Jul 2015 04:24:02 +0000 (21:24 -0700)]
Merge pull request #87 from iovisor/yhs_dev
use running linux version number for feature availability checking
Yonghong Song [Fri, 17 Jul 2015 05:18:33 +0000 (22:18 -0700)]
use better error reporting interface
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Yonghong Song [Fri, 17 Jul 2015 04:30:41 +0000 (21:30 -0700)]
add error checking/reporting in case that maps/prog is not supported
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Yonghong Song [Fri, 17 Jul 2015 03:20:22 +0000 (20:20 -0700)]
use running linux version number for feature availability checking
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
yonghong-song [Tue, 14 Jul 2015 06:10:25 +0000 (23:10 -0700)]
Merge pull request #85 from iovisor/bblanco_dev
Change to simulator arguments for readability
Brenden Blanco [Tue, 14 Jul 2015 05:44:16 +0000 (22:44 -0700)]
Restore disable_ipv6 of out_ifc in simulation.py
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Tue, 14 Jul 2015 04:10:39 +0000 (21:10 -0700)]
Change to simulator arguments for readability
* Let one argument be optional
* Disable ipv6 for whole namespace once
* Python 2/3 compatibility fix
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Tue, 14 Jul 2015 04:07:39 +0000 (21:07 -0700)]
Merge pull request #84 from iovisor/bblanco_dev
Bugfix for simulation.py
Brenden Blanco [Tue, 14 Jul 2015 03:57:34 +0000 (20:57 -0700)]
Bugfix for simulation.py
* Ignore exceptions and continue cleanup of dead children
* Set loopback interface up
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Sat, 11 Jul 2015 20:01:48 +0000 (13:01 -0700)]
Merge pull request #83 from iovisor/yhs_dev
Yhs dev
Yonghong Song [Sat, 11 Jul 2015 16:44:05 +0000 (09:44 -0700)]
do not demonize iperf server and netserver
o This way, process kill happens correctly.
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Yonghong Song [Sat, 11 Jul 2015 07:18:50 +0000 (00:18 -0700)]
explicit kill deamon "iperf" and "netserver" in namespace
o sometimes, NSPipe kill may not really kill the process
o with the explicit kill, remove the cleanup for outer veth's
associated with namespace
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Yonghong Song [Sat, 11 Jul 2015 05:58:59 +0000 (22:58 -0700)]
add required parameter ifc_name for additional ifc adding to ns
o make some long lines in python codes shorter
o use python style unused variable name "_"
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Yonghong Song [Fri, 10 Jul 2015 17:12:47 +0000 (10:12 -0700)]
rewrite test_brb/test_brb2 python binding with pyroute2
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Yonghong Song [Mon, 6 Jul 2015 16:16:25 +0000 (09:16 -0700)]
fix and improve test brb/brb2
o disable ipv6 for newly-created net devices to avoid unaccountable pkt counting
o explicitly enable ip_forward in router namespace
o proper cleanup in case of validation failure
o in test_brb, use different tc_index to differentiate the packet source (pem or router_ns)
o change bpf program return value to 1 so that the packet will be dropped instead of being
passed up to the stack
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
4ast [Wed, 8 Jul 2015 00:48:14 +0000 (17:48 -0700)]
Merge pull request #82 from iovisor/bblanco_dev
Update README.md examples and INSTALL.md
Brenden Blanco [Wed, 8 Jul 2015 00:38:30 +0000 (17:38 -0700)]
Update README.md examples and INSTALL.md
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Tue, 7 Jul 2015 21:08:21 +0000 (14:08 -0700)]
Merge pull request #81 from iovisor/bblanco_dev
Update README with install info, few cleanups
Brenden Blanco [Tue, 7 Jul 2015 20:10:21 +0000 (13:10 -0700)]
Fix newlines in README
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Tue, 7 Jul 2015 20:05:22 +0000 (13:05 -0700)]
Update README with install info, few cleanups
* Add some examples to package
* Fix bpf_trace_printk bug not supporting 0 format args
* Make src_file arg loading a little bit more intelligent in BPF()
* Update README with Hello, World step-by-step
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Tue, 7 Jul 2015 16:47:10 +0000 (09:47 -0700)]
Merge pull request #80 from iovisor/bblanco_dev
Add multiple build support styles
Brenden Blanco [Tue, 7 Jul 2015 06:41:23 +0000 (23:41 -0700)]
Add multiple build support styles
* Add RPM and DEB packaging targets (using CPack from CMake) to build
binary packages for Fedora and Ubuntu targets.
* Add Docker build scripts for each of the above that run the build in
the right environment (assuming docker is available).
- In Ubuntu, build against the LLVM 3.7 nightly snapshots
- In Fedora, build against LLVM 3.7 from git (takes longer)
* Depending on packages installed on the build machine, it may be
possible to cross-package for other targets without invoking Docker.
* Re-introduce src/cc/compat directory to keep the build stable for the
time being. Similarly, it was necessary to #define some ugly constants
that should eventually show up in libc.
* Add a few simple version checks to allow a partially working (really
tracing only) libbcc in 4.1 kernels.
TODO (followup commit): Re-work the READMEs
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Fri, 3 Jul 2015 23:10:29 +0000 (16:10 -0700)]
WIP: rpm packaging
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Fri, 3 Jul 2015 00:48:41 +0000 (17:48 -0700)]
Update libvirt script to use fedora22
* Install into lib64 instead of lib
* Pull 4.2 kernel from rawhide instead of building it
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Thu, 2 Jul 2015 17:34:51 +0000 (10:34 -0700)]
Merge pull request #78 from iovisor/bblanco_dev
Drop PROTO macro syntax and introduce alternative
Brenden Blanco [Thu, 2 Jul 2015 17:31:32 +0000 (10:31 -0700)]
Update missing monitor.c to use cursor_advance
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Thu, 2 Jul 2015 17:02:04 +0000 (10:02 -0700)]
Drop PROTO macro syntax and introduce alternative
* Feedback given by some external users was that the PROTO syntax was
opaque and unintuitive. As such, drop that macro and introduce an
alternative syntax.
* Convert all to use 'cursor_advance' macro API
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Thu, 2 Jul 2015 01:42:25 +0000 (18:42 -0700)]
Merge pull request #77 from iovisor/bblanco_dev
Automate bpf_probe_read
Brenden Blanco [Wed, 1 Jul 2015 22:23:18 +0000 (15:23 -0700)]
Automate bpf_probe_read
* Rewrite accesses to args beyond the first to use bpf_probe_read
- Support struct access
- Support POD type accesses
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Tue, 30 Jun 2015 18:12:35 +0000 (11:12 -0700)]
Merge pull request #76 from iovisor/bblanco_dev
Clean some brittle parts of clang rewriter
Brenden Blanco [Mon, 29 Jun 2015 18:09:00 +0000 (11:09 -0700)]
Clean some brittle parts of clang rewriter
* Rewrites of text inside of a macro (even if just the arguments) is not
support by clang. Convert macro definitions to pure rewrites instead.
* For packet field access, no longer require 'skb' named
argument...instead, learn it from the function parameter list.
* Add a complex test case...supposedly this should have failed issue
#10, but the C version does not exhibit the same failure as the B
version.
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Sun, 28 Jun 2015 08:26:36 +0000 (01:26 -0700)]
Merge pull request #75 from iovisor/bblanco_dev
Make tunnel example more user friendly
Brenden Blanco [Thu, 25 Jun 2015 01:31:14 +0000 (18:31 -0700)]
Make tunnel example more user friendly
* Move files to separate directory
* Add README
* Run http server automatically from main.py
* Add setup.sh script to automate dependencies
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Tue, 23 Jun 2015 22:14:08 +0000 (15:14 -0700)]
Merge pull request #74 from iovisor/yhs_dev
use new get_table interface to avoid specify key/leaf type in py code
4ast [Tue, 23 Jun 2015 22:04:21 +0000 (15:04 -0700)]
Merge pull request #73 from iovisor/bblanco_dev
Add vxlan tunnel monitoring example
Yonghong Song [Tue, 23 Jun 2015 21:10:01 +0000 (14:10 -0700)]
use new get_table interface to avoid specify key/leaf type in py code
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Brenden Blanco [Tue, 23 Jun 2015 19:42:24 +0000 (12:42 -0700)]
Merge pull request #72 from iovisor/yhs_dev
use "raw_input" instead "input" to avoid python 2.7 exception
Yonghong Song [Tue, 23 Jun 2015 19:36:56 +0000 (12:36 -0700)]
use builtins.input for backward/forward compability
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Yonghong Song [Tue, 23 Jun 2015 19:25:24 +0000 (12:25 -0700)]
use "raw_input" instead "input" to avoid python 2.7 exception
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Brenden Blanco [Tue, 23 Jun 2015 13:53:47 +0000 (06:53 -0700)]
Add vxlan tunnel monitoring example
* Example simulates many vxlan hosts ("hypervisors") with multiple clients per
host. Some clients will be sending traffic to another client on a different
host.
* Add vxlan header to proto.h
* Remove unused import line in vlan_learning
* NOTE: to display this demo, it is required to checkout the chord graph demo
from https://github.com/drzaeus77/chord-transitions.git.
Follow the instructions in that repo to get a simple http server up and
running.
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Fri, 19 Jun 2015 16:11:47 +0000 (09:11 -0700)]
Merge pull request #71 from iovisor/bblanco_dev
Rework vlan example to be 1:1, no mac learning
Brenden Blanco [Thu, 18 Jun 2015 22:07:04 +0000 (15:07 -0700)]
Merge pull request #70 from iovisor/ast_dev
example that shows usages of maps, probe_read, get_current_pid helpers
Alexei Starovoitov [Thu, 18 Jun 2015 21:41:17 +0000 (14:41 -0700)]
example that shows usages of maps, probe_read, get_current_pid helpers
$ ./task_switch.py
task_switch[ 2379-> 0]=4
task_switch[ 3914-> 0]=2
task_switch[ 3133-> 0]=5
task_switch[10903-> 0]=100 <-- 100 times python process switched into idle
task_switch[ 116-> 0]=1
task_switch[ 0-> 14]=1
task_switch[10803-> 0]=1
task_switch[22292-> 0]=1
task_switch[ 0->22292]=1
task_switch[ 0->10803]=1
task_switch[ 30-> 0]=1
task_switch[ 0->10903]=100 <-- 100 times back into python
Signed-off-by: Alexei Starovoitov <ast@plumgrid.com>
Brenden Blanco [Fri, 19 Jun 2015 00:53:31 +0000 (17:53 -0700)]
Rework vlan example to be 1:1, no mac learning
* Use ifindex instead of src_mac to program egress table
* Remove the static arp programming
* Get the example to work in python2
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Thu, 18 Jun 2015 07:52:39 +0000 (00:52 -0700)]
Merge pull request #69 from iovisor/bblanco_dev
Move shared example code into simulation.py
Brenden Blanco [Thu, 18 Jun 2015 07:28:47 +0000 (00:28 -0700)]
Move shared example code into simulation.py
* Create a class for the examples to share, helps with IPDB cleanup and
namespace creation.
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Thu, 18 Jun 2015 01:29:54 +0000 (18:29 -0700)]
Merge pull request #68 from iovisor/bblanco_dev
Remove update() call from vlan example
Brenden Blanco [Thu, 18 Jun 2015 00:30:13 +0000 (17:30 -0700)]
Remove update() call from vlan example
* Breakage from previous commit
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Thu, 18 Jun 2015 00:28:32 +0000 (17:28 -0700)]
Merge pull request #67 from iovisor/bblanco_dev
Make python table accesses more pythonic
Brenden Blanco [Thu, 18 Jun 2015 00:22:11 +0000 (17:22 -0700)]
Make python table accesses more pythonic
* Add [] support in BPF.Table class
* Remove uses of lookup/update
* Add del support
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Wed, 17 Jun 2015 20:06:22 +0000 (13:06 -0700)]
Merge pull request #65 from iovisor/ast_dev
add get_current_pid/tgid/uid/gid/comm helpers
Alexei Starovoitov [Wed, 17 Jun 2015 19:55:42 +0000 (12:55 -0700)]
update FAQ for past.builtins
Signed-off-by: Alexei Starovoitov <ast@plumgrid.com>
Alexei Starovoitov [Wed, 17 Jun 2015 19:45:49 +0000 (12:45 -0700)]
add get_current_pid/tgid/uid/gid/comm helpers
Signed-off-by: Alexei Starovoitov <ast@plumgrid.com>
4ast [Wed, 17 Jun 2015 19:29:08 +0000 (12:29 -0700)]
Merge pull request #64 from iovisor/bblanco_dev
Automatically compute sizeof in bpf_trace_printk
Brenden Blanco [Wed, 17 Jun 2015 19:07:27 +0000 (12:07 -0700)]
Automatically compute sizeof in bpf_trace_printk
* Addresses issue #61
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Wed, 17 Jun 2015 00:35:13 +0000 (17:35 -0700)]
Merge pull request #63 from iovisor/bblanco_dev
Add example for BPF+tc rate limiting
Brenden Blanco [Wed, 17 Jun 2015 00:26:46 +0000 (17:26 -0700)]
Use update() instead of init() in neighbor example
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Wed, 17 Jun 2015 00:18:58 +0000 (17:18 -0700)]
Use netperf for testing, update comments
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Tue, 16 Jun 2015 20:50:16 +0000 (13:50 -0700)]
Add example for BPF+tc rate limiting
* Adding an example to address #59, simulation of bandwidth sharing
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Tue, 16 Jun 2015 18:31:30 +0000 (11:31 -0700)]
Merge pull request #62 from iovisor/bblanco_dev
Compatibility fixes and pyroute2 examples
Brenden Blanco [Tue, 16 Jun 2015 18:00:45 +0000 (11:00 -0700)]
Remove simple_ipdb example as redundant
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Tue, 16 Jun 2015 07:21:57 +0000 (00:21 -0700)]
Add simple examples for using pyroute2+tc
* simple_tc shows using just IPRoute
* simple_ipdb shows using IPDB as well, slightly more complicated
- If the exception handling is done as shown, hangs may result
- If only IPRoute is used, this shouldn't be the case
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Tue, 16 Jun 2015 05:57:41 +0000 (22:57 -0700)]
Fix python2.7 compatibility breakage
* Add requirement on 'future' package to ensure backwards compatibility
- If working in dev environment, do 'sudo pip install future'
Note: end-users installing a compiled package with pip should have
future installed as a dependency automatically.
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Fri, 12 Jun 2015 23:02:34 +0000 (16:02 -0700)]
Merge pull request #58 from iovisor/yhs_dev
reduce test time for test_brb and test_brb2
Yonghong Song [Fri, 12 Jun 2015 22:26:49 +0000 (15:26 -0700)]
reduce test time for test_brb and test_brb2
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
4ast [Fri, 12 Jun 2015 21:45:02 +0000 (14:45 -0700)]
Merge pull request #57 from iovisor/bblanco_dev
Automatically detect key/leaf type in clang
Brenden Blanco [Fri, 12 Jun 2015 21:33:21 +0000 (14:33 -0700)]
Fix breakage in vlan_learning example
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Fri, 12 Jun 2015 21:07:04 +0000 (14:07 -0700)]
Automatically detect key/leaf type in clang
* Parse the key and leaf types used for table definition, and pass the
type info back into python using a json transport
* Remove the subscript operator support
* Migrate the tests that are able to drop they Key/Leaf definition. Keep
it around for the tests that are B/C compatible
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Fri, 12 Jun 2015 03:02:28 +0000 (20:02 -0700)]
Merge pull request #55 from iovisor/bblanco_dev
Cleanups for some build/compile failures
yonghong-song [Fri, 12 Jun 2015 02:51:06 +0000 (19:51 -0700)]
Merge pull request #56 from iovisor/test_brb-fix
Brenden Blanco [Fri, 12 Jun 2015 00:21:14 +0000 (17:21 -0700)]
Use "ip" instead of "route" command
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Fri, 12 Jun 2015 00:05:53 +0000 (17:05 -0700)]
Fix python3 incompatible code in tests
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Thu, 11 Jun 2015 23:39:50 +0000 (16:39 -0700)]
Merge pull request #54 from iovisor/yhs_dev
python commands module is removed in python 3, use subprocess
Brenden Blanco [Thu, 11 Jun 2015 23:20:49 +0000 (16:20 -0700)]
Cleanups for some build/compile failures
* Change ftw to nftw, and do depth-first tmpdir cleanup
* Scrub CROSS_COMPILE variable before kbuild_helpers
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Yonghong Song [Thu, 11 Jun 2015 23:03:19 +0000 (16:03 -0700)]
python commands module is removed in python 3, use subprocess
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Brenden Blanco [Thu, 11 Jun 2015 22:55:19 +0000 (15:55 -0700)]
Merge pull request #53 from iovisor/yhs_dev
Yhs dev
Yonghong Song [Thu, 11 Jun 2015 22:38:24 +0000 (15:38 -0700)]
Add an FAQ entry to provide workaround for potential bpf pkg installation problem.
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
Yonghong Song [Thu, 11 Jun 2015 22:22:25 +0000 (15:22 -0700)]
fix README to provide more clarity for potential python pkg installation issue
Signed-off-by: Yonghong Song <yhs@plumgrid.com>
4ast [Thu, 11 Jun 2015 21:44:01 +0000 (14:44 -0700)]
Merge pull request #51 from iovisor/marcol_dev
Update readme and FAQs
4ast [Thu, 11 Jun 2015 21:42:44 +0000 (14:42 -0700)]
Merge pull request #50 from iovisor/bblanco_dev
Remove the BPF_EXPORT macro, use rewriter instead
Brenden Blanco [Thu, 11 Jun 2015 21:41:37 +0000 (14:41 -0700)]
Turn off vlan_learning BPF debug
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Marco Leogrande [Thu, 11 Jun 2015 21:39:13 +0000 (14:39 -0700)]
Update FAQs to include minimal kernel instructions
Specifically, mention the step to install the kernel image, modules
and headers.
Brenden Blanco [Thu, 11 Jun 2015 21:31:31 +0000 (14:31 -0700)]
Remove the BPF_EXPORT macro, use rewriter instead
* Add a BFrontentAction to recognize any external linkage function as
being available for export, and internally set the section attribute.
* Change bpf helpers to be static inline
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Marco Leogrande [Thu, 11 Jun 2015 21:26:30 +0000 (14:26 -0700)]
Update README with kernel headers information
Include kernel headers >=4.1 as a prerequisite.
4ast [Thu, 11 Jun 2015 19:44:04 +0000 (12:44 -0700)]
Merge pull request #49 from iovisor/bblanco_dev
Add kprobe auto-cleanup and header fix
Brenden Blanco [Thu, 11 Jun 2015 19:35:55 +0000 (12:35 -0700)]
Add kprobe auto-cleanup and header fix
* Add bpf_detach_kprobe helper to libbpf
* Automatically invoke detach at python program exit
* Add "uapi/" to one include in helpers.h
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Thu, 11 Jun 2015 19:06:57 +0000 (12:06 -0700)]
Merge pull request #48 from iovisor/yhs_dev
avoid include file linux/bpf.h in helpers.h