Skip to content

Commit 9ae40e4

Browse files
akoehlerOleg Drokin
authored andcommitted
LU-12523 ptlrpc: Add jobid to rpctrace debug messages
This mod adds the jobid string found in the ptlrpc_body of an rpc to the output of rpctrace messages. If jobids are not in use the string will be empty. If jobids are in use, the string can be useful in analyzing Lustre activity. Test-Parameters: trivial Cray-bug-id: LUS-7557 Signed-off-by: Ann Koehler <[email protected]> Change-Id: Ib7ec75e28581f3ac420314812e2521fa49f021dd Reviewed-on: https://review.whamcloud.com/35445 Reviewed-by: Patrick Farrell <[email protected]> Tested-by: jenkins <[email protected]> Reviewed-by: Andreas Dilger <[email protected]> Tested-by: Maloo <[email protected]>
1 parent 494d4b6 commit 9ae40e4

File tree

3 files changed

+18
-13
lines changed

3 files changed

+18
-13
lines changed

lustre/ptlrpc/client.c

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1698,11 +1698,12 @@ static int ptlrpc_send_new_req(struct ptlrpc_request *req)
16981698
}
16991699

17001700
CDEBUG(D_RPCTRACE,
1701-
"Sending RPC pname:cluuid:pid:xid:nid:opc %s:%s:%d:%llu:%s:%d\n",
1702-
current_comm(),
1701+
"Sending RPC req@%p pname:cluuid:pid:xid:nid:opc:job %s:%s:%d:%llu:%s:%d:%s\n",
1702+
req, current_comm(),
17031703
imp->imp_obd->obd_uuid.uuid,
17041704
lustre_msg_get_status(req->rq_reqmsg), req->rq_xid,
1705-
obd_import_nid2str(imp), lustre_msg_get_opc(req->rq_reqmsg));
1705+
obd_import_nid2str(imp), lustre_msg_get_opc(req->rq_reqmsg),
1706+
lustre_msg_get_jobid(req->rq_reqmsg));
17061707

17071708
rc = ptl_send_rpc(req, 0);
17081709
if (rc == -ENOMEM) {
@@ -2149,13 +2150,14 @@ int ptlrpc_check_set(const struct lu_env *env, struct ptlrpc_request_set *set)
21492150

21502151
if (req->rq_reqmsg)
21512152
CDEBUG(D_RPCTRACE,
2152-
"Completed RPC pname:cluuid:pid:xid:nid:opc %s:%s:%d:%llu:%s:%d\n",
2153-
current_comm(),
2153+
"Completed RPC req@%p pname:cluuid:pid:xid:nid:opc:job %s:%s:%d:%llu:%s:%d:%s\n",
2154+
req, current_comm(),
21542155
imp->imp_obd->obd_uuid.uuid,
21552156
lustre_msg_get_status(req->rq_reqmsg),
21562157
req->rq_xid,
21572158
obd_import_nid2str(imp),
2158-
lustre_msg_get_opc(req->rq_reqmsg));
2159+
lustre_msg_get_opc(req->rq_reqmsg),
2160+
lustre_msg_get_jobid(req->rq_reqmsg));
21592161

