On Mon, 2012-02-06 at 12:47 -0500, Christoph Hellwig wrote: > > + TP_STRUCT__entry( > > + __field(const struct rpc_clnt *, clnt) > > + __field(const struct rpc_task *, task) > > + __field(const void *, action) > > + __field(unsigned long, runstate) > > + __field(int, status) > > + __field(unsigned short, flags) > > Storing pointers in the trace buffer is not safe for reuse later, > and just printing the pointer values isn't overly useful either. Please > redesign these tracepoint to be a bit more useful. The pointer values are just used as labels to identify the rpc_task and rpc_clnt that is being tracked. The main information is carried in the runstate, status and flags, which are stored as-is. ��.n��������+%������w��{.n�����{��w���jg��������ݢj����G�������j:+v���w�m������w�������h�����٥