From: Ilya Dryomov <idryomov@gmail.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: ceph-devel@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [GIT PULL] Ceph updates for 7.4-rc1
Date: Fri, 30 Oct 2026 19:17:28 +0100 [thread overview]
Message-ID: <20261030181734.3806816-1-idryomov@gmail.com> (raw)
Hi Linus,
The following changes since commit c03c1a14507dfaf8b856c2608f9ac216021fc222:
Linux 7.3 (2026-10-18 13:14:58 -1000)
are available in the Git repository at:
https://github.com/ceph/ceph-client.git tags/ceph-for-7.4-rc1
for you to fetch changes up to 823d21c78453fcdf58dbd8ecefbb41f4f3eb6540:
ceph: fix uninitialized err in ceph_netfs_issue_read() (2026-10-26 14:15:48 +0100)
There is a trivial conflict with "ceph: replace PagePrivate() with
page_private()" patch that went through the akpm tree. Tal's change
switches that code to folios, so the resolution is to take this side.
I pushed it to for-linus-merged just in case.
----------------------------------------------------------------
The two things of note here are the disablement of inline data support
and a new lazyio mount option to enable LAZYIO behavior globally
(instead of via an ioctl on a per-file basis), both from Xiubo.
Despite being over a decade old, the inline data feature never lost its
experimental status -- it has always been off by default and required
passing --yes-i-really-mean-it flag to be turned on. It was officially
deprecated in 2020 and is now in the process of being removed on the
MDS side. For now it's still possible to re-enable it in Kconfig, but
the code will eventually be dropped from the kernel client entirely.
Outside of that we have a number of bug fixes, a series from Tal to
help phase out older page APIs, some cleanups from Max and a large pile
of LLM-based hardening patches.
Xiubo is also back in a maintainer role, replacing Slava.
----------------------------------------------------------------
Alex Markuze (2):
ceph: fix page vector leak on encrypted netfs read EIO path
ceph: fix uninitialized err in ceph_netfs_issue_read()
Darong Lu (1):
libceph: initialize CRUSH choose argument weights
Felix Hoffmann (1):
libceph: reject mismatched CRUSH weight-set sizes
Guanglei Zhu (2):
ceph: clamp the inline data length in ceph_fill_inline_data()
ceph: fix out-of-bounds read in ceph_netfs_issue_op_inline()
Jiangshan Yi (1):
ceph: fix longname buffer overflow in ceph_fname_to_usr()
Jeremy Jean (2):
ceph: fix 32-bit overflow in readdir reply count check
libceph: fix out-of-bounds reads from repeated CRUSH bucket entries
Max Kellermann (10):
ceph: remove unused field `i_cap_migration_resv`
ceph: convert ceph_inode_xattr fields to `bool`
ceph: convert ceph_cap_snap.writing fields to `bool`
ceph: consistently use `u32` for `time_warp_seq`
ceph: add `const` to helpers
ceph: add helper ceph_in_snap()
ceph: use ceph_vino() etc. instead of accessing i_vino directly
ceph: remove redundant inode number from ceph_inode_info
ceph: __{dir,dentry}_lease_check() returns an enum
ceph: avoid pending truncate during nonblocking cap acquire
Nguyen Ngoc Thang (1):
libceph: reject bad connect_seq in msgr1 READY reply
Raphael Zimmer (2):
libceph: Fix unsafe decode in ceph_redirect_decode()
libceph: Fix multiple unsafe decodes in ceph_oloc_decode()
Tal Zussman (20):
ceph: use a folio in ceph_get_caps()
ceph: use a folio in the inline read branch of ceph_filemap_fault()
ceph: use a folio in the READ_INLINE path of ceph_read_iter()
ceph: convert ceph_fill_inline_data() to take a folio
ceph: convert r_locked_page to r_locked_folio
ceph: fix error handling when the OSD client is stopping in ceph_submit_write()
ceph: wait for pending fscache write in write_folio_nounlock()
ceph: add ceph_folio_snap_context()
ceph: convert ceph_wait_until_current_writes_complete() to folios
ceph: convert get_writepages_data_length() to folios
ceph: convert ceph_submit_write() to folios
ceph: remove page remnants from write_folio_nounlock()
ceph: convert page cleanup loop in writepages_finish() to folios
ceph: remove ceph_fscrypt_pagecache_page() and ceph_fscrypt_page_offset()
ceph: rename ceph_check_page_before_write() to ceph_check_folio_before_write()
ceph: fix writeback_count leak when a bounce page allocation fails
ceph: don't clear write_congested when collecting folios
ceph: use iov_iter_extract_bvecs() for direct I/O
libceph: use alloc_page() in ceph_alloc_page_vector()
ceph: use alloc_page() in fill_fscrypt_truncate()
Venky Shankar (1):
ceph: don't fail write_begin with -EAGAIN after flushing old snapc
Wentao Liang (2):
ceph: Fix xattr buffer leak in __send_cap()
ceph: Fix mds session leak in __open_export_target_session()
Xiang Mei (5):
ceph: fix off-by-one NUL termination in decode_encrypted_symlink()
ceph: reject mdsmaps that claim more than CEPH_MAX_MDS ranks
ceph: require the dentry lease record to cover struct ceph_mds_reply_lease
libceph: bound mon_command ack decode to front len
ceph: fix integer overflow in the snap trace bounds check
Xiubo Li (8):
ceph: disable inline data support
ceph: mark the superblock active after mounting
ceph: keep the inode, not the name, when a dentry lease expires
ceph: wake up i_cap_wq waiters on inode shutdown
ceph: add 'lazyio' mount option to kclient
libceph: only set read_from_replica on read requests
ceph: check the caps of a closed file after caps_wanted_delay_min
MAINTAINERS: update ceph and libceph maintainers
Yogesh Gaur (2):
libceph: reject an initial monmap with no monitors
ceph: don't keep a mon_addr string that failed to parse
Yuanfu Xie (2):
ceph: clamp MDS reply result code to the errno range
ceph: fail readdir when the MDS reply carries no dirfrag
sung byeongchan (4):
ceph: validate fscrypt auth blob length
ceph: bound name skips in ceph_mdsmap_decode() by the message end
ceph: validate MDS reply fragtree split array length
ceph: validate encoded xattr name lengths
MAINTAINERS | 6 +-
fs/ceph/Kconfig | 13 ++
fs/ceph/acl.c | 2 +-
fs/ceph/addr.c | 427 ++++++++++++++++++++++++++-----------
fs/ceph/cache.c | 4 +-
fs/ceph/caps.c | 377 ++++++++++++++++++++++++++++----
fs/ceph/crypto.c | 11 +
fs/ceph/crypto.h | 12 +-
fs/ceph/dir.c | 58 ++---
fs/ceph/export.c | 8 +-
fs/ceph/file.c | 160 +++++++-------
fs/ceph/inode.c | 119 +++++++++--
fs/ceph/mds_client.c | 124 ++++++++---
fs/ceph/mds_client.h | 5 +-
fs/ceph/mdsmap.c | 12 +-
fs/ceph/quota.c | 6 +-
fs/ceph/snap.c | 17 +-
fs/ceph/super.c | 35 ++-
fs/ceph/super.h | 153 ++++++++++---
fs/ceph/util.c | 4 -
fs/ceph/xattr.c | 18 +-
include/linux/ceph/ceph_features.h | 14 +-
include/linux/ceph/ceph_fs.h | 6 +
net/ceph/messenger_v1.c | 8 +-
net/ceph/mon_client.c | 5 +-
net/ceph/osd_client.c | 13 +-
net/ceph/osdmap.c | 18 +-
net/ceph/pagevec.c | 2 +-
28 files changed, 1246 insertions(+), 391 deletions(-)
next reply other threads:[~2026-10-30 18:17 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-30 18:17 Ilya Dryomov [this message]
2026-10-30 23:10 ` pr-tracker-bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261030181734.3806816-1-idryomov@gmail.com \
--to=idryomov@gmail.com \
--cc=ceph-devel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®