Project

General

Profile

Actions

Bug #38824

closed

kclient: ceph: remove duplicated filelock ref increase

Added by Zhi Zhang about 5 years ago. Updated almost 5 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Target version:
-
% Done:

0%

Source:
Community (dev)
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Crash signature (v1):
Crash signature (v2):

Description

In kernel client, inode i_filelock_ref is increased in ceph_lock or ceph_flock, but it is increased again in ceph_lock_message. This results in this ref won't become zero. If CEPH_I_ERROR_FILELOCK flag is set in remove_session_caps once, this flag can't be cleared even if client is back to normal. So further file lock will return EIO.

Recently this issue caused massive IO error and IO hang in some of our clusters when user massively used file lock and experienced MDS fault and recovery.

Although the kernel version we used is very old, I checked the latest kernel version and it should have the same issue.


Files

Actions

Also available in: Atom PDF