Bug 2227999 - client: issue a cap release immediately if no cap exists
Summary: client: issue a cap release immediately if no cap exists
Alias: None
Product: Red Hat Ceph Storage
Classification: Red Hat Storage
Component: CephFS
Version: 5.3
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
: 6.1z3
Assignee: Xiubo Li
QA Contact: julpark
Disha Walvekar
Depends On:
Blocks: 2171225 2247624
TreeView+ depends on / blocked
Reported: 2023-08-01 06:16 UTC by Xiubo Li
Modified: 2024-01-19 11:10 UTC (History)
8 users (show)

Fixed In Version: ceph-17.2.6-155.el9cp
Doc Type: Bug Fix
Doc Text:
.Client always sends a caps revocation acknowledgement to the MDS daemon Previously, whenever an MDS daemon sent a caps revocation request to a client and during this time, if the client released the caps and removed the inode, then the client would drop the request directly, but the MDS daemon would need to wait for a caps revoking acknowledgement from the client. Due to this, even when there was no need for caps revocation, the MDS Daemon would continue waiting for an acknowledgement from the client, causing a warning in MDS Daemon health status. With this fix, the client always sends a caps revocation acknowledgement to the MDS Daemon, even when there is no inode existing and the MDS Daemon no longer stays stuck.
Clone Of:
Last Closed: 2023-12-12 13:55:41 UTC

Attachments (Terms of Use)

System ID Private Priority Status Summary Last Updated
Ceph Project Bug Tracker 57244 0 None None None 2023-08-01 06:16:02 UTC
Ceph Project Bug Tracker 61781 0 None None None 2023-08-01 06:16:02 UTC
Red Hat Issue Tracker RHCEPH-7124 0 None None None 2023-08-01 06:17:39 UTC
Red Hat Knowledge Base (Solution) 7048761 0 None None None 2023-12-12 02:39:08 UTC
Red Hat Product Errata RHSA-2023:7740 0 None None None 2023-12-12 13:55:46 UTC

Description Xiubo Li 2023-08-01 06:16:03 UTC
This bug was initially created as a copy of Bug #2227997

I am copying this bug because: 

In case:

           mds                             client
                                - Releases cap and put Inode
  - Increase cap->seq and sends
    revokes req to the client
  - Receives release req and    - Receives & drops the revoke req
    skip removing the cap and
    then eval the CInode and
    issue or revoke caps again.
                                - Receives & drops the caps update
                                  or revoke req
  - Health warning for client
    isn't responding to
All the IMPORT/REVOKE/GRANT cap ops will increase the session seq
in MDS side and then the client need to issue a cap release to
unblock MDS to remove the corresponding cap to unblock possible

Fixes: https://tracker.ceph.com/issues/57244
Fixes: https://tracker.ceph.com/issues/61148
Signed-off-by: Xiubo Li xiubli

Comment 1 RHEL Program Management 2023-08-01 06:16:12 UTC
Please specify the severity of this bug. Severity is defined here:

Comment 4 Venky Shankar 2023-11-08 10:29:19 UTC
https://gitlab.cee.redhat.com/ceph/ceph/-/merge_requests/341 merged.

Comment 9 Amarnath 2023-11-16 05:39:03 UTC
Steps To Verify is available in https://bugzilla.redhat.com/show_bug.cgi?id=2228000#c6

Comment 17 errata-xmlrpc 2023-12-12 13:55:41 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Moderate: Red Hat Ceph Storage 6.1 security, enhancements, and bug fix update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.