usb: dwc3: trace: don't save pointers
authorFelipe Balbi <balbi@ti.com>
Thu, 20 Nov 2014 16:12:32 +0000 (10:12 -0600)
committerFelipe Balbi <balbi@ti.com>
Thu, 20 Nov 2014 16:12:32 +0000 (10:12 -0600)
There was another instance where we were
holding pointers which could be long gone.

Fix that by caching only values pointed to
by such pointer.

Because no crash has been observed, this patch
will be sent on v3.19 merge window, instead of
-rc.

Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/dwc3/trace.h

index 7a9d7804193cd81a8d837909d9855ef962ae4ec7..9fc20b33dd8e3141a28e4cf65772d19b9aaf7790 100644 (file)
@@ -175,17 +175,21 @@ DECLARE_EVENT_CLASS(dwc3_log_gadget_ep_cmd,
        TP_STRUCT__entry(
                __dynamic_array(char, name, DWC3_MSG_MAX)
                __field(unsigned int, cmd)
-               __field(struct dwc3_gadget_ep_cmd_params *, params)
+               __field(u32, param0)
+               __field(u32, param1)
+               __field(u32, param2)
        ),
        TP_fast_assign(
                snprintf(__get_str(name), DWC3_MSG_MAX, "%s", dep->name);
                __entry->cmd = cmd;
-               __entry->params = params;
+               __entry->param0 = params->param0;
+               __entry->param1 = params->param1;
+               __entry->param2 = params->param2;
        ),
        TP_printk("%s: cmd '%s' [%d] params %08x %08x %08x",
                __get_str(name), dwc3_gadget_ep_cmd_string(__entry->cmd),
-               __entry->cmd, __entry->params->param0,
-               __entry->params->param1, __entry->params->param2
+               __entry->cmd, __entry->param0,
+               __entry->param1, __entry->param2
        )
 );