Add custom data pointer to ring buffer context

Ring buffer context is allocated on the stack and is thus interrupt and preempt
coherent. Use it to store a custom data pointer that a variable size event
context can use to store state information between call to get_size_arg() and
record().

Signed-off-by: Francis Giraldeau <francis.giraldeau@gmail.com>
WIP skeleton of structure allocation