[LU-15986] Race condition between _debug_req() and ptlrpc_req_drop_rs() Created: 30/Jun/22 Updated: 22/Nov/22 Resolved: 24/Sep/22 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | Lustre 2.16.0, Lustre 2.15.2 |
| Type: | Bug | Priority: | Critical |
| Reporter: | Feng Lei | Assignee: | Feng Lei |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Severity: | 3 | ||||||||
| Rank (Obsolete): | 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() |
| Comments |
| Comment by Gerrit Updater [ 30/Jun/22 ] |
|
"Feng, Lei <flei@whamcloud.com>" uploaded a new patch: https://review.whamcloud.com/47839 |
| Comment by Peter Jones [ 18/Aug/22 ] |
|
flei are the test failures on the master patch due to the patch itself? |
| Comment by Feng Lei [ 22/Aug/22 ] |
|
I don't think so. |
| Comment by Gerrit Updater [ 24/Sep/22 ] |
|
"Oleg Drokin <green@whamcloud.com>" merged in patch https://review.whamcloud.com/47839/ |
| Comment by Peter Jones [ 24/Sep/22 ] |
|
Landed for 2.16 |
| Comment by Gerrit Updater [ 15/Nov/22 ] |
|
"Xing Huang <hxing@ddn.com>" uploaded a new patch: https://review.whamcloud.com/c/fs/lustre-release/+/49157 |
| Comment by Gerrit Updater [ 15/Nov/22 ] |
|
"Xing Huang <hxing@ddn.com>" uploaded a new patch: https://review.whamcloud.com/c/fs/lustre-release/+/49158 |
| Comment by Gerrit Updater [ 22/Nov/22 ] |
|
"Oleg Drokin <green@whamcloud.com>" merged in patch https://review.whamcloud.com/c/fs/lustre-release/+/49157/ |