Whamcloud - gitweb
LU-16430 ptlrpc: racy rq_obsolete bit modification
authorAlex Zhuravlev <bzzz@whamcloud.com>
Mon, 13 May 2024 07:48:56 +0000 (10:48 +0300)
committerAndreas Dilger <adilger@whamcloud.com>
Mon, 13 May 2024 22:31:57 +0000 (22:31 +0000)
commit92b6fbdd2266846bfc22663841a0805ba7b823d3
treeffd8dc59c46487f8aa2546f7f7197643f6c78ee6
parent34895994d9c8f4e12cc00a53efb2fb10ed6552cb
LU-16430 ptlrpc: racy rq_obsolete bit modification

Racy bit modification causes assertion failure in
ptlrpc_at_remove_timed():
ASSERTION( !list_empty(&req->rq_srv.sr_timed_list) )

rq_obsolete is a bit field, so it's modification
isn't atomic and should be modified under rq_lock.

Lustre-Commit: 14ac768fd9633c5cf4474555170e5042c71a135b
Lustre-Change:  https://review.whamcloud.com/49505

Change-Id: Ib1d3ad189a78b71ecf5b01585478922e984c9568
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/ex/lustre-release/+/55086
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
lustre/include/lustre_net.h
lustre/ptlrpc/service.c