de4905a24b 
								
							
								 
							
						 
						
							
							
								
								aya: Add loaded_programs() API to list all loaded programs  
							
							... 
							
							
							
							This uses a Programs iterator to yield all loaded bpf programs using
bpf_prog_get_next_id.
Signed-off-by: Dave Tucker <dave@dtucker.co.uk> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								56c143831e 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #523  from dave-tucker/fix_perf_link  
							
							... 
							
							
							
							aya: Fix is_perf_link_supported 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								ce79de7ff6 
								
							
								 
							
						 
						
							
							
								
								aya: Fix is_perf_link_supported  
							
							... 
							
							
							
							This was mistakenly comparing the exit code of the syscall, which is
always -1 and not the corresponding error-code. Added unit tests to
ensure we don't regress.
Signed-off-by: Dave Tucker <dave@dtucker.co.uk> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								d7d6442671 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #522  from dave-tucker/perf_link  
							
							... 
							
							
							
							Use bpf_link for perf_attach programs (Kprobe/Uprobe/Tracepoint etc...) 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								7479c1dd6c 
								
							
								 
							
						 
						
							
							
								
								aya: More discrete feature logging  
							
							... 
							
							
							
							Just use the Debug formatter vs. printing a message for each probe.
Signed-off-by: Dave Tucker <dave@dtucker.co.uk> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								d0b3d3b2fa 
								
							
								 
							
						 
						
							
							
								
								aya: Enable bpf_link for perf_attach programs  
							
							... 
							
							
							
							This adds support for bpf_link to PerfEvent, Tracepoint, Kprobe and
Uprobe programs.
Signed-off-by: Dave Tucker <dave@dtucker.co.uk> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								763b92a2e0 
								
							
								 
							
						 
						
							
							
								
								aya: Add probe for bpf_link_create for perf programs  
							
							... 
							
							
							
							Signed-off-by: Dave Tucker <dave@dtucker.co.uk> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								ce22ca668f 
								
							
								 
							
						 
						
							
							
								
								aya: Make features a lazy_static  
							
							... 
							
							
							
							Signed-off-by: Dave Tucker <dave@dtucker.co.uk> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								bc83f208b1 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #519  from dave-tucker/frags  
							
							... 
							
							
							
							XDP Multi-Buffer Support 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								376c486400 
								
							
								 
							
						 
						
							
							
								
								aya-bpf: Add multibuffer support for XDP  
							
							... 
							
							
							
							Signed-off-by: Dave Tucker <dave@dtucker.co.uk> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								bb1b39535c 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #517  from dmitris/derive-debug  
							
							... 
							
							
							
							aya-tool: remove outdated workaround 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								a18693b42d 
								
							
								 
							
						 
						
							
							
								
								aya: Add support for multibuffer programs  
							
							... 
							
							
							
							This adds support for loading XDP programs that are multi-buffer
capable, which is signalled using the xdp.frags section name. When this
is set, we should set the BPF_F_XDP_HAS_FRAGS flag when loading the
program into the kernel.
Signed-off-by: Dave Tucker <dave@dtucker.co.uk> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								96b282d149 
								
							
								 
							
						 
						
							
							
								
								aya-tool: remove outdated workaround  
							
							... 
							
							
							
							The comment says that `.derive_debug` was needed as
a workaround for https://github.com/rust-lang/rust-bindgen/issues/2083 .
This issue is now closed, and aya-tool compiles without derive_debug.
Additionally, update bindgen dependency to 1.64.
Signed-off-by: Dmitry Savintsev <dsavints@gmail.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								811ab299de 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #496  from dave-tucker/program-from-pinned3  
							
							... 
							
							
							
							aya: Add from_pin for Programs 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								7a720ab0c1 
								
							
								 
							
						 
						
							
							
								
								aya: Add from_pin for Programs  
							
							... 
							
							
							
							This commit adds from_pin() which allows the creation of a Program