21602162
spin_lock(&imp->imp_lock);
21612163
/*

lustre/ptlrpc/pack_generic.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2595,7 +2595,7 @@ void _debug_req(struct ptlrpc_request *req,
25952595
vaf.fmt = fmt;
25962596
vaf.va = &args;
25972597
libcfs_debug_msg(msgdata,
2598-
"%pV req@%p x%llu/t%lld(%lld) o%d->%s@%s:%d/%d lens %d/%d e %d to %lld dl %lld ref %d fl " REQ_FLAGS_FMT "/%x/%x rc %d/%d\n",
2598+
"%pV req@%p x%llu/t%lld(%lld) o%d->%s@%s:%d/%d lens %d/%d e %d to %lld dl %lld ref %d fl " REQ_FLAGS_FMT "/%x/%x rc %d/%d job:'%s'\n",
25992599
&vaf,
26002600
req, req->rq_xid, req->rq_transno,
26012601
req_ok ? lustre_msg_get_transno(req->rq_reqmsg) : 0,
@@ -2613,7 +2613,8 @@ void _debug_req(struct ptlrpc_request *req,
26132613
atomic_read(&req->rq_refcount),
26142614
DEBUG_REQ_FLAGS(req),
26152615
req_ok ? lustre_msg_get_flags(req->rq_reqmsg) : -1,
2616-
rep_flags, req->rq_status, rep_status);
2616+
rep_flags, req->rq_status, rep_status,
2617+
req_ok ? lustre_msg_get_jobid(req->rq_reqmsg) : "");
26172618
va_end(args);
26182619
}
26192620
EXPORT_SYMBOL(_debug_req);

lustre/ptlrpc/service.c

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2218,15 +2218,16 @@ static int ptlrpc_server_handle_request(struct ptlrpc_service_part *svcpt,
22182218
}
22192219

22202220
CDEBUG(D_RPCTRACE,
2221-
"Handling RPC pname:cluuid+ref:pid:xid:nid:opc %s:%s+%d:%d:x%llu:%s:%d\n",
2222-
current_comm(),
2221+
"Handling RPC req@%p pname:cluuid+ref:pid:xid:nid:opc:job %s:%s+%d:%d:x%llu:%s:%d:%s\n",
2222+
request, current_comm(),
22232223
(request->rq_export ?
22242224
(char *)request->rq_export->exp_client_uuid.uuid : "0"),
22252225
(request->rq_export ?
22262226
atomic_read(&request->rq_export->exp_refcount) : -99),
22272227
lustre_msg_get_status(request->rq_reqmsg), request->rq_xid,
22282228
libcfs_id2str(request->rq_peer),
2229-
lustre_msg_get_opc(request->rq_reqmsg));
2229+
lustre_msg_get_opc(request->rq_reqmsg),
2230+
lustre_msg_get_jobid(request->rq_reqmsg));
22302231

22312232
if (lustre_msg_get_opc(request->rq_reqmsg) != OBD_PING)
22322233
CFS_FAIL_TIMEOUT_MS(OBD_FAIL_PTLRPC_PAUSE_REQ, cfs_fail_val);
@@ -2258,8 +2259,8 @@ static int ptlrpc_server_handle_request(struct ptlrpc_service_part *svcpt,
22582259
timediff_usecs = ktime_us_delta(work_end, work_start);
22592260
arrived_usecs = ktime_us_delta(work_end, arrived);
22602261
CDEBUG(D_RPCTRACE,
2261-
"Handled RPC pname:cluuid+ref:pid:xid:nid:opc %s:%s+%d:%d:x%llu:%s:%d Request processed in %lldus (%lldus total) trans %llu rc %d/%d\n",
2262-
current_comm(),
2262+
"Handled RPC req@%p pname:cluuid+ref:pid:xid:nid:opc:job %s:%s+%d:%d:x%llu:%s:%d:%s Request processed in %lldus (%lldus total) trans %llu rc %d/%d\n",
2263+
request, current_comm(),
22632264
(request->rq_export ?
22642265
(char *)request->rq_export->exp_client_uuid.uuid : "0"),
22652266
(request->rq_export ?
@@ -2268,6 +2269,7 @@ static int ptlrpc_server_handle_request(struct ptlrpc_service_part *svcpt,
22682269
request->rq_xid,
22692270
libcfs_id2str(request->rq_peer),
22702271
lustre_msg_get_opc(request->rq_reqmsg),
2272+
lustre_msg_get_jobid(request->rq_reqmsg),
22712273
timediff_usecs,
22722274
arrived_usecs,
22732275
(request->rq_repmsg ?

0 commit comments

Comments
 (0)