mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
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 fixes for 7.3-rc1
Date: Fri, 28 Aug 2026 20:21:20 +0200	[thread overview]
Message-ID: <20260828182122.1668032-1-idryomov@gmail.com> (raw)

Hi Linus,

The following changes since commit 8d3ae59288f1e7d58d76558a6ee96d533bc5019f:

  Linux 7.2 (2026-08-16 14:32:26 -0700)

are available in the Git repository at:

  https://github.com/ceph/ceph-client.git tags/ceph-for-7.3-rc1

for you to fetch changes up to 8fdf946445732c2bcd685abc8bd0e509d2ebc158:

  ceph: force a cap message when a deferred revoke can't be acked immediately (2026-08-26 19:57:29 +0200)

----------------------------------------------------------------
A wide variety of mostly CephFS fixes and cleanups, split between
changes that address edge cases (Sam, Xiubo, Matthew), efficiency
improvements (Max) and AI-assisted hardening (Michael, Jeremy).

One thing that stands out is Alex's change to how CephFS behaves in
NEARFULL scenarios: the long-standing "make all writes synchronous"
behavior has become opt-in.  It was always somewhat controversial and
doesn't make much sense for modern deployments; the new default is to
continue normal operation (i.e. buffer writes as MDS allows, etc).  The
behavior in case the cluster reaches any FULL state remains the same as
before.

----------------------------------------------------------------
Aleksandr Nogikh (1):
      libceph: validate banner payload length

Alex Markuze (1):
      ceph: make nearfull sync writes opt-in

Hongling Zeng (1):
      ceph: Fix ERR_PTR(0) in ceph_mkdir()

Jeremy Jean (2):
      ceph: reject export_targets ranks >= CEPH_MAX_MDS in mdsmap decode
      libceph: reject buckets with mismatched CRUSH ids

Marco Crivellari (1):
      ceph: Change system_unbound_wq with system_dfl_wq

Matthew Brown (1):
      ceph: fix leaked inode reference on writeback abort at umount

Max Kellermann (9):
      ceph: skip __touch_cap() most of the time
      ceph: use detach_cap_releases() in ceph_send_cap_releases()
      ceph: make __ceph_remove_cap() static
      ceph: add helper function ceph_cap_is_removed()
      ceph: mark cap remove with RB_CLEAR_NODE() instead of setting ci=NULL
      ceph: pass inode pointer around instead of reloading it
      ceph: drop mdsc->mutex before decoding the MDS reply
      ceph: do not repeat ceph_trim_dentries() if no progress possible
      ceph: force a cap message when a deferred revoke can't be acked immediately

Michael Bommarito (6):
      libceph: validate OSD extent maps before cursor advance
      ceph: bound copied dentry name length in NFS export get_name
      ceph: bound xattr value length in __build_xattrs()
      ceph: bound MDSCapAuth path and fs_name decode in handle_session()
      ceph: bound num_export_targets array for mds info v2/v3
      ceph: cap delegated inode count in ceph_parse_deleg_inos()

Sam Edwards (2):
      ceph: pass fscrypt `tname` buffers directly
      ceph: properly decrypt filenames in vmalloc() buffers

Tal Zussman (1):
      libceph: remove ceph_put_page_vector()

Xiubo Li (7):
      ceph: use GFP_NOFS for cap flush allocation in writeback path
      ceph: use GFP_KERNEL consistently in __ceph_pool_perm_get()
      ceph: do not cache negative dentries for snapped directories
      ceph: fix use-after-dereference of NULL ci in __ceph_remove_cap()
      ceph: revalidate ki_pos for O_APPEND writes after cap acquisition
      ceph: fix UAF in __kick_flushing_caps() on cf entry freed during unlock
      ceph: fix UAF in check_new_map() on session freed during unlock

 Documentation/filesystems/ceph.rst |   6 ++
 fs/ceph/addr.c                     |  30 +++++--
 fs/ceph/caps.c                     | 166 ++++++++++++++++++++++++++-----------
 fs/ceph/crypto.c                   |  50 ++++++++---
 fs/ceph/crypto.h                   |   4 +-
 fs/ceph/dir.c                      |  22 +++--
 fs/ceph/export.c                   |  26 ++++--
 fs/ceph/file.c                     |  56 ++++++++++++-
 fs/ceph/inode.c                    |   3 +-
 fs/ceph/mds_client.c               | 110 +++++++++++++++++++-----
 fs/ceph/mds_client.h               |   1 +
 fs/ceph/mdsmap.c                   |  11 ++-
 fs/ceph/super.c                    |  10 +++
 fs/ceph/super.h                    |  45 +++++++++-
 fs/ceph/xattr.c                    |   1 +
 include/linux/ceph/libceph.h       |   2 -
 net/ceph/messenger_v2.c            |   5 ++
 net/ceph/osd_client.c              |  30 +++++++
 net/ceph/osdmap.c                  |   2 +
 net/ceph/pagevec.c                 |  13 ---
 20 files changed, 462 insertions(+), 131 deletions(-)

             reply	other threads:[~2026-08-28 18:21 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-28 18:21 Ilya Dryomov [this message]
2026-08-28 19:50 ` 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=20260828182122.1668032-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®