]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/log
ceph.git
8 days agoclient: fix Dentry UAF by holding DentryRef across unlink 69021/head
Igor Golikov [Wed, 27 May 2026 13:19:25 +0000 (16:19 +0300)]
client: fix Dentry UAF by holding DentryRef across unlink

Hold a function-scoped DentryRef in Client::unlink() to keep the dentry
alive through the entire teardown sequence.

Without the O_DIRECTORY dentry pin (PR #60909, merged after v19.2.1),
opening a directory does not call _ll_get(), so the dentry stays at
ref=1 while inode->dir is still active. When trim_cache() evicts this
dentry, Dentry::unlink() calls put() for the dir pin, ref drops to 0,
and the dentry is freed while Client::unlink() still needs it for
detach/lru_remove.

A function-scoped DentryRef guarantees the dentry survives until after
it has been properly removed from the dir and LRU, regardless of pin
state.

Signed-off-by: Igor Golikov <igolikov@ibm.com>
Fixes: https://tracker.ceph.com/issues/74625
8 days agoclient: add assert to catch dentry ref drop during unlink
Igor Golikov [Wed, 27 May 2026 13:18:44 +0000 (16:18 +0300)]
client: add assert to catch dentry ref drop during unlink

Add ceph_assert(dn->ref > 0) after Dentry::unlink() in Client::unlink()
to catch the case where internal put() calls drop the dentry reference
to zero before we proceed to detach/lru_remove.

This turns a silent use-after-free into a clean assertion failure with
a full stack trace, making it possible to catch the exact conditions
in a test environment.

Signed-off-by: Igor Golikov <igolikov@ibm.com>
Fixes: https://tracker.ceph.com/issues/74625
8 days agoMerge pull request #69851 from anthonymicmidd/foundation-members
Kefu Chai [Wed, 1 Jul 2026 02:00:55 +0000 (10:00 +0800)]
Merge pull request #69851 from anthonymicmidd/foundation-members

doc/foundation: Removed members section

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
8 days agodoc/foundation: Removed members section 69851/head
Anthony M [Tue, 30 Jun 2026 22:11:39 +0000 (17:11 -0500)]
doc/foundation: Removed members section

These updates will allow us to update a single page rather than two. The detailed member lists and categories have been removed. I've added a redirect for visitors to this page to https://ceph.io/en/foundation/members/

Signed-off-by: Anthony M <amiddleton@linuxfoundation.org>
8 days agoMerge pull request #69440 from jdurgin/wip-release-notes-script
Yuri Weinstein [Tue, 30 Jun 2026 22:36:42 +0000 (15:36 -0700)]
Merge pull request #69440 from jdurgin/wip-release-notes-script

scripts/ceph-release-notes: use raw strings for escaped characters

Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
8 days agoMerge pull request #65535 from ceph/jfw-wip-rgw-libfdb
Jesse Williamson [Tue, 30 Jun 2026 22:07:58 +0000 (15:07 -0700)]
Merge pull request #65535 from ceph/jfw-wip-rgw-libfdb

Add libfdb: Experimental FoundationDB support

8 days agoMerge pull request #69836 from sunyuechi/wip-librbd-trash-purge-uaf
Ilya Dryomov [Tue, 30 Jun 2026 19:34:36 +0000 (21:34 +0200)]
Merge pull request #69836 from sunyuechi/wip-librbd-trash-purge-uaf

librbd: fix use-after-free in trash purge on image open error

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
8 days agolibrbd: fix use-after-free in trash purge on image open error 69836/head
Sun Yuechi [Tue, 30 Jun 2026 11:50:09 +0000 (19:50 +0800)]
librbd: fix use-after-free in trash purge on image open error

When ImageState::open() fails with an error other than -ENOENT, it
asynchronously deletes the ImageCtx before returning. The trash purge
loop only skipped the -ENOENT case and fell through on every other
error, dereferencing the already-freed ictx in diff_iterate() and
state->close(). Add the missing continue so a failed open is skipped.

The fall-through dates back to 504f4e78, which split `if (r < 0)
continue` to log non-ENOENT errors but dropped the continue.

Fixes: https://tracker.ceph.com/issues/77836
Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
8 days agoAdd FoundationDB client library "libfdb". 65535/head
Jesse F. Williamson [Fri, 12 Sep 2025 20:07:43 +0000 (13:07 -0700)]
Add FoundationDB client library "libfdb".

Assisted-by: Codex:GPT-5
Signed-off-by: Jesse F. Williamson <jfw@ibm.com>
9 days agoMerge pull request #69031 from neesingh-rh/wip-71795
Venky Shankar [Tue, 30 Jun 2026 13:40:09 +0000 (19:10 +0530)]
Merge pull request #69031 from neesingh-rh/wip-71795

qa: fixing failures in TestShellOpts

Reviewed-by: Venky Shankar <vshankar@redhat.com>
9 days agoMerge PR #69324 into main
Venky Shankar [Tue, 30 Jun 2026 13:39:27 +0000 (19:09 +0530)]
Merge PR #69324 into main

* refs/pull/69324/head:
libcephfs: increment extra version to indicate new flock functions
libcephfs: add public api for ceph_ll_flock

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
9 days agoMerge pull request #66723 from rishabh-d-dave/snap-metadata-mutate
Venky Shankar [Tue, 30 Jun 2026 13:36:39 +0000 (19:06 +0530)]
Merge pull request #66723 from rishabh-d-dave/snap-metadata-mutate

cephfs: allow snapshot metadata mutations

Reviewed-by: Venky Shankar <vshankar@redhat.com>
9 days agoMerge pull request #69371 from cbodley/wip-76961
Casey Bodley [Tue, 30 Jun 2026 12:30:26 +0000 (08:30 -0400)]
Merge pull request #69371 from cbodley/wip-76961

qa/dnsmasq: use managed dnsmasq instead of editing resolv.conf

Reviewed-by: Oguzhan Ozmen <oozmen@bloomberg.net>
9 days agoMerge pull request #66344 from JoshuaGabriel/68797-bdev-expand-admin
Igor Fedotov [Tue, 30 Jun 2026 12:13:45 +0000 (15:13 +0300)]
Merge pull request #66344 from JoshuaGabriel/68797-bdev-expand-admin

os/bluestore: asok command to expand block device and Bluestore while OSD is running

Revewed-by: Igor Fedotov <igor.fedotov@croit.io>
9 days agoMerge pull request #69808 from rkachach/fix_issue_bump_python_version
Redouane Kachach [Tue, 30 Jun 2026 12:09:48 +0000 (14:09 +0200)]
Merge pull request #69808 from rkachach/fix_issue_bump_python_version

mgr/cephadm: bump Python version path mapped in kcli dev env

Reviewed-by: John Mulligan <jmulligan@redhat.com>
Reviewed-by: Kobi Ginon <kginon@redhat.com>
9 days agoMerge pull request #69820 from sunyuechi/wip-blk-aio-fix-paren
Igor Fedotov [Tue, 30 Jun 2026 12:06:20 +0000 (15:06 +0300)]
Merge pull request #69820 from sunyuechi/wip-blk-aio-fix-paren

blk/aio: fix mismatched parenthesis in POSIX AIO submit path

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
Reviewed-by: Igor Fedotov <igor.fedotov@croit.io>
9 days agoMerge pull request #69711 from ronen-fr/wip-rf-mold3
Ronen Friedman [Tue, 30 Jun 2026 11:49:36 +0000 (14:49 +0300)]
Merge pull request #69711 from ronen-fr/wip-rf-mold3

cmake: implement WITH_MOLD option for Mold linker support

Reviewed-by: Mark Kogan <mkogan@redhat.com>
9 days agoMerge pull request #66051 from ShwetaBhosale1/fix_issue_73633_haproxy_service_should_...
Redouane Kachach [Tue, 30 Jun 2026 11:43:52 +0000 (13:43 +0200)]
Merge pull request #66051 from ShwetaBhosale1/fix_issue_73633_haproxy_service_should_not_be_restart_on_nfs_updates

haproxy service should not be restart on nfs updates

Reviewed-by: Redouane Kachach <rkachach@ibm.com>
9 days agoMerge pull request #66663 from Shubhaj1810/fix-issue-2384421
Redouane Kachach [Tue, 30 Jun 2026 11:42:16 +0000 (13:42 +0200)]
Merge pull request #66663 from Shubhaj1810/fix-issue-2384421

mgr/nfs: include placement details and active/passive roles in cluster info

Reviewed-by: Shweta Bhosale <Shweta.Bhosale1@ibm.com>
9 days agoMerge pull request #67195 from kginonredhat/fix-ipv6-lo-routes
Redouane Kachach [Tue, 30 Jun 2026 11:40:29 +0000 (13:40 +0200)]
Merge pull request #67195 from kginonredhat/fix-ipv6-lo-routes

cephadm: allow lo routes on loopback interface, allow bgp-routes for list-networks

Reviewed-by: Redouane Kachach <rkachach@ibm.com>
9 days agoMerge pull request #69043 from yaelazulay-redhat/issue_76565_keep_mgr_ports_in_sync_w...
Redouane Kachach [Tue, 30 Jun 2026 11:36:34 +0000 (13:36 +0200)]
Merge pull request #69043 from yaelazulay-redhat/issue_76565_keep_mgr_ports_in_sync_when_modules_are_enabled_disabled

cephadm: keep mgr ports in sync when modules are enabled/disabled

Reviewed-by: Redouane Kachach <rkachach@ibm.com>
9 days agoMerge pull request #69192 from kginonredhat/issue-76981-Rocky10-failure-cause-by...
Redouane Kachach [Tue, 30 Jun 2026 11:34:28 +0000 (13:34 +0200)]
Merge pull request #69192 from kginonredhat/issue-76981-Rocky10-failure-cause-by-Cannot-register-NFS-V3-on-TCP

cephadm: start rpcbind before NFS-Ganesha for NFSv3 TCP

Reviewed-by: Shweta Bhosale <Shweta.Bhosale1@ibm.com>
9 days agoMerge pull request #69283 from Shubhaj1810/node-exporter
Redouane Kachach [Tue, 30 Jun 2026 11:31:24 +0000 (13:31 +0200)]
Merge pull request #69283 from Shubhaj1810/node-exporter

cephadm: report intentionally stopped daemons as stopped

Reviewed-by: John Mulligan <jmulligan@redhat.com>
9 days agoMerge pull request #69301 from xxhdx1985126/wip-seastore-circular_bounded_journal...
Xuehan Xu [Tue, 30 Jun 2026 05:58:38 +0000 (13:58 +0800)]
Merge pull request #69301 from xxhdx1985126/wip-seastore-circular_bounded_journal-tail-fix

crimson/os/seastore/journal/circular_bounded_journal: find the real journal tail on startup

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Reviewed-by: Myoungwon Oh <ohmyoungwon@gmail.com>
9 days agoblk/aio: fix mismatched parenthesis in POSIX AIO submit path 69820/head
Sun Yuechi [Tue, 30 Jun 2026 03:50:20 +0000 (20:50 -0700)]
blk/aio: fix mismatched parenthesis in POSIX AIO submit path

The condition `if ((cur->n_aiocb == 1) {` has an unbalanced
parenthesis and fails to compile. This code is only built on the
HAVE_POSIXAIO (BSD) path, so the breakage is normally hidden.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
9 days agoMerge pull request #69615 from xxhdx1985126/wip-77548
Xuehan Xu [Tue, 30 Jun 2026 02:38:19 +0000 (10:38 +0800)]
Merge pull request #69615 from xxhdx1985126/wip-77548

crimson/osd/pg_backend: mark the omaps of the object dirty when removing omap keys

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
9 days agoMerge pull request #69278 from badone/wip-badone-tracker-76473-dont-inline-and-log...
Brad Hubbard [Tue, 30 Jun 2026 01:26:16 +0000 (11:26 +1000)]
Merge pull request #69278 from badone/wip-badone-tracker-76473-dont-inline-and-log-mem0ry-leak

common: Log when we leak and disallow inlining

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
9 days agoMerge pull request #69437 from tchaikov/wip-crimson-osd-coroutinize
Kefu Chai [Tue, 30 Jun 2026 00:18:33 +0000 (08:18 +0800)]
Merge pull request #69437 from tchaikov/wip-crimson-osd-coroutinize

crimson/osd: coroutinize and cleanups

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
9 days agoMerge pull request #69537 from tchaikov/wip-crimson-compile-time-fmt-check
Kefu Chai [Tue, 30 Jun 2026 00:18:18 +0000 (08:18 +0800)]
Merge pull request #69537 from tchaikov/wip-crimson-compile-time-fmt-check

crimson: fix malformed logging message and enable compile-time fmt check

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
9 days agoMerge pull request #69070 from rhcs-dashboard/73367-carbonize-administration-module
Afreen Misbah [Mon, 29 Jun 2026 20:05:54 +0000 (01:35 +0530)]
Merge pull request #69070 from rhcs-dashboard/73367-carbonize-administration-module

mgr/dashboard : Carbonize configuration form

Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Devika Babrekar <devika.babrekar@ibm.com>
10 days agoMerge pull request #69487 from rhcs-dashboard/fix-4878
Nizamudeen A [Mon, 29 Jun 2026 12:33:12 +0000 (18:03 +0530)]
Merge pull request #69487 from rhcs-dashboard/fix-4878

mgr/dashboard : Implement dependent resource handling for gateway Deletion

Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Sagar Gopale <sagar.gopale@ibm.com>
Reviewed-by: Afreen Misbah <afreen@ibm.com>
10 days agomgr/cephadm: bump Python version path mapped in kcli dev env 69808/head
Redouane Kachach [Mon, 29 Jun 2026 12:20:22 +0000 (14:20 +0200)]
mgr/cephadm: bump Python version path mapped in kcli dev env

Bump Python version path mapped in kcli dev env from 3.9 to 3.12

Signed-off-by: Redouane Kachach <rkachach@ibm.com>
10 days agoMerge pull request #69794 from tchaikov/wip-crimson-test-thrash-teardown
Kefu Chai [Mon, 29 Jun 2026 08:32:57 +0000 (16:32 +0800)]
Merge pull request #69794 from tchaikov/wip-crimson-test-thrash-teardown

crimson/test: stop the messenger-thrash config on every exit path

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
10 days agoMerge pull request #69755 from tchaikov/wip-mgr-remote-pyunicode-leak
Kefu Chai [Mon, 29 Jun 2026 08:29:57 +0000 (16:29 +0800)]
Merge pull request #69755 from tchaikov/wip-mgr-remote-pyunicode-leak

mgr: fix PyObject leak in the remote() pickle calls

Reviewed-by: Matthew N. Heler <matthew.heler@hotmail.com>
10 days agoMerge pull request #69413 from rhcs-dashboard/fix-3958-autofetch
Nizamudeen A [Mon, 29 Jun 2026 08:22:34 +0000 (13:52 +0530)]
Merge pull request #69413 from rhcs-dashboard/fix-3958-autofetch

mgr/dashboard: Add auto-fetch listeners option in subsystem page

Reviewed-by: Sagar Gopale <sagar.gopale@ibm.com>
Reviewed-by: Naman Munet <nmunet@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Afreen Misbah <afreen@ibm.com>
10 days agoMerge pull request #69550 from rhcs-dashboard/fix-5059
Nizamudeen A [Mon, 29 Jun 2026 08:07:10 +0000 (13:37 +0530)]
Merge pull request #69550 from rhcs-dashboard/fix-5059

mgr/dashboard: "Any" initiator entry appears in the Initiator table after selecting "All Hosts Allowed" during subsystem creation

Reviewed-by: Naman Munet <nmunet@redhat.com>
Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Sagar Gopale <sagar.gopale@ibm.com>
10 days agoMerge pull request #69424 from rhcs-dashboard/fix-4075
Nizamudeen A [Mon, 29 Jun 2026 08:06:27 +0000 (13:36 +0530)]
Merge pull request #69424 from rhcs-dashboard/fix-4075

mgr/dashboard: NVME- Remove block pool from create gateway page

Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Sagar Gopale <sagar.gopale@ibm.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
10 days agoMerge pull request #69675 from NitzanMordhai/wip-nitzan-config-trim-key-trail-lead...
NitzanMordhai [Mon, 29 Jun 2026 08:02:24 +0000 (11:02 +0300)]
Merge pull request #69675 from NitzanMordhai/wip-nitzan-config-trim-key-trail-lead-spaces

mon/config: trim whitespace in config target

10 days agocrimson/os/seastore/journal/circular_bounded_journal: find the real 69301/head
Xuehan Xu [Fri, 5 Jun 2026 09:19:13 +0000 (17:19 +0800)]
crimson/os/seastore/journal/circular_bounded_journal: find the real
journal tail on startup

Recover the correct journal tail during replay by scanning
JOURNAL_TAIL records instead of relying solely on the on-disk
header, which may be stale if a crash occurs between record
write and header update.

The journal header is stored *separately* from the (append-only)
journal and is not updated atomically with journal writes,
so it may lag behind after a crash.
Treat the journal as the source of truth and rebuild the tail from persisted records.

Replay is reorganized into three passes:
1) discover latest journal tail
2) rebuild allocation map
3) replay deltas

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
10 days agocrimson/test: stop the messenger-thrash config on every exit path 69794/head
Kefu Chai [Mon, 29 Jun 2026 01:19:02 +0000 (09:19 +0800)]
crimson/test: stop the messenger-thrash config on every exit path

