On Fri, Aug 15, 2014 at 12:18 PM, Andy Lutomirski [off-list ref] wrote:
quoted
clang/llvm has no problem with u64 :)
This bpf_context struct for tracing is trying to answer the question:
'what's the most convenient way to access tracepoint arguments
from a script'.
When kernel code has something like:
trace_kfree_skb(skb, net_tx_action);
the script needs to be able to access this 'skb' and 'net_tx_action'
values through _single_ data structure.
In this proposal they are ctx->arg1 and ctx->arg2.
I've considered having different bpf_context's for every event, but
the complexity explodes. I need to hack all event definitions and so on.
imo it's better to move complexity to userspace, so program author
or high level language abstracts these details.
I still don't understand why making them long instead of u64 is
helpful, though. I feel like I'm missing obvious here.
I promise to come back to this... Have to go off grid...
will think of it in the mean time... Appreciate this discussion!!