Details
-
Bug
-
Resolution: Fixed
-
Critical
-
None
-
None
-
3
-
9223372036854775807
Description
Two execution paths about req->rq_repmsg:
Path 1 happens when server receives a resent request:
ptlrpc_main()-> ptlrpc_server_handle_req_in()->ptlrpc_server_request_add()->ptlrpc_server_check_resend_in_progress()->_debug_req(tmp)
Path 2 happens when server sends reply and drop the rs:
ptlrpc_server_finish_request()->ptlrpc_server_drop_request()->ptlrpc_server_free_request()->ptlrpc_req_drop_rs()
req->rq_repmsg is not protected well in ptlrpc_req_drop_rs()