Bug #36369
kclient: wanted caps takes a long time to release
Start date:
10/10/2018
Due date:
% Done:
0%
Source:
Community (dev)
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
fs
Pull request ID:
Description
In some of our online clusters, some clients hold on to the "Fw" caps for as long as an hour or two before they release it even though they just did some one-time write to a file.
After a series of tests and debugs, we found that this is due to __cap_delay_requeue function unconditionally sets inodes' timeouts "i_hold_caps_min" and "i_hold_caps_max".
Since __cap_delay_requeue can be invoked in ceph_check_ops when there are caps that need to be sent and, yet, are delayed by "i_hold_caps_min" or "i_hold_caps_max", reset those timeouts unconditonally could make "want" caps can't be sent out for an un-predictable long time.
History
#2 Updated by Patrick Donnelly 4 months ago
- Assignee set to Xuehan Xu
- Source set to Community (dev)
#3 Updated by Patrick Donnelly 4 months ago
- Project changed from fs to Linux kernel client
- Category deleted (
Performance/Resource Usage)
#4 Updated by Zheng Yan about 1 month ago
- Status changed from New to Resolved
commit 668028844174aa7069da1f8ea89a5dbc93e86216