client: do not defer releasing caps when revoking
When revoking caps the if we queue to defer releasing them after 5s
or client_caps_release_delay. What if when the client keeps doing
mark_caps_dirty() for that inode in some use cases, the inode will
always be pushed back to the end of dirty_list. And in the tick()
it will check the dirty_list from front and will skip looping it
when it finds current one is not out of date.
This may cause the revocation in the MDS side stuck for a long
time.
Fixes: https://tracker.ceph.com/issues/52994
Signed-off-by: Xiubo Li <xiubli@redhat.com>
(cherry picked from commit
66098eeb1dbd0ffb4478c866ab4208e471d709f1)