Change FromRawTracepointArgs::arg to return T rather than *const T which
seems to have been returning a dangling pointer.
Arguably this is not strictly necessary; edition 2024 seems to be
focused on increased strictness around unsafe code which doesn't unlock
new functionality for our users. That said, this work revealed an
apparent bug (see above) that we wouldn't otherwise catch due to
allow-by-default lints.
```
error: first doc comment paragraph is too long
--> aya/src/programs/raw_trace_point.rs:12:1
|
12 | / /// A program that can be attached at a pre-defined kernel trace point, but also
13 | | /// has an access to kernel internal arguments of trace points, which
14 | | /// differentiates them from traditional tracepoint eBPF programs.
15 | | ///
16 | | /// The kernel provides a set of pre-defined trace points that eBPF programs can
| |_
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_long_first_doc_paragraph
error: first doc comment paragraph is too long
--> ebpf/aya-ebpf/src/helpers.rs:1:1
|
1 | / //! This module contains kernel helper functions that may be exposed to specific BPF
2 | | //! program types. These helpers can be used to perform common tasks, query and operate on
3 | | //! data exposed by the kernel, and perform some operations that would normally be denied
4 | | //! by the BPF verifier.
5 | | //!
6 | | //! Here, we provide some higher-level wrappers around the underlying kernel helpers, but
| |_
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_long_first_doc_paragraph
```
```
warning: casting `u8` to `u64` may become silently lossy if you later change the type
warning: casting `u16` to `u64` may become silently lossy if you later change the type
warning: casting `u32` to `u64` may become silently lossy if you later change the type
warning: casting `i64` to `u64` may lose the sign of the value
warning: casting `i8` to `i64` may become silently lossy if you later change the type
warning: casting `i64` to `u64` may lose the sign of the value
warning: casting `i16` to `i64` may become silently lossy if you later change the type
warning: casting `i32` to `i64` may become silently lossy if you later change the type
--> ebpf/aya-ebpf/src/helpers.rs:753:27
|
753 | PrintkArg(x as $via as u64)
| ^
...
759 | / impl_integer_promotion!(
760 | | char: via u64,
761 | | u8: via u64,
762 | | u16: via u64,
... |
770 | | isize: via i64,
771 | | );
| |_- in this macro invocation
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless
= note: this warning originates in the macro `impl_integer_promotion` (in Nightly builds, run with -Z macro-backtrace for more info)
```
Pass an array of bytes instead of u64 to avoid clippy sign warnings.