support "long" and "unsigned long" type in trace.py (#1977)
Currently, trace.py does not support "long" and "unsigned long"
types and it often caught users with a surprise and they are
not sure what is the problem. For example, for kernel function:
void blk_mq_delay_kick_requeue_list(struct request_queue *q, unsigned long msecs)
The following
$ sudo ./trace.py 'blk_mq_delay_kick_requeue_list(void *notused, unsigned long msecs) "msecs = %lu", msecs'
list index out of range
With this patch,
$ sudo ./trace.py 'blk_mq_delay_kick_requeue_list(void *notused, unsigned long msecs) "msecs = %lu", msecs'
PID TID COMM FUNC -
^C
$ sudo ./trace.py 'blk_mq_delay_kick_requeue_list(void *notused, unsigned long msecs) "msecs = %ld", msecs'
PID TID COMM FUNC -
^C
$ sudo ./trace.py 'blk_mq_delay_kick_requeue_list(void *notused, unsigned long msecs) "msecs = %lx", msecs'
PID TID COMM FUNC -
^C
$
Signed-off-by: Yonghong Song <yhs@fb.com>
Showing
Please register or sign in to comment