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