Re: [PATCH v3 00/12] fs/ceph: optimize struct layouts

Alex Markuze <[email protected]>
Newsgroups org.kernel.vger.ceph-devel
Message-ID <[email protected]>
Hi Max,

Most of the series is clean — the field removals, bool conversions and
padding reordering are all welcome. Three blockers:

Patch 10 replaces the CEPH_SNAPDIR check in ceph_d_prune() with
ceph_in_snap(), which also matches ordinary snapshot subdirectories.
Those lose their __ceph_dir_clear_complete() call on prune, so the
dcache completeness claim is wrong for them after VFS reclaim. Keep the
exact ceph_snap(...) == CEPH_SNAPDIR check there.

Patch 12 declares vino but only uses it inside #if BITS_PER_LONG >= 64.
The 32-bit path never references it, so -Wunused-variable breaks the
build with CONFIG_WERROR=y.

struct ceph_file_layout is shared with RBD which works with 64-bit OSD
pool IDs. Narrowing pool_id to u32 silently truncates any pool above
U32_MAX in the RBD path. The MDS wire format being __le32 is fine; the
in-memory field needs to stay 64-bit.

Could you respin?

--
Alex Markuze
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.