from a path on bpffs. This is useful to be able to call `attach` or
other APIs for programs that are already loaded to the kernel.
This differs from #444  since it implements this on the concrete program
type, not the Program enum, allowing the user to pass in any additional
context that isn't available from bpf_prog_info.
Signed-off-by: Dave Tucker <dave@dtucker.co.uk> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								cfa693bc3b 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #515  from alessandrod/fix-lru-hash  
							
							... 
							
							
							
							aya: fix Lru and LruPerCpu hash maps 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								c22014c757 
								
							
								 
							
						 
						
							
							
								
								aya: fix Lru and LruPerCpu hash maps  
							
							... 
							
							
							
							They were broken by https://github.com/aya-rs/aya/pull/397  
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								7868fffd7f 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #514  from astoycos/fix-badge  
							
							... 
							
							
							
							Fix Aya build badge 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								4ddbc1cacb 
								
									
								
							
								 
							
						 
						
							
							
								
								Fix Aya build badge  
							
							... 
							
							
							
							Signed-off-by: Andrew Stoycos <astoycos@redhat.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								27017ca8a3 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #512  from astoycos/crucial-btf-fixes  
							
							... 
							
							
							
							Support BTF key/value specification for all maps 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								52e625060e 
								
									
								
							
								 
							
						 
						
							
							
								
								Support BTF key/value specification for all maps  
							
							... 
							
							
							
							Fix a bug which was resulting in `ENOTSUPP` following
