staging/lustre/ptlrpc: update imp_known_replied_xid on resend-replay

The imp_known_replied_xid should be updated when try to resend
an already replied replay request, because the xid of this replay
request could be less than current imp_known_replied_xid.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-on: http://review.whamcloud.com/22776
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-8645
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Niu Yawei 2016-11-16 20:05:30 -05:00 committed by Greg Kroah-Hartman
parent 80dd4c42cc
commit a3078477d5

View File

@ -161,8 +161,10 @@ int ptlrpc_replay_next(struct obd_import *imp, int *inflight)
* unreplied list.
*/
if (req && imp->imp_resend_replay &&
list_empty(&req->rq_unreplied_list))
list_empty(&req->rq_unreplied_list)) {
ptlrpc_add_unreplied(req);
imp->imp_known_replied_xid = ptlrpc_known_replied_xid(imp);
}
imp->imp_resend_replay = 0;
spin_unlock(&imp->imp_lock);