Commit Graph

248 Commits (9eefb48a0ad90831c09c7bd941d035b34e1f1771)

Author SHA1 Message Date
Alessandro Decina 40b7da6655 aya: add id and pinning fields to bpf_map_def 4 years ago
Alessandro Decina 9e12c9324c aya: fix warnings 5 years ago
Alessandro Decina dad300c88b aya: maps: add SockHash 5 years ago
Alessandro Decina b57cace941 aya: add support BPF_PROG_TYPE_SK_SKB programs and SockMaps 5 years ago
Alessandro Decina b6cd813af5 aya: fix program array key size 5 years ago
Alessandro Decina 0b3e532d7a aya: small doc fixes 5 years ago
Alessandro Decina d9634ae945 aya: add maps::StackTraceMap
Map type for BPF_MAP_TYPE_STACK_TRACE.
5 years ago
Alessandro Decina ad6d0596ab aya: tweak docs 5 years ago
Alessandro Decina f464279740 aya: rename ProgramArray::unset to ProgramArray::clear_index 5 years ago
Alessandro Decina 9ad2a5e72d aya: rename ProgramArray::keys to ProgramArray::indices 5 years ago
Alessandro Decina b0364f76ab aya: maps: add PerCpuArray 5 years ago
Alessandro Decina 74d5f17559 aya: rework IterableMap and ProgramArray
Make MapKeys not use IterableMap. Leave only ProgramArray::get,
ProgramArray::set and ProgramArray::unset exposed as the other syscalls
don't work consistently for program arrays.
5 years ago
Alessandro Decina aa3a30d196 aya: PerCpuKernelMem doesn't need to be public 5 years ago
Alessandro Decina 1746bbf5b8 aya: add aya::maps::Array 5 years ago
Alessandro Decina c3b902137b aya: add aya::maps::array and move ProgramArray under it 5 years ago
Alessandro Decina 6cec8be564 aya: hash_map: add doc aliases for HASH and LRU_HASH 5 years ago
Alessandro Decina 7a989b43b9 aya: per_cpu_hash_map: add support for BPF_MAP_TYPE_LRU_PERCPU_HASH 5 years ago
Alessandro Decina 635dcd44b9 aya: maps: introduce MapError::KeyNotFound
Change get() from -> Result<Option<V>, MapError> to -> Result<V,
MapError> where MapError::KeyNotFound is returned instead of Ok(None) to
signify that the key is not present.
5 years ago
Alessandro Decina fd142e467c aya: rename MapError::NotFound to MapError::MapNotFound 5 years ago
Alessandro Decina 3a5b289163 aya: add PerCpuHashMap 5 years ago
Alessandro Decina d5098c9e57 aya: move hash_map.rs to hash_map/hash_map.rs 5 years ago
Alessandro Decina 6a12a48f03 aya: hash_map: factor out common hash code
This is in preparation of adding new hash map types
5 years ago
Alessandro Decina 7c6ae76975 aya: HashMap: add support for LRU maps 5 years ago
Alessandro Decina 04fde46855 aya: more docs 5 years ago
Alessandro Decina eea27f52f3 aya: tweak docs 5 years ago
Alessandro Decina 5aa9cb12ad aya: rename perf map and add docs
Rename the perf_map module to just perf, and rename PerfMap to
PerfEventArray.
5 years ago
Alessandro Decina d94bfde295 aya: maps: add docs and make the hash_map and program_array modules public 5 years ago
Alessandro Decina ce3f83acb1 aya: add HashMap docs 5 years ago
Alessandro Decina e28da8812e aya: make HashMap::new private 5 years ago
Alessandro Decina 24f7c37158 aya: add ProgramArray docs 5 years ago
Alessandro Decina 3fddc8165c aya: make ProgramArray::new private 5 years ago
Alessandro Decina 6682a5ff39 aya: remove pop()
lookup_and_delete_elem is only supported for QUEUE and STACK maps at the
moment.
5 years ago
Alessandro Decina 563ce46118 aya: maps: group syscall errors into MapError::SyscallError 5 years ago
Alessandro Decina 42e0a659b2 aya: remove TryInto cleverness from map() and map_mut()
Require callers to call try_into() explicitly. It's more characters, but
it's easier to understand/document.

Also introduce MapError::NotFound instead of returning Result<Option<_>>.
5 years ago
Alessandro Decina ed53f7470b aya: maps: add Map::name() and Map::map_type() 5 years ago
Alessandro Decina 29f2d9b2d9 aya: switch to rustified enums 5 years ago
Alessandro Decina a3ab2eff57 Format fixes 5 years ago
Alessandro Decina 3abe9bb859 Fix RawFd import paths 5 years ago
Alessandro Decina ba992a2414 maps: fail new() for high level wrappers if the underlying map hasn't been created 5 years ago
Alessandro Decina fdc4dad5ff maps: add AsyncPerfMap
When the async_tokio or async_std features are enabled, AsyncPerfMap
provides an async version of PerfMap which returns a future from
read_events()
5 years ago
Alessandro Decina 4be0c45305 perf_map: split in sub modules 5 years ago
Alessandro Decina 95a24c6f8b perf_map: implement AsRawFd 5 years ago
Alessandro Decina 5d6fe8bdf4 Add IOError variants to PerfMapError and PerfBufferError 5 years ago
Alessandro Decina b9be2f1a9b Make aya::maps::perf_map public 5 years ago
Alessandro Decina 160e0be6d6 Change the suffix of errors from *Failed to *Error 5 years ago
Alessandro Decina d4e282535b bpf, perf_map: make maps usable from multiple threads
Change PerfMap API so that individual buffers can be read from multiple
threads.

Change the way maps are stored in the `Bpf` struct from RefCell to a
custom RwLock.
5 years ago
Alessandro Decina d7c91efb2d Make online_cpus() util public 5 years ago
Alessandro Decina af8f769b50 Turn the project into a workspace, move code under aya/ 5 years ago