the `BPF_MAP_CREATE` Syscall.  This fix was initially
found by libbpf maintainers in:
https://github.com/libbpf/libbpf/issues/355 .
Signed-off-by: Andrew Stoycos <astoycos@redhat.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								22d79312f7 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #445  from anfredette/tc-link-recon  
							
							... 
							
							
							
							Support reconstruction of `SchedClassifierLink` 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								7855a0e0c6 
								
							
								 
							
						 
						
							
							
								
								retrigger checks  
							
							... 
							
							
							
							Signed-off-by: Andre Fredette <afredette@redhat.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								7c24296b5d 
								
							
								 
							
						 
						
							
							
								
								Address review comments from @alessandrod  
							
							... 
							
							
							
							Signed-off-by: Andre Fredette <afredette@redhat.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								be5b4c82cc 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #508  from aya-rs/dependabot/cargo/indoc-2.0  
							
							... 
							
							
							
							build(deps): update indoc requirement from 1.0 to 2.0 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								912ee06f39 
								
									
								
							
								 
							
						 
						
							
							
								
								build(deps): update indoc requirement from 1.0 to 2.0  
							
							... 
							
							
							
							Updates the requirements on [indoc](https://github.com/dtolnay/indoc ) to permit the latest version.
- [Release notes](https://github.com/dtolnay/indoc/releases )
- [Commits](https://github.com/dtolnay/indoc/compare/1.0.0...2.0.0 )
---
updated-dependencies:
- dependency-name: indoc
  dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								e8e276730e 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #453  from alessandrod/btf-kind-enum64  
							
							... 
							
							
							
							Add support for BTF_KIND_ENUM64 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								9a6f8143a1 
								
							
								 
							
						 
						
							
							
								
								aya: btf: add support for BTF_KIND_ENUM64  
							
							
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								f81b1b9f3e 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #501  from alessandrod/fix-enum32-relocs  
							
							... 
							
							
							
							aya: btf: fix relocations for signed enums (32 bits) 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								4482db42d8 
								
							
								 
							
						 
						
							
							
								
								aya: btf: fix relocations for signed enums (32 bits)  
							
							... 
							
							
							
							Enums now carry a signed bit in the info flags. Take it into account
when applying enum relocations. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								d6b976c6f1 
								
							
								 
							
						 
						
							
							
								
								aya: btf: switch ComputedRelocationValue::value to u64  
							
							... 
							
							
							
							This is in preparation of adding Enum64 relocation support 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								9d7c950d1b 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #506  from alessandrod/macos-tests  
							
							... 
							
							
							
							Speed up integration tests 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								455cc95e8f 
								
							
								 
							
						 
						
							
							
								
								integration-tests: run on macos to get nested virtualization  
							
							... 
							
							
							
							Switch integration-test host to macos as only macos runners support nested
virtualization. Adjust integration test runner accordingly. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								8e9608eedd 
								
							
								 
							
						 
						
							
							
								
								test/run.sh: output `uname -a` after starting the vm  
							
							
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								c7b262641b 
								
							
								 
							
						 
						
							
							
								
								Run integration tests under fedora37  
							
							
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								d2a999d27a 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #504  from vadorovsky/unpin-nightly  
							
							... 
							
							
							
							Unpin Rust nightly 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								7d19bde66b 
								
							
								 
							
						 
						
							
							
								
								Unpin Rust nightly  
							
							... 
							
							
							
							The issues with core::sync::atomic got fixed.
Signed-off-by: Michal Rostecki <vadorovsky@gmail.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								3e9d85f871 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #500  from vadorovsky/bpf-macros-visibility  
							
							... 
							
							
							
							aya-bpf-macros: Allow to make programs public 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								7e5637bb9c 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #471  from banditopazzo/tracefs_mount_select  
							
							... 
							
							
							
							add tracefs mount point select function 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								48fdf5a250 
								
							
								 
							
						 
						
							
							
								
								chore: tracefs review fixes  
							
							
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								c6c4ac7eea 
								
							
								 
							
						 
						
							
							
								
								feat: get_tracefs function  
							
							
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								6ad2c3c373 
								
							
								 
							
						 
						
							
							
								
								aya-bpf-macros: Allow to make programs public  
							
							... 
							
							
							
							Allow to define programs as public functions (even in library crates)
and then import them.
For example, we can have library crate with `libfoo/src/lib.rs`
containing:
```rust
pub fn my_xdp_program(ctx: XdpContext) -> u32 {
    xdp_action::XDP_PASS
}
```
And then a binary importing it:
```rust
pub use libfoo::my_xdp_program;
```
This way, commonly used eBPF programs can be distributed as lib crates.
Tested with: https://github.com/vadorovsky/aya-examples/tree/main/pub-progs 
Signed-off-by: Michal Rostecki <vadorovsky@gmail.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								556463a85f 
								
							
								 
							
						 
						
							
							
								
								ebpf: SkbBuff: add some accessors  
							
							
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								d43879d991 
								
							
								 
							
						 
						
							
							
								
								Updates after rebase due to changes in define_link_wrapper  
							
							... 
							
							
							
							Signed-off-by: Andre Fredette <afredette@redhat.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								6766532341 
								
							
								 
							
						 
						
							
							
								
								Remove SchedClassifierLink description  
							
							... 
							
							
							
							It was redundant with the one provided in define_link_wrapper
Signed-off-by: Andre Fredette <afredette@redhat.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								2972d462a5 
								
							
								 
							
						 
						
							
							
								
								Address review comments  
							
							... 
							
							
							
							- Rename `new_tc_link` to `attached`
- Simplified example for `attached`
The following was not requested in reviews:
- Moved example from `SchedClassifierLink` tor
  `SchedClassifierLink::attached' since we're only showing an
  example of that one method
Signed-off-by: Andre Fredette <afredette@redhat.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								65f5b76593 
								
							
								 
							
						 
						
							
							
								
								Address review comments  
							
							... 
							
							
							
							Signed-off-by: Andre Fredette <afredette@redhat.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								849796c420 
								
							
								 
							
						 
						
							
							
								
								rename SchedClassifierLink:new() to new_tc_link()  
							
							... 
							
							
							
							Avoids name confilct with pr #462 
Signed-off-by: Andre Fredette <afredette@redhat.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								67efc33414 
								
							
								 
							
						 
						
							
							
								
								Additional edits to SchedClassifierLink documentation.  
							
							... 
							
							
							
							Signed-off-by: Andre Fredette <afredette@redhat.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								6563e6cc06 
								
							
								 
							
						 
						
							
							
								
								Combine updates to SchedClassifierLink example made by Dave Tucker  
							
							... 
							
							
							
							Co-authored-by: Dave Tucker <dave@dtucker.co.uk>
Signed-off-by: Andre Fredette <afredette@redhat.com> 
							
						 
						
							3 years ago