aboutsummaryrefslogtreecommitdiffstats
path: root/include/trace/events
diff options
context:
space:
mode:
Diffstat (limited to 'include/trace/events')
-rw-r--r--include/trace/events/host1x.h27
-rw-r--r--include/trace/events/module.h2
-rw-r--r--include/trace/events/sunrpc.h120
3 files changed, 130 insertions, 19 deletions
diff --git a/include/trace/events/host1x.h b/include/trace/events/host1x.h
index 94db6a2c3540..63116362543c 100644
--- a/include/trace/events/host1x.h
+++ b/include/trace/events/host1x.h
@@ -29,6 +29,8 @@
29#include <linux/ktime.h> 29#include <linux/ktime.h>
30#include <linux/tracepoint.h> 30#include <linux/tracepoint.h>
31 31
32struct host1x_bo;
33
32DECLARE_EVENT_CLASS(host1x, 34DECLARE_EVENT_CLASS(host1x,
33 TP_PROTO(const char *name), 35 TP_PROTO(const char *name),
34 TP_ARGS(name), 36 TP_ARGS(name),
@@ -79,14 +81,14 @@ TRACE_EVENT(host1x_cdma_push,
79); 81);
80 82
81TRACE_EVENT(host1x_cdma_push_gather, 83TRACE_EVENT(host1x_cdma_push_gather,
82 TP_PROTO(const char *name, u32 mem_id, 84 TP_PROTO(const char *name, struct host1x_bo *bo,
83 u32 words, u32 offset, void *cmdbuf), 85 u32 words, u32 offset, void *cmdbuf),
84 86
85 TP_ARGS(name, mem_id, words, offset, cmdbuf), 87 TP_ARGS(name, bo, words, offset, cmdbuf),
86 88
87 TP_STRUCT__entry( 89 TP_STRUCT__entry(
88 __field(const char *, name) 90 __field(const char *, name)
89 __field(u32, mem_id) 91 __field(struct host1x_bo *, bo)
90 __field(u32, words) 92 __field(u32, words)
91 __field(u32, offset) 93 __field(u32, offset)
92 __field(bool, cmdbuf) 94 __field(bool, cmdbuf)
@@ -100,13 +102,13 @@ TRACE_EVENT(host1x_cdma_push_gather,
100 } 102 }
101 __entry->cmdbuf = cmdbuf; 103 __entry->cmdbuf = cmdbuf;
102 __entry->name = name; 104 __entry->name = name;
103 __entry->mem_id = mem_id; 105 __entry->bo = bo;
104 __entry->words = words; 106 __entry->words = words;
105 __entry->offset = offset; 107 __entry->offset = offset;
106 ), 108 ),
107 109
108 TP_printk("name=%s, mem_id=%08x, words=%u, offset=%d, contents=[%s]", 110 TP_printk("name=%s, bo=%p, words=%u, offset=%d, contents=[%s]",
109 __entry->name, __entry->mem_id, 111 __entry->name, __entry->bo,
110 __entry->words, __entry->offset, 112 __entry->words, __entry->offset,
111 __print_hex(__get_dynamic_array(cmdbuf), 113 __print_hex(__get_dynamic_array(cmdbuf),
112 __entry->cmdbuf ? __entry->words * 4 : 0)) 114 __entry->cmdbuf ? __entry->words * 4 : 0))
@@ -221,12 +223,13 @@ TRACE_EVENT(host1x_syncpt_load_min,
221); 223);
222 224
223TRACE_EVENT(host1x_syncpt_wait_check, 225TRACE_EVENT(host1x_syncpt_wait_check,
224 TP_PROTO(void *mem_id, u32 offset, u32 syncpt_id, u32 thresh, u32 min), 226 TP_PROTO(struct host1x_bo *bo, u32 offset, u32 syncpt_id, u32 thresh,
227 u32 min),
225 228
226 TP_ARGS(mem_id, offset, syncpt_id, thresh, min), 229 TP_ARGS(bo, offset, syncpt_id, thresh, min),
227 230
228 TP_STRUCT__entry( 231 TP_STRUCT__entry(
229 __field(void *, mem_id) 232 __field(struct host1x_bo *, bo)
230 __field(u32, offset) 233 __field(u32, offset)
231 __field(u32, syncpt_id) 234 __field(u32, syncpt_id)
232 __field(u32, thresh) 235 __field(u32, thresh)
@@ -234,15 +237,15 @@ TRACE_EVENT(host1x_syncpt_wait_check,
234 ), 237 ),
235 238
236 TP_fast_assign( 239 TP_fast_assign(
237 __entry->mem_id = mem_id; 240 __entry->bo = bo;
238 __entry->offset = offset; 241 __entry->offset = offset;
239 __entry->syncpt_id = syncpt_id; 242 __entry->syncpt_id = syncpt_id;
240 __entry->thresh = thresh; 243 __entry->thresh = thresh;
241 __entry->min = min; 244 __entry->min = min;
242 ), 245 ),
243 246
244 TP_printk("mem_id=%p, offset=%05x, id=%d, thresh=%d, current=%d", 247 TP_printk("bo=%p, offset=%05x, id=%d, thresh=%d, current=%d",
245 __entry->mem_id, __entry->offset, 248 __entry->bo, __entry->offset,
246 __entry->syncpt_id, __entry->thresh, 249 __entry->syncpt_id, __entry->thresh,
247 __entry->min) 250 __entry->min)
248); 251);
diff --git a/include/trace/events/module.h b/include/trace/events/module.h
index 7c5cbfe3fc49..81c4c183d348 100644
--- a/include/trace/events/module.h
+++ b/include/trace/events/module.h
@@ -80,7 +80,7 @@ DECLARE_EVENT_CLASS(module_refcnt,
80 80
81 TP_fast_assign( 81 TP_fast_assign(
82 __entry->ip = ip; 82 __entry->ip = ip;
83 __entry->refcnt = __this_cpu_read(mod->refptr->incs) - __this_cpu_read(mod->refptr->decs); 83 __entry->refcnt = atomic_read(&mod->refcnt);
84 __assign_str(name, mod->name); 84 __assign_str(name, mod->name);
85 ), 85 ),
86 86
diff --git a/include/trace/events/sunrpc.h b/include/trace/events/sunrpc.h
index 171ca4ff6d99..b9c1dc6c825a 100644
--- a/include/trace/events/sunrpc.h
+++ b/include/trace/events/sunrpc.h
@@ -8,6 +8,7 @@
8#include <linux/sunrpc/clnt.h> 8#include <linux/sunrpc/clnt.h>
9#include <linux/sunrpc/svc.h> 9#include <linux/sunrpc/svc.h>
10#include <linux/sunrpc/xprtsock.h> 10#include <linux/sunrpc/xprtsock.h>
11#include <linux/sunrpc/svc_xprt.h>
11#include <net/tcp_states.h> 12#include <net/tcp_states.h>
12#include <linux/net.h> 13#include <linux/net.h>
13#include <linux/tracepoint.h> 14#include <linux/tracepoint.h>
@@ -412,6 +413,16 @@ TRACE_EVENT(xs_tcp_data_recv,
412 __entry->copied, __entry->reclen, __entry->offset) 413 __entry->copied, __entry->reclen, __entry->offset)
413); 414);
414 415
416#define show_rqstp_flags(flags) \
417 __print_flags(flags, "|", \
418 { (1UL << RQ_SECURE), "RQ_SECURE"}, \
419 { (1UL << RQ_LOCAL), "RQ_LOCAL"}, \
420 { (1UL << RQ_USEDEFERRAL), "RQ_USEDEFERRAL"}, \
421 { (1UL << RQ_DROPME), "RQ_DROPME"}, \
422 { (1UL << RQ_SPLICE_OK), "RQ_SPLICE_OK"}, \
423 { (1UL << RQ_VICTIM), "RQ_VICTIM"}, \
424 { (1UL << RQ_BUSY), "RQ_BUSY"})
425
415TRACE_EVENT(svc_recv, 426TRACE_EVENT(svc_recv,
416 TP_PROTO(struct svc_rqst *rqst, int status), 427 TP_PROTO(struct svc_rqst *rqst, int status),
417 428
@@ -421,16 +432,19 @@ TRACE_EVENT(svc_recv,
421 __field(struct sockaddr *, addr) 432 __field(struct sockaddr *, addr)
422 __field(__be32, xid) 433 __field(__be32, xid)
423 __field(int, status) 434 __field(int, status)
435 __field(unsigned long, flags)
424 ), 436 ),
425 437
426 TP_fast_assign( 438 TP_fast_assign(
427 __entry->addr = (struct sockaddr *)&rqst->rq_addr; 439 __entry->addr = (struct sockaddr *)&rqst->rq_addr;
428 __entry->xid = status > 0 ? rqst->rq_xid : 0; 440 __entry->xid = status > 0 ? rqst->rq_xid : 0;
429 __entry->status = status; 441 __entry->status = status;
442 __entry->flags = rqst->rq_flags;
430 ), 443 ),
431 444
432 TP_printk("addr=%pIScp xid=0x%x status=%d", __entry->addr, 445 TP_printk("addr=%pIScp xid=0x%x status=%d flags=%s", __entry->addr,
433 be32_to_cpu(__entry->xid), __entry->status) 446 be32_to_cpu(__entry->xid), __entry->status,
447 show_rqstp_flags(__entry->flags))
434); 448);
435 449
436DECLARE_EVENT_CLASS(svc_rqst_status, 450DECLARE_EVENT_CLASS(svc_rqst_status,
@@ -444,18 +458,19 @@ DECLARE_EVENT_CLASS(svc_rqst_status,
444 __field(__be32, xid) 458 __field(__be32, xid)
445 __field(int, dropme) 459 __field(int, dropme)
446 __field(int, status) 460 __field(int, status)
461 __field(unsigned long, flags)
447 ), 462 ),
448 463
449 TP_fast_assign( 464 TP_fast_assign(
450 __entry->addr = (struct sockaddr *)&rqst->rq_addr; 465 __entry->addr = (struct sockaddr *)&rqst->rq_addr;
451 __entry->xid = rqst->rq_xid; 466 __entry->xid = rqst->rq_xid;
452 __entry->dropme = (int)rqst->rq_dropme;
453 __entry->status = status; 467 __entry->status = status;
468 __entry->flags = rqst->rq_flags;
454 ), 469 ),
455 470
456 TP_printk("addr=%pIScp rq_xid=0x%x dropme=%d status=%d", 471 TP_printk("addr=%pIScp rq_xid=0x%x status=%d flags=%s",
457 __entry->addr, be32_to_cpu(__entry->xid), __entry->dropme, 472 __entry->addr, be32_to_cpu(__entry->xid),
458 __entry->status) 473 __entry->status, show_rqstp_flags(__entry->flags))
459); 474);
460 475
461DEFINE_EVENT(svc_rqst_status, svc_process, 476DEFINE_EVENT(svc_rqst_status, svc_process,
@@ -466,6 +481,99 @@ DEFINE_EVENT(svc_rqst_status, svc_send,
466 TP_PROTO(struct svc_rqst *rqst, int status), 481 TP_PROTO(struct svc_rqst *rqst, int status),
467 TP_ARGS(rqst, status)); 482 TP_ARGS(rqst, status));
468 483
484#define show_svc_xprt_flags(flags) \
485 __print_flags(flags, "|", \
486 { (1UL << XPT_BUSY), "XPT_BUSY"}, \
487 { (1UL << XPT_CONN), "XPT_CONN"}, \
488 { (1UL << XPT_CLOSE), "XPT_CLOSE"}, \
489 { (1UL << XPT_DATA), "XPT_DATA"}, \
490 { (1UL << XPT_TEMP), "XPT_TEMP"}, \
491 { (1UL << XPT_DEAD), "XPT_DEAD"}, \
492 { (1UL << XPT_CHNGBUF), "XPT_CHNGBUF"}, \
493 { (1UL << XPT_DEFERRED), "XPT_DEFERRED"}, \
494 { (1UL << XPT_OLD), "XPT_OLD"}, \
495 { (1UL << XPT_LISTENER), "XPT_LISTENER"}, \
496 { (1UL << XPT_CACHE_AUTH), "XPT_CACHE_AUTH"}, \
497 { (1UL << XPT_LOCAL), "XPT_LOCAL"})
498
499TRACE_EVENT(svc_xprt_do_enqueue,
500 TP_PROTO(struct svc_xprt *xprt, struct svc_rqst *rqst),
501
502 TP_ARGS(xprt, rqst),
503
504 TP_STRUCT__entry(
505 __field(struct svc_xprt *, xprt)
506 __field(struct svc_rqst *, rqst)
507 ),
508
509 TP_fast_assign(
510 __entry->xprt = xprt;
511 __entry->rqst = rqst;
512 ),
513
514 TP_printk("xprt=0x%p addr=%pIScp pid=%d flags=%s", __entry->xprt,
515 (struct sockaddr *)&__entry->xprt->xpt_remote,
516 __entry->rqst ? __entry->rqst->rq_task->pid : 0,
517 show_svc_xprt_flags(__entry->xprt->xpt_flags))
518);
519
520TRACE_EVENT(svc_xprt_dequeue,
521 TP_PROTO(struct svc_xprt *xprt),
522
523 TP_ARGS(xprt),
524
525 TP_STRUCT__entry(
526 __field(struct svc_xprt *, xprt)
527 __field_struct(struct sockaddr_storage, ss)
528 __field(unsigned long, flags)
529 ),
530
531 TP_fast_assign(
532 __entry->xprt = xprt,
533 xprt ? memcpy(&__entry->ss, &xprt->xpt_remote, sizeof(__entry->ss)) : memset(&__entry->ss, 0, sizeof(__entry->ss));
534 __entry->flags = xprt ? xprt->xpt_flags : 0;
535 ),
536
537 TP_printk("xprt=0x%p addr=%pIScp flags=%s", __entry->xprt,
538 (struct sockaddr *)&__entry->ss,
539 show_svc_xprt_flags(__entry->flags))
540);
541
542TRACE_EVENT(svc_wake_up,
543 TP_PROTO(int pid),
544
545 TP_ARGS(pid),
546
547 TP_STRUCT__entry(
548 __field(int, pid)
549 ),
550
551 TP_fast_assign(
552 __entry->pid = pid;
553 ),
554
555 TP_printk("pid=%d", __entry->pid)
556);
557
558TRACE_EVENT(svc_handle_xprt,
559 TP_PROTO(struct svc_xprt *xprt, int len),
560
561 TP_ARGS(xprt, len),
562
563 TP_STRUCT__entry(
564 __field(struct svc_xprt *, xprt)
565 __field(int, len)
566 ),
567
568 TP_fast_assign(
569 __entry->xprt = xprt;
570 __entry->len = len;
571 ),
572
573 TP_printk("xprt=0x%p addr=%pIScp len=%d flags=%s", __entry->xprt,
574 (struct sockaddr *)&__entry->xprt->xpt_remote, __entry->len,
575 show_svc_xprt_flags(__entry->xprt->xpt_flags))
576);
469#endif /* _TRACE_SUNRPC_H */ 577#endif /* _TRACE_SUNRPC_H */
470 578
471#include <trace/define_trace.h> 579#include <trace/define_trace.h>