SUNRPC: Capture value of xdr_buf::page_base
authorChuck Lever <chuck.lever@oracle.com>
Mon, 4 Oct 2021 14:16:32 +0000 (10:16 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Mon, 4 Oct 2021 19:40:15 +0000 (15:40 -0400)
This value is usually zero, but will be non-zero more often in the
future. Knowing its value can be important diagnostic information.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
include/trace/events/sunrpc.h

index fb016308c18596dece630eabf4c6cfac3d855f4c..9ea59959a2fe551ef6645b95993ffc59cd092f86 100644 (file)
@@ -62,6 +62,7 @@ DECLARE_EVENT_CLASS(rpc_xdr_buf_class,
                __field(size_t, head_len)
                __field(const void *, tail_base)
                __field(size_t, tail_len)
+               __field(unsigned int, page_base)
                __field(unsigned int, page_len)
                __field(unsigned int, msg_len)
        ),
@@ -74,14 +75,17 @@ DECLARE_EVENT_CLASS(rpc_xdr_buf_class,
                __entry->head_len = xdr->head[0].iov_len;
                __entry->tail_base = xdr->tail[0].iov_base;
                __entry->tail_len = xdr->tail[0].iov_len;
+               __entry->page_base = xdr->page_base;
                __entry->page_len = xdr->page_len;
                __entry->msg_len = xdr->len;
        ),
 
-       TP_printk("task:%u@%u head=[%p,%zu] page=%u tail=[%p,%zu] len=%u",
+       TP_printk("task:%u@%u head=[%p,%zu] page=%u(%u) tail=[%p,%zu] len=%u",
                __entry->task_id, __entry->client_id,
-               __entry->head_base, __entry->head_len, __entry->page_len,
-               __entry->tail_base, __entry->tail_len, __entry->msg_len
+               __entry->head_base, __entry->head_len,
+               __entry->page_len, __entry->page_base,
+               __entry->tail_base, __entry->tail_len,
+               __entry->msg_len
        )
 );
 
@@ -1496,6 +1500,7 @@ DECLARE_EVENT_CLASS(svc_xdr_buf_class,
                __field(size_t, head_len)
                __field(const void *, tail_base)
                __field(size_t, tail_len)
+               __field(unsigned int, page_base)
                __field(unsigned int, page_len)
                __field(unsigned int, msg_len)
        ),
@@ -1506,14 +1511,17 @@ DECLARE_EVENT_CLASS(svc_xdr_buf_class,
                __entry->head_len = xdr->head[0].iov_len;
                __entry->tail_base = xdr->tail[0].iov_base;
                __entry->tail_len = xdr->tail[0].iov_len;
+               __entry->page_base = xdr->page_base;
                __entry->page_len = xdr->page_len;
                __entry->msg_len = xdr->len;
        ),
 
-       TP_printk("xid=0x%08x head=[%p,%zu] page=%u tail=[%p,%zu] len=%u",
+       TP_printk("xid=0x%08x head=[%p,%zu] page=%u(%u) tail=[%p,%zu] len=%u",
                __entry->xid,
-               __entry->head_base, __entry->head_len, __entry->page_len,
-               __entry->tail_base, __entry->tail_len, __entry->msg_len
+               __entry->head_base, __entry->head_len,
+               __entry->page_len, __entry->page_base,
+               __entry->tail_base, __entry->tail_len,
+               __entry->msg_len
        )
 );