test_messenger_thrash put sharded_conf().stop() in the success
continuation, so an exception from the tests skipped it and left the
static sharded<ConfigProxy> holding live instances. its destructor then
asserts. a tester hit this when the run went OOM at --memory 256M:

  ERROR [shard 0:main] test - Test failed: got exception
    ceph::buffer::v15_2_0::bad_alloc (Bad allocation [buffer:1])
  /ceph/src/seastar/include/seastar/core/sharded.hh:573:
    seastar::sharded<Service>::~sharded()
    [with Service = crimson::common::ConfigProxy]:
    Assertion `_instances.empty()' failed.
  terminate called without an active exception

run the body in seastar::async and stop the config through
seastar::deferred_stop, as crimson/osd/main.cc already does. the guard
is constructed only after start() succeeds, and its destructor stops the
config on any exit path, so a failing test exits cleanly instead of
aborting.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
11 days agocmake: add WITH_MOLD option for Mold linker support 69711/head
Ronen Friedman [Sun, 28 Jun 2026 14:42:23 +0000 (14:42 +0000)]
cmake: add WITH_MOLD option for Mold linker support

Add a WITH_MOLD cmake option that auto-configures the build for
the Mold linker. When enabled, cmake finds mold, sets CMAKE_LINKER,
injects -fuse-ld=mold into all linker flag variables, and sets
USING_MOLD_LINKER which gates the Mold-specific workarounds added
in the previous commit.

Usage: cmake -DWITH_MOLD=ON ...

Assisted-by: Claude <claude.ai>
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
11 days agobuild: add Mold linker compatibility
Ronen Friedman [Sun, 28 Jun 2026 14:42:07 +0000 (14:42 +0000)]
build: add Mold linker compatibility

Mold handles several linker features differently from ld.bfd:

- --exclude-libs,ALL hides .symver-aliased symbols (e.g. rados_*)
  even when the version script lists them as global. Detect Mold
  (via USING_MOLD_LINKER) and disable --exclude-libs; version
  scripts already control symbol visibility.

- Duplicate symbols across static archives are treated as errors.
  Merge crimson-alien-common into crimson-alienstore as a single
  archive. For crimson-osd, link crimson-alienstore before
  crimson-common with --allow-multiple-definition so the alien
  thread's non-crimson definitions win (Mold picks first definition).

- Python/Cython extension builds (via Distutils.cmake) invoked the
  system default linker. Pass -fuse-ld= via MOLD_FUSE_LD_FLAG so
  extensions link with the configured linker.

- Add rados_* and _rados_* to librados.map global section for Mold
  compatibility with .symver aliases.

Co-authored-by: Mark Kogan <mkogan@redhat.com>
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
11 days agocephadm: keep mgr ports in sync when modules are enabled/disabled 69043/head
Yael Azulay [Thu, 21 May 2026 11:38:28 +0000 (14:38 +0300)]
cephadm: keep mgr ports in sync when modules are enabled/disabled

ceph orch ps  - was showing stale or incorrect port information for `mgr` daemons after enabling or disabling mgr modules (e.g., dashboard, prometheus).
This fix ensures the displayed ports always reflect the actual active module endpoints.

Code Fixes:
-----------
Changes in src/pybind/mgr/cephadm/services/cephadmservice.py:
- Extract and refactor _get_mgr_service_ports:
The logic for reading active mgr module ports was inline inside prepare_create, using check_mon_command({'prefix': 'mgr services'}). It was extracted into a static helper method and refactored to read directly from mgr.get('mgr_map')['services'] instead -- which is faster and consistent with how get_dependencies reads the same data. The method is now shared by both prepare_create (existing use) and get_dependencies (new use).

- Extract `_get_mgr_service_ports`:
The logic for reading active mgr module ports from `mgr_map['services']` was inline inside `prepare_create`. It was extracted into a static helper method so it can be reused by both `prepare_create` (existing use) and `get_dependencies` (new use). Returns the port numbers currently registered by active mgr modules (e.g., `[8443, 9283]`).

-  Override `get_dependencies` in `MgrService`:
The base class returns `[]` for all Ceph daemons. The serve loop compares `get_dependencies()` output against `last_deps` (saved after the previous reconfig). If they differ, a reconfig is triggered. By overriding this method in `MgrService`, we make the serve loop aware of mgr port changes. Returns a sorted list such as `['port:8443', 'port:9283', 'sd_port:8765']`.

- Override `generate_config` in `MgrService`:
After a reconfig completes, the result of `generate_config` is saved as `last_deps`. The inherited implementation returns `[]` as deps. If `[]` is saved but `get_dependencies` returns `['port:8443', 'sd_port:8765']`, they would always differ, causing an infinite reconfig loop. This override ensures that what is saved as `last_deps` matches what `get_dependencies` will return in the next iteration.

Changes in `src/pybind/mgr/cephadm/serve.py`:

- Update mgr cache on reconfig:
The existing logic skipped the cache update for all Ceph daemon reconfigs. A new `elif` branch for mgr reconfigs fetches the existing cached `DaemonDescription`, updates only its `ports` field, and saves it back. This makes `ceph orch ps` reflect the correct ports immediately after a reconfig, without showing a misleading "starting" status.

Changes in `src/cephadm/cephadm.py`:

- Update `unit.meta` on reconfig:
`unit.meta` is a per-daemon file on the host that stores metadata including ports.  It is read periodically by `cephadm ls` and fed back into the orchestrator cache. Previously it was only written on initial deployment, so every periodic cache refresh would overwrite the corrected ports with stale data from `unit.meta`. This change updates the `ports` field in `unit.meta` during reconfig, ensuring the cache refresh confirms the correct state rather than reverting it.

Changes to src/pybind/mgr/cephadm/tests/services/test_mgr.py:

- Updated _prepare helper:
The original mocked check_mon_command to feed services data to prepare_create. Since our _get_mgr_service_ports now reads from mgr.get('mgr_map') instead of check_mon_command, the mock was replaced with mock_store_set('_ceph_get', 'mgr_map', ...) which sets the data in the right place.

- Added test_get_dependencies_changes_when_module_enabled:
   A new test that verifies get_dependencies returns different dep strings before and after a module is enabled. This directly tests the core sync mechanism -- the serve loop compares get_dependencies output against last_deps to detect port changes and trigger a reconfig.

to run new tests:
cd src/pybind/mgr
tox -e py3 -- cephadm/tests/services/test_mgr.py -v

Fixes: https://tracker.ceph.com/issues/76565
Signed-off-by: Yael Azulay <yazulay@redhat.com>
11 days agocrimson/osd/pg_backend: mark the omaps of the object dirty when removing 69615/head
Xuehan Xu [Sun, 21 Jun 2026 03:48:01 +0000 (11:48 +0800)]
crimson/osd/pg_backend: mark the omaps of the object dirty when removing
omap keys

Fixes: https://tracker.ceph.com/issues/77548
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
11 days agoMerge pull request #69617 from xxhdx1985126/wip-77549
Xuehan Xu [Sun, 28 Jun 2026 06:33:03 +0000 (14:33 +0800)]
Merge pull request #69617 from xxhdx1985126/wip-77549

crimson/os/seastore/random_block_manager/avlallocator: avoid directly modifying avl_set elements

Reviewed-by: Myoungwon Oh <ohmyoungwon@gmail.com>
11 days agoMerge pull request #69456 from NitzanMordhai/wip-nitzan-mgr-signals-standby-handle
NitzanMordhai [Sun, 28 Jun 2026 06:12:01 +0000 (09:12 +0300)]
Merge pull request #69456 from NitzanMordhai/wip-nitzan-mgr-signals-standby-handle

mgr: handle SIGTERM/SIGINT in standby mgr to avoid CEPHADM_FAILED_DAEMON

11 days agoMerge pull request #69618 from tchaikov/wip-mgr-exclude-tests-ci
Kefu Chai [Sat, 27 Jun 2026 23:04:48 +0000 (07:04 +0800)]
Merge pull request #69618 from tchaikov/wip-mgr-exclude-tests-ci

cmake,deb,rpm: exclude CI and test directories from installed modules

Reviewed-by: John Mulligan <jmulligan@redhat.com>
11 days agoMerge pull request #69453 from tchaikov/wip-dashboard-fix-e2e
Kefu Chai [Sat, 27 Jun 2026 22:32:09 +0000 (06:32 +0800)]
Merge pull request #69453 from tchaikov/wip-dashboard-fix-e2e

mgr/dashboard: fix "welcome" page reference in add-host e2e feature

Reviewed-by: Afreen Misbah <afreen@ibm.com>
12 days agoMerge pull request #68836 from nh2/balancer-docs-average
Kefu Chai [Sat, 27 Jun 2026 13:24:38 +0000 (21:24 +0800)]
Merge pull request #68836 from nh2/balancer-docs-average

docs: balancer: Explain PG shard count based balancing in more detail

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
Reviewed-by: Kefu Chai <k.chai@proxmox.com>
12 days agodocs: balancer: Explain limitations of PG shard count balancing 68836/head
Niklas Hambüchen [Sun, 10 May 2026 03:35:52 +0000 (03:35 +0000)]
docs: balancer: Explain limitations of PG shard count balancing

Signed-off-by: Niklas Hambüchen <mail@nh2.me>
12 days agodocs: balancer: Elaborate what "average" means.
Niklas Hambüchen [Sun, 10 May 2026 03:04:13 +0000 (03:04 +0000)]
docs: balancer: Elaborate what "average" means.

The wording "average" so far suggested a simple mean count, which it isn't.

It is important to document this, so that the user can follow
why the balancer is active or not.

Source for the logic (deviation computation and threshold check)
in `src/osd/OSDMap.cc`:

`calc_deviations()` - computes per-OSD deviation:

    float target = osd_weight.at(oid) * pgs_per_weight;
    float deviation = (float)opgs.size() - target;

Where `pgs_per_weight` is computed in `calc_pg_upmaps()`:

    float pgs_per_weight = total_pgs / osd_weight_total;

This also has the early threshold + early return:

    if (cur_max_deviation <= max_deviation) {
        ldout(cct, 10) << __func__ << " distribution is almost perfect" << dendl;
        return 0;
    }

`fill_overfull_underfull()` classifies OSDs using `max_deviation`:

    if (odev > max_deviation) {
        overfull.insert(oid);        // deviation > +5 -> source candidate
    }
    if (odev < -(int)max_deviation) {
        underfull.push_back(oid);    // deviation < -5 -> target candidate
    }

Signed-off-by: Niklas Hambüchen <mail@nh2.me>
12 days agoMerge pull request #69568 from xxhdx1985126/wip-77485
Xuehan Xu [Sat, 27 Jun 2026 07:44:20 +0000 (15:44 +0800)]
Merge pull request #69568 from xxhdx1985126/wip-77485

crimson/os/seastore/transaction_manager: refresh `indirect_cursor` after the `direct_cursor` is removed in `TM::_remove()`

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
12 days agoMerge pull request #68792 from MaxKellermann/nvmeof__missing_includes
Kefu Chai [Sat, 27 Jun 2026 06:13:23 +0000 (14:13 +0800)]
Merge pull request #68792 from MaxKellermann/nvmeof__missing_includes

nvmeof: add missing includes

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
12 days agoMerge pull request #69528 from mheler/wip-bug-77278
mheler [Sat, 27 Jun 2026 05:50:33 +0000 (00:50 -0500)]
Merge pull request #69528 from mheler/wip-bug-77278

rgw/lc: warn against changing rgw_lc_max_objs once lifecycle is in use

12 days agoMerge pull request #69699 from avanthakkar/fix-mgr-recoverdb
Kefu Chai [Sat, 27 Jun 2026 00:44:47 +0000 (08:44 +0800)]
Merge pull request #69699 from avanthakkar/fix-mgr-recoverdb

mgr: fix MgrModuleRecoverDB to honor its retry budget on db cleanup failure

Reviewed-by: John Mulligan <jmulligan@redhat.com>
Reviewed-by: Kefu Chai <k.chai@proxmox.com>
12 days agoMerge pull request #67255 from Vivek-tgmc/wip-71716-setting_nodown_flag_reporting_iss...
SrinivasaBharathKanta [Fri, 26 Jun 2026 23:35:28 +0000 (05:05 +0530)]
Merge pull request #67255 from Vivek-tgmc/wip-71716-setting_nodown_flag_reporting_issue_in_ceph_status_and_health

osd: Rephrase unclear OSD_FLAGS warning message

12 days agoMerge pull request #69745 from sunyuechi/wip-fio-riscv-upstream
Kefu Chai [Fri, 26 Jun 2026 22:33:09 +0000 (06:33 +0800)]
Merge pull request #69745 from sunyuechi/wip-fio-riscv-upstream

cmake: upgrade to upstream fio

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
12 days agoMerge pull request #69663 from aainscow/wip-truncate-write-io-sequence
Laura Flores [Fri, 26 Jun 2026 22:02:33 +0000 (17:02 -0500)]
Merge pull request #69663 from aainscow/wip-truncate-write-io-sequence

osd/ECTransaction: fix truncate+write planning for EC shard sizes

Reviewed-by: Radoslaw Zarzynski <Radoslaw.Adam.Zarzynski@ibm.com>
12 days agoMerge pull request #68912 from adamemerson/wip-cls-timeindex-build
Adam Emerson [Fri, 26 Jun 2026 21:52:44 +0000 (17:52 -0400)]
Merge pull request #68912 from adamemerson/wip-cls-timeindex-build

build: Add `cls_timeindex_types` to `cls_timeindex` objclass

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
Reviewed-by: Jesse F. Williamson <jfw@ibm.com>
12 days agomgr/dashboard: "Any" initiator entry appears in the Initiator table after selecting... 69550/head
pujashahu [Wed, 17 Jun 2026 13:07:24 +0000 (18:37 +0530)]
mgr/dashboard: "Any" initiator entry appears in the Initiator table after selecting "All Hosts Allowed" during subsystem creation

Fixes: https://tracker.ceph.com/issues/77467
Signed-off-by: pujaoshahu <pshahu@redhat.com>
12 days agomgr/dashboard: Add auto-fetch listeners option in subsystem page 69413/head
pujashahu [Thu, 11 Jun 2026 10:29:51 +0000 (15:59 +0530)]
mgr/dashboard: Add auto-fetch listeners option in subsystem page

Fixes: https://tracker.ceph.com/issues/77083
Signed-off-by: pujaoshahu <pshahu@redhat.com>
12 days agoMerge pull request #69426 from rhcs-dashboard/fix-77361
Afreen Misbah [Fri, 26 Jun 2026 17:07:32 +0000 (22:37 +0530)]
Merge pull request #69426 from rhcs-dashboard/fix-77361

mgr/dashboard: NVMe-oF – Updated subtitle text on the Create Gateway page

Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
12 days agoMerge pull request #69768 from MaxKellermann/rgw__missing_includes
Casey Bodley [Fri, 26 Jun 2026 16:58:06 +0000 (12:58 -0400)]
Merge pull request #69768 from MaxKellermann/rgw__missing_includes

rgw: add missing include

Reviewed-by: Casey Bodley <cbodley@redhat.com>
13 days agoMerge pull request #69769 from idryomov/wip-ptl-tool-multiple-source-prs
Ilya Dryomov [Fri, 26 Jun 2026 14:42:07 +0000 (16:42 +0200)]
Merge pull request #69769 from idryomov/wip-ptl-tool-multiple-source-prs

script/ptl-tool: fix redmine_linkage_correct case in _get_active_issues()

Reviewed-by: John Mulligan <jmulligan@redhat.com>
13 days agoMerge pull request #69660 from tchaikov/wip-cmake-boost-with-asan
Kefu Chai [Fri, 26 Jun 2026 14:00:46 +0000 (22:00 +0800)]
Merge pull request #69660 from tchaikov/wip-cmake-boost-with-asan

cmake/boost: build libboost_context with BOOST_USE_ASAN

Reviewed-by: Casey Bodley <cbodley@redhat.com>
13 days agoMerge pull request #69103 from Sodani/shsodani_ceph_rgw_new_module
John Mulligan [Fri, 26 Jun 2026 13:40:04 +0000 (09:40 -0400)]
Merge pull request #69103 from Sodani/shsodani_ceph_rgw_new_module

mgr/smb: add RGW-backed SMB share support

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
13 days agoMerge pull request #69598 from aclamk/aclamk-doc-fcm-plugin
Jaya Prakash [Fri, 26 Jun 2026 11:48:40 +0000 (17:18 +0530)]
Merge pull request #69598 from aclamk/aclamk-doc-fcm-plugin

doc/rados/bluestore: ExtBlkDev, FCM plugin

Reviewed-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
Reviewed-by: Jaya Prakash <jayaprakash@ibm.com>
13 days agoMerge pull request #69605 from sunyuechi/wip-readable-sliding-window
Kefu Chai [Fri, 26 Jun 2026 11:26:10 +0000 (19:26 +0800)]
Merge pull request #69605 from sunyuechi/wip-readable-sliding-window

test/encoding: run readable.sh with a sliding window of jobs

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
13 days agoscript/ptl-tool: fix redmine_linkage_correct case in _get_active_issues() 69769/head
Ilya Dryomov [Fri, 26 Jun 2026 10:56:27 +0000 (12:56 +0200)]
script/ptl-tool: fix redmine_linkage_correct case in _get_active_issues()

If redmine_linkage_correct is True, _get_active_issues() is supposed to
ignore issues with "Multiple Source PRs" category.  However that doesn't
happen because the category string is compared against (category, text)
pair.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
13 days agorgw: add missing include 69768/head
Max Kellermann [Thu, 25 Jun 2026 19:34:27 +0000 (21:34 +0200)]
rgw: add missing include

Signed-off-by: Max Kellermann <max.kellermann@ionos.com>
13 days agomgr/dashboard: NVME- Remove block pool from create gateway page 69424/head
pujashahu [Thu, 11 Jun 2026 18:05:20 +0000 (23:35 +0530)]
mgr/dashboard: NVME- Remove block pool from create gateway page

Adds unit test for creating gateway service with encryption when enabled.

Fixes: https://tracker.ceph.com/issues/77359
Signed-off-by: pujashahu <pshahu@redhat.com>
13 days agomgr/dashboard : Implement dependent resource handling for gateway Deletion 69487/head
pujashahu [Mon, 15 Jun 2026 18:17:32 +0000 (23:47 +0530)]
mgr/dashboard : Implement dependent resource handling for gateway Deletion

Fixes: https://tracker.ceph.com/issues/77403
Signed-off-by: pujaoshahu <pshahu@redhat.com>
13 days agomgr/dashboard: NVMe-oF – Updated subtitle text on the Create Gateway page 69426/head
pujashahu [Thu, 11 Jun 2026 18:49:40 +0000 (00:19 +0530)]
mgr/dashboard: NVMe-oF – Updated subtitle text on the Create Gateway page

Fixes :https://tracker.ceph.com/issues/77361

Signed-off-by: pujaoshahu <pshahu@redhat.com>
13 days agoMerge pull request #69008 from MaxKellermann/tools__missing_includes
Ilya Dryomov [Fri, 26 Jun 2026 08:04:15 +0000 (10:04 +0200)]
Merge pull request #69008 from MaxKellermann/tools__missing_includes

tools: add missing includes

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
13 days agoMerge pull request #69736 from gbregman/main
Gil Bregman [Fri, 26 Jun 2026 07:18:04 +0000 (10:18 +0300)]
Merge pull request #69736 from gbregman/main

nvmeof: Change the NVMEOF image version to 1.9

13 days agocmake: build fio from upstream 3.42 69745/head
Sun Yuechi [Thu, 25 Jun 2026 11:50:36 +0000 (19:50 +0800)]
cmake: build fio from upstream 3.42

fio-3.42 is the latest stable release. We switched to the ceph/fio fork in
10baab3fc8293b8c30ca90a4acd76f70d011f1b5 to pick up a clang build fix; that
fix has since landed upstream, so switch back. This also gives riscv64
proper arch support (arch-riscv64.h, added in fio-3.36), which the fork's
fio-3.27-cxx lacks.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
13 days agoMerge pull request #69510 from tchaikov/wip-cryptotools-sans-pyopenssl
Kefu Chai [Fri, 26 Jun 2026 06:29:38 +0000 (14:29 +0800)]
Merge pull request #69510 from tchaikov/wip-cryptotools-sans-pyopenssl

python-common/cryptotools: reimplement on top of cryptography

Reviewed-by: John Mulligan <jmulligan@redhat.com>
13 days agomgr: fix PyObject leak in the remote() pickle calls 69755/head
Kefu Chai [Fri, 26 Jun 2026 00:44:35 +0000 (08:44 +0800)]
mgr: fix PyObject leak in the remote() pickle calls

dispatch_remote() and ceph_dispatch_remote() invoke pickle.loads/dumps via
PyObject_CallMethodObjArgs(pmodule, PyUnicode_FromString("loads"), ...). The
method-name string created by PyUnicode_FromString is a new reference that
CallMethodObjArgs does not steal, and it was never released, so every cross
-module remote() call leaked three PyUnicode objects on the active mgr.

Use PyObject_CallMethod(pmodule, "loads", "(O)", arg), which takes the method
name as a C string and manages it internally, so there is nothing to leak.
The "(O)" format wraps the argument in a one-tuple so it reaches the callee as
a single object. A bare "O" passes the argument through directly, and when it
is a tuple (as remote()'s *args always is, including the empty tuple from a
no-argument call) PyObject_CallMethod unpacks it and calls dumps() with the
wrong arguments, e.g. dumps() with none.

Fixes: https://tracker.ceph.com/issues/77724
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
13 days agotools: add missing includes 69008/head
Max Kellermann [Tue, 14 Apr 2026 16:13:59 +0000 (18:13 +0200)]
tools: add missing includes

Signed-off-by: Max Kellermann <max.kellermann@ionos.com>
13 days agoMerge pull request #69620 from tchaikov/wip-rbd-fix-uaf
Ilya Dryomov [Thu, 25 Jun 2026 18:08:52 +0000 (20:08 +0200)]
Merge pull request #69620 from tchaikov/wip-rbd-fix-uaf

librbd: fix use-after-free releasing object map locks in deep copy

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
13 days agoMerge pull request #69140 from MaxKellermann/CompatSet_optimizations
Yuri Weinstein [Thu, 25 Jun 2026 17:24:00 +0000 (10:24 -0700)]
Merge pull request #69140 from MaxKellermann/CompatSet_optimizations

CompatSet optimizations

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
13 days agoMerge pull request #68738 from aainscow/dout-hacks
Yuri Weinstein [Thu, 25 Jun 2026 17:23:20 +0000 (10:23 -0700)]
Merge pull request #68738 from aainscow/dout-hacks

test/osd: Improve test logging with OSD identification

Reviewed-by: Bill Scales <bill_scales@uk.ibm.com>
13 days agomgr/smb: add RGW credentials resource and store in priv_stor 69103/head
Avan Thakkar [Thu, 11 Jun 2026 09:55:33 +0000 (15:25 +0530)]
mgr/smb: add RGW credentials resource and store in priv_stor

Refactored RGW credential management to use dedicated RGWCredential
resources instead of embedding credentials directly in Share resources.
This will help to reuse the same credential across multiple shares using
same user.

RGW credentials must not appear in the public RADOS store, which any
client with pool caps can read. Instead, write a config:merge stub
containing only the credential fields to the private mon config-key
store, and pass its URI to the container alongside the primary config
URI via extra_config_uris.

- Public config: ceph_rgw:access_key / secret_access_key are empty strings
- Private stub: stored under smb/config/<cluster_id>/config.smb.rgw,
  contains only the real credential values via config:merge
- extra_config_uris: new Config field carrying supplementary URIs
  appended to SAMBACC_CONFIG after the primary config_uri

Signed-off-by: Avan Thakkar <athakkar@redhat.com>
Signed-off-by: Shweta Sodani <ssodani@redhat.com>
13 days agodoc/mgr/smb: document new options for smb share create rgw
Shweta Sodani [Wed, 27 May 2026 08:02:27 +0000 (13:32 +0530)]
doc/mgr/smb: document new options for smb share create rgw

Signed-off-by: Shweta Sodani <ssodani@redhat.com>
13 days agomgr/smb: Add test coverage for RGW share functionality
Shweta Sodani [Tue, 26 May 2026 14:27:42 +0000 (19:57 +0530)]
mgr/smb: Add test coverage for RGW share functionality

Add test cases for RGW-backed SMB shares

Key changes:
- RGWStorage creation, validation, and serialization
- Edge cases: None values, mutual exclusion

Signed-off-by: Shweta Sodani <ssodani@redhat.com>
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
13 days agomgr/smb: Update handler to process RGW shares, added validation and error handling
Shweta Sodani [Mon, 20 Apr 2026 09:17:35 +0000 (14:47 +0530)]
mgr/smb: Update handler to process RGW shares, added validation and error handling

- Add _generate_rgw_share() function for RGW share configuration
- Skip CephFS authorization for RGW shares in cluster assembly
- Configure Samba VFS with RGW-specific parameters:
  - rgw_bucket, rgw_user_id, rgw_access_key, rgw_secret_key
- Validate bucket accessibility using radosgw-admin
- Ensure proper error handling in share creation flow

This enables the handler to generate proper Samba configuration for
RGW-backed shares along with validation and error handling.

Signed-off-by: Shweta Sodani <ssodani@redhat.com>
13 days agomgr/smb: Add CLI command for RGW share creation
Shweta Sodani [Mon, 20 Apr 2026 09:14:01 +0000 (14:44 +0530)]
mgr/smb: Add CLI command for RGW share creation

- Add 'smb share create rgw' CLI command
- Import rgw module for credential management
- Fetch RGW credentials using radosgw-admin
- Create Share resource with RGWStorage backend
- Handle errors from credential fetching

This enables users to create SMB shares backed by RGW buckets,
similar to 'nfs export create rgw' functionality.

Example usage:
  ceph smb share create rgw mysmb share1 mybucket

Signed-off-by: Shweta Sodani <ssodani@redhat.com>
13 days agomgr/smb: Add RGW credential management utilities
Shweta Sodani [Mon, 20 Apr 2026 09:07:54 +0000 (14:37 +0530)]
mgr/smb: Add RGW credential management utilities

- Add rgw.py module for RGW integration
- Implement fetch_rgw_credentials() to get user credentials from radosgw-admin
- Implement validate_rgw_bucket() to check bucket existence
- Handle bucket owner lookup when user_id not provided
- Add proper error handling and logging

This provides the foundation for RGW authentication in SMB shares,
similar to the NFS RGW export implementation.

Signed-off-by: Shweta Sodani <ssodani@redhat.com>
13 days agomgr/smb: Add RGWStorage resource class and update Share to support RGW
Shweta Sodani [Mon, 20 Apr 2026 09:03:15 +0000 (14:33 +0530)]
mgr/smb: Add RGWStorage resource class and update Share to support RGW

- Add RGWStorage component class for RGW bucket storage backend
- Include fields: bucket, user_id, access_key_id, secret_access_key
- Add password conversion support for credentials
- Update Share class to accept optional rgw field and added convert
  defination
- Update Share validation to support both cephfs and rgw backends
- Ensure exactly one storage backend (cephfs or rgw) is specified

This is the first step in implementing RGW storage support for SMB
shares, similar to the existing NFS RGW export functionality.

Signed-off-by: Shweta Sodani <ssodani@redhat.com>
13 days agoMerge pull request #57167 from mkogan1/wip-rgw-thread-pool-size
Adam Emerson [Thu, 25 Jun 2026 16:08:16 +0000 (12:08 -0400)]
Merge pull request #57167 from mkogan1/wip-rgw-thread-pool-size

rgw: reduce default thread pool size

Reviewed-by: Mark Nelson <mark.a.nelson@gmail.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2 weeks agoMerge pull request #69314 from smanjara/wip-76725-test
Casey Bodley [Thu, 25 Jun 2026 14:51:28 +0000 (10:51 -0400)]
Merge pull request #69314 from smanjara/wip-76725-test

common/async: wake async_cond waiters on their associated executor

Reviewed-by: Mark Kogan <mkogan@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2 weeks agonvmeof: Change the NVMEOF image version to 1.9 69736/head
Gil Bregman [Thu, 25 Jun 2026 14:33:21 +0000 (17:33 +0300)]
nvmeof: Change the NVMEOF image version to 1.9
Fixes: https://tracker.ceph.com/issues/77709
Signed-off-by: Gil Bregman <gbregman@il.ibm.com>
2 weeks agoMerge pull request #68675 from smanjara/wip-archive-bucket-timestamp
J. Eric Ivancich [Thu, 25 Jun 2026 14:27:29 +0000 (10:27 -0400)]
Merge pull request #68675 from smanjara/wip-archive-bucket-timestamp

rgw/multisite: record the bucket creation time at archive zone

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
2 weeks agoMerge pull request #69084 from linuxbox2/wip-76790
J. Eric Ivancich [Thu, 25 Jun 2026 14:09:27 +0000 (10:09 -0400)]
Merge pull request #69084 from linuxbox2/wip-76790

rgwlc: fix a likely null dereference in LCObjsLister::get_obj()

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2 weeks agoMerge pull request #69449 from sunyuechi/wip-protobuf-config-mode
Kefu Chai [Thu, 25 Jun 2026 11:05:47 +0000 (19:05 +0800)]
Merge pull request #69449 from sunyuechi/wip-protobuf-config-mode

cmake: find Protobuf via cmake config before module mode

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
2 weeks agoMerge pull request #68500 from abitdrag/wip-non-prim-demote-img-snap-removal
Ilya Dryomov [Thu, 25 Jun 2026 10:33:51 +0000 (12:33 +0200)]
Merge pull request #68500 from abitdrag/wip-non-prim-demote-img-snap-removal

rbd-mirror: Remove old non-primary demoted image snapshots on the local cluster

Reviewed-by: VinayBhaskar-V <vvarada@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2 weeks agoMerge pull request #69658 from sunyuechi/test_encoding
Kefu Chai [Thu, 25 Jun 2026 08:46:19 +0000 (16:46 +0800)]
Merge pull request #69658 from sunyuechi/test_encoding

test/encoding: disable LeakSanitizer in readable.sh and check-generated.sh

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
2 weeks agoMerge pull request #69674 from sunyuechi/wip-bufferlist-asan
Kefu Chai [Thu, 25 Jun 2026 08:11:11 +0000 (16:11 +0800)]
Merge pull request #69674 from sunyuechi/wip-bufferlist-asan

test/bufferlist: fix BenchDeref overrun and shrink benchmarks under ASan

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
2 weeks agoMerge pull request #69279 from xxhdx1985126/wip-seastore-pessimistic-cc-mutation...
Xuehan Xu [Thu, 25 Jun 2026 07:31:28 +0000 (15:31 +0800)]
Merge pull request #69279 from xxhdx1985126/wip-seastore-pessimistic-cc-mutation-pending-crc-fix

crimson/os/seastore/cached_extent: renew mutation_pending extents' last_committed_crc when committing rewrite transactions

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
2 weeks agoMerge pull request #69431 from xxhdx1985126/wip-seastore-fix-update_copied_lba_keys
Xuehan Xu [Thu, 25 Jun 2026 07:30:30 +0000 (15:30 +0800)]
Merge pull request #69431 from xxhdx1985126/wip-seastore-fix-update_copied_lba_keys

crimson/os/seastore/transaction: clear copied_lba_keys on reset

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>