SUNRPC: Expand the svc_alloc_arg_err tracepoint
Record not only the number of pages requested, but the number of pages that were actually allocated, to get a measure of progress (or lack thereof). Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
This commit is contained in:
Родитель
184cefbe62
Коммит
28fffa6c57
|
@ -1989,20 +1989,24 @@ TRACE_EVENT(svc_wake_up,
|
|||
|
||||
TRACE_EVENT(svc_alloc_arg_err,
|
||||
TP_PROTO(
|
||||
unsigned int pages
|
||||
unsigned int requested,
|
||||
unsigned int allocated
|
||||
),
|
||||
|
||||
TP_ARGS(pages),
|
||||
TP_ARGS(requested, allocated),
|
||||
|
||||
TP_STRUCT__entry(
|
||||
__field(unsigned int, pages)
|
||||
__field(unsigned int, requested)
|
||||
__field(unsigned int, allocated)
|
||||
),
|
||||
|
||||
TP_fast_assign(
|
||||
__entry->pages = pages;
|
||||
__entry->requested = requested;
|
||||
__entry->allocated = allocated;
|
||||
),
|
||||
|
||||
TP_printk("pages=%u", __entry->pages)
|
||||
TP_printk("requested=%u allocated=%u",
|
||||
__entry->requested, __entry->allocated)
|
||||
);
|
||||
|
||||
DECLARE_EVENT_CLASS(svc_deferred_event,
|
||||
|
|
|
@ -691,7 +691,7 @@ static int svc_alloc_arg(struct svc_rqst *rqstp)
|
|||
set_current_state(TASK_RUNNING);
|
||||
return -EINTR;
|
||||
}
|
||||
trace_svc_alloc_arg_err(pages);
|
||||
trace_svc_alloc_arg_err(pages, ret);
|
||||
memalloc_retry_wait(GFP_KERNEL);
|
||||
}
|
||||
rqstp->rq_page_end = &rqstp->rq_pages[pages];
|
||||
|
|
Загрузка…
Ссылка в новой задаче