mds: prevent duplicate wrlock acquisition for a single request#61250
mds: prevent duplicate wrlock acquisition for a single request#61250
Conversation
The lock cache is buggy and we need to disable it as a workaround. Fixes: https://tracker.ceph.com/issues/65607 Signed-off-by: Xiubo Li <xiubli@redhat.com>
In case the current request has lock cache attached and then the lock cache must have already acquired the wrlock of filelock. So currently the path_traverse() will acquire the wrlock twice and possibly caused deadlock by itself. Fixes: https://tracker.ceph.com/issues/65607 Signed-off-by: Xiubo Li <xiubli@redhat.com> Signed-off-by: Sunnatillo <sunnat.samadov@est.tech>
|
jenkins test make check |
|
jenkins test api |
1 similar comment
|
jenkins test api |
|
Can one of the admins verify this patch? |
|
@vshankar we would really appreciate some attention on this issue, the previous PR was promised to be reviewed couple of months ago and now this new one is a week old and still no reviews 😞 |
I should apologise first. Yes, this change had got delayed and put on the side-burner. CephFS folks have been a bit more occupied than usual from the last couple of months - PTOs, conferences, etc.. I did assign this to @batrick for review last week, however, @batrick had to go on leave. As you can see, I have this in my list and I assure you that it will get the required attention soon. Expect a response by tomorrow. |
Thanks a lot and appreciate your efforts. |
vshankar
left a comment
There was a problem hiding this comment.
LGTM. However I would like the config to be exercised in our test (as a separate PR).
I'll create a tracker and link it in here. Will put this to test. Thx @Sunnatillo
|
This PR is under test in https://tracker.ceph.com/issues/69546. |
I've checked the test run and I think this change is good to merge. I'll be doing the needful soon (attending conferences, thereby the delay). |
Take over of abandoned PR #58474.
In case the current request has lock cache attached and then the
lock cache must have already acquired the wrlock of filelock. So
currently the path_traverse() will acquire the wrlock twice and
possibly caused deadlock by itself.
Contribution Guidelines
To sign and title your commits, please refer to Submitting Patches to Ceph.
If you are submitting a fix for a stable branch (e.g. "quincy"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.
When filling out the below checklist, you may click boxes directly in the GitHub web UI. When entering or editing the entire PR message in the GitHub web UI editor, you may also select a checklist item by adding an
xbetween the brackets:[x]. Spaces and capitalization matter when checking off items this way.Checklist
Show available Jenkins commands
jenkins retest this pleasejenkins test classic perfjenkins test crimson perfjenkins test signedjenkins test make checkjenkins test make check arm64jenkins test submodulesjenkins test dashboardjenkins test dashboard cephadmjenkins test apijenkins test docsjenkins render docsjenkins test ceph-volume alljenkins test ceph-volume toxjenkins test windowsjenkins test rook e2e