Re: [PATCH] ceph: force a cap message when a deferred revoke can't be acked immediately

Max Kellermann <[email protected]>
Newsgroups org.kernel.vger.ceph-devel
Message-ID <CAKPOu+_PE76JKOR_GMa3YaAjyg7d6iDmesbXOL4CUbGSL0Dotg@mail.gmail.com>
On Tue, Aug 11, 2026 at 4:23 PM Alex Markuze <[email protected]> wrote:
> There's a bug in the new clear_bit() call in ceph_check_caps() —
> clear_bit(CEPH_I_FLUSH_FORCE, &ci->i_ceph_flags) passes the mask
> (1 << 15 = 32768) as the bit number instead of the bit index.

Aye, thanks for catching this bug. This went wrong when I
forward-ported this from the 6.18 LTS branch we're using; 6.18 doesn't
use bit ops.

You refactored this to use bit ops in e120e2b666851 ("ceph: convert
inode flags to named bit positions and atomic bitops"), but I didn't
understand why. It seemed like i_ceph_flags was already protected by
i_ceph_lock. (Unfortunately, locking in Ceph is mostly undocumented,
so I can't be sure.)

-- 
Max Kellermann
Principal Architect
Hosting Technology

cm4all | Im Mediapark 6a | 50670 Köln | Germany
General information about the company can be found here:
https://www.cm4all.com/impressum
A member of the IONOS Group
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.