]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/log
ceph.git
9 days agoqa/lsan.supp: suppress CPython 3.12/3.13 interpreter leaks 69664/head
Kefu Chai [Tue, 23 Jun 2026 08:14:19 +0000 (16:14 +0800)]
qa/lsan.supp: suppress CPython 3.12/3.13 interpreter leaks

The python binaries on some CI images and dev boxes ship stripped, so the
allocator frames in an interpreter-shutdown leak come through unsymbolised
(/usr/bin/python3.13+0x...) and the function-name matches above cannot apply.
leak:python3.10 already handled this for 3.10, and a stale comment claimed 3.12
does not leak.

Add leak:python3.12 and leak:python3.13, mirroring the 3.10 entry, so the
interpreter globals are suppressed whatever CPython the build uses.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
9 days agoceph.in: load asan/lsan suppressions on WITH_ASAN builds
Kefu Chai [Tue, 23 Jun 2026 08:14:19 +0000 (16:14 +0800)]
ceph.in: load asan/lsan suppressions on WITH_ASAN builds

bin/ceph from a WITH_ASAN build aborts at exit, with LeakSanitizer reporting
CPython and Cython module-init allocations as leaks:

  ==2577940==ERROR: LeakSanitizer: detected memory leaks
  Direct leak ... in PyObject_Malloc (/usr/bin/python3.12+...)
    #4 __pyx_pymod_exec_rados rados_processed.c
  SUMMARY: AddressSanitizer: 32113 byte(s) leaked in 30 allocation(s).

These are interpreter globals that live for the process lifetime.  qa/lsan.supp
already suppresses them, but bin/ceph never loaded it: vstart.sh sets
LSAN_OPTIONS for the daemons it spawns, while a bin/ceph invoked separately
(ceph-api runs ./bin/ceph fsid once vstart.sh returns) inherits none and exits
non-zero.  It stayed hidden until radosgw-admin stopped crashing in vstart and
the run reached that call.

ceph.in already re-execs with the ASan runtime preloaded under WITH_ASAN.  Set
ASAN_OPTIONS and LSAN_OPTIONS first, from the CEPH_ASAN_OPTIONS and
CEPH_LSAN_OPTIONS that CMake also feeds add_ceph_test(), so the re-exec'd
interpreter starts with the suppressions loaded.  Use setdefault so a value
from the caller still wins.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
9 days agocmake: factor the ASan/LSan test options into cache variables
Kefu Chai [Tue, 23 Jun 2026 08:14:19 +0000 (16:14 +0800)]
cmake: factor the ASan/LSan test options into cache variables

add_ceph_test() spelled out the suppression-file paths and sanitizer flags
inline.  bin/ceph needs the same options, so lift them into CEPH_ASAN_OPTIONS
and CEPH_LSAN_OPTIONS and have add_ceph_test() consume those.  The environment
the tests run with is unchanged.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
9 days agoMerge pull request #69659 from tchaikov/wip-dashboard-prettytable
Ilya Dryomov [Tue, 23 Jun 2026 10:12:38 +0000 (12:12 +0200)]
Merge pull request #69659 from tchaikov/wip-dashboard-prettytable

mgr/dashboard: skip the table when an nvmeof cli result has no columns

Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Tomer Haskalovitch <tomer.haska@ibm.com>
9 days agoMerge pull request #69357 from eameh-LF/wip-doc-77197
eameh-LF [Tue, 23 Jun 2026 09:05:43 +0000 (10:05 +0100)]
Merge pull request #69357 from eameh-LF/wip-doc-77197

doc/install: Update mirrors.rst to use https and current release

9 days agomgr/dashboard: skip the table when an nvmeof cli result has no columns 69659/head
Kefu Chai [Tue, 23 Jun 2026 07:43:28 +0000 (15:43 +0800)]
mgr/dashboard: skip the table when an nvmeof cli result has no columns

The dashboard leaves prettytable unpinned.  prettytable commit 2574492 ("Apply
some Pylint rules (PLR)", #436) rewrote _stringify_row()'s row_height as
`max(_get_size(c)[1] for c in row)`, which raises ValueError("max() iterable
argument is empty") on a row with no cells.  The change is undocumented and
shipped in 3.18.0; get_string() trips on it when a table has a row but no
columns.

AnnotatedDataTextOutputFormatter builds such a table for an empty result, or
one whose only field is status or error_message, so NvmeofCLICommand.call()
returns -EINVAL and the command fails.  This broke run-tox-mgr-dashboard-py3
once the tox virtualenv picked up prettytable 3.18.0.

Return an empty string when there are no columns instead of formatting a
degenerate table.

Fixes: https://tracker.ceph.com/issues/77589
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
9 days agoMerge pull request #68194 from adamemerson/wip-rgw-multi-reshard-generation-recovery
anrao19 [Tue, 23 Jun 2026 05:13:45 +0000 (10:43 +0530)]
Merge pull request #68194 from adamemerson/wip-rgw-multi-reshard-generation-recovery

rgw/multi: Recover from future generation sync

9 days agoMerge pull request #69344 from knrt10/ceph-perf-pr
Kautilya Tripathi [Tue, 23 Jun 2026 05:00:10 +0000 (10:30 +0530)]
Merge pull request #69344 from knrt10/ceph-perf-pr

crimson/cbt: use yaml.safe_load in t2c and add unit tests

9 days agoMerge pull request #69596 from tchaikov/wip-rocksdb
Kefu Chai [Tue, 23 Jun 2026 00:14:08 +0000 (08:14 +0800)]
Merge pull request #69596 from tchaikov/wip-rocksdb

rocksdb: update submodule to fix FTBFS due to missing <cstdint>

Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 days agoMerge pull request #69629 from tchaikov/wip-doc-min-compat
Kefu Chai [Tue, 23 Jun 2026 00:11:40 +0000 (08:11 +0800)]
Merge pull request #69629 from tchaikov/wip-doc-min-compat

doc/rados/operations: document the kernel-client min-compat holdout

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
9 days agoMerge pull request #69622 from sunyuechi/boost
Kefu Chai [Mon, 22 Jun 2026 23:52:23 +0000 (07:52 +0800)]
Merge pull request #69622 from sunyuechi/boost

cmake: define BOOST_USE_UCONTEXT tree-wide under ASan

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
10 days agoMerge pull request #69641 from ceph/ljflores-patch-1
Ilya Dryomov [Mon, 22 Jun 2026 16:58:47 +0000 (18:58 +0200)]
Merge pull request #69641 from ceph/ljflores-patch-1

doc: update email address for Laura Flores

Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
Reviewed-by: Dan van der Ster <dan.vanderster@clyso.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
10 days agoMerge pull request #69621 from sunyuechi/wip-asan-ci-rebase
Kefu Chai [Mon, 22 Jun 2026 15:25:36 +0000 (23:25 +0800)]
Merge pull request #69621 from sunyuechi/wip-asan-ci-rebase

build,test: fix issues surfaced by tests after enabling ASan

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
10 days agodoc: update email address for Laura Flores 69641/head
Laura Flores [Mon, 22 Jun 2026 15:18:50 +0000 (10:18 -0500)]
doc: update email address for Laura Flores

Changed Red Hat email to IBM.

Signed-off-by: Laura Flores <lflores@ibm.com>
10 days agoMerge pull request #69190 from RaminNietzsche/fix/rgw-cors-aws-rule-matching
Ali Masarwa [Mon, 22 Jun 2026 14:16:25 +0000 (17:16 +0300)]
Merge pull request #69190 from RaminNietzsche/fix/rgw-cors-aws-rule-matching

RGW: match CORS rules like Amazon S3

reviewed-by: Ali Masarwa <amasarwa@redhat.com>

10 days agoMerge pull request #68713 from nhoad/remove-dead-gc-code
Nathan Hoad [Mon, 22 Jun 2026 14:00:11 +0000 (10:00 -0400)]
Merge pull request #68713 from nhoad/remove-dead-gc-code

rgw: Remove GC deferred entries options and code

10 days agoMerge pull request #69601 from sunyuechi/wip-test-gtest-parallel-cache
Kefu Chai [Mon, 22 Jun 2026 10:54:32 +0000 (18:54 +0800)]
Merge pull request #69601 from sunyuechi/wip-test-gtest-parallel-cache

cmake: make GTEST_PARALLEL_COMMAND visible to all test directories

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
10 days agoMerge pull request #69556 from VallariAg/refresh-network-cli
Vallari Agrawal [Mon, 22 Jun 2026 10:08:40 +0000 (15:38 +0530)]
Merge pull request #69556 from VallariAg/refresh-network-cli

mgr/dashboard: Add "gw refresh_network" cmd

10 days agoMerge pull request #69396 from rhcs-dashboard/77298-fixing-EC-profile-creation-scroll copilot/research-boost-context-issue
Afreen Misbah [Mon, 22 Jun 2026 09:18:51 +0000 (14:48 +0530)]
Merge pull request #69396 from rhcs-dashboard/77298-fixing-EC-profile-creation-scroll

mgr/dashboard: Fix for EC profile creation modal scrollbar

Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Abhishek Desai <abhishek.desai1@ibm.com>
10 days agoMerge pull request #69161 from sunyuechi/wip-librbd-pwl-cancel-timer-before-perf...
Ilya Dryomov [Mon, 22 Jun 2026 08:11:59 +0000 (10:11 +0200)]
Merge pull request #69161 from sunyuechi/wip-librbd-pwl-cancel-timer-before-perf-stop

librbd/cache/pwl: cancel periodic_stats timer before perf_stop()

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
10 days agodoc/rados/operations: document the kernel-client min-compat holdout 69629/head
Kefu Chai [Mon, 22 Jun 2026 07:25:18 +0000 (15:25 +0800)]
doc/rados/operations: document the kernel-client min-compat holdout

A kernel CephFS or RBD mount can keep ``set-require-min-compat-client
reef`` from succeeding: the kernel client does not advertise the
pg-upmap-primary feature, so ``ceph features`` reports it as a luminous
client even when the daemons and every userspace client are newer.
ceph-fuse, libcephfs, and librbd advertise the full feature set and are
not affected.

Document this, and add a section on finding the holdout with
``ceph features`` and switching it to a userspace client.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
10 days agoqa/lsan.supp: suppress seastore reactor-teardown leaks 69621/head
Sun Yuechi [Mon, 22 Jun 2026 06:52:57 +0000 (14:52 +0800)]
qa/lsan.supp: suppress seastore reactor-teardown leaks

unittest-seastore runs the seastar reactor on a separate thread
(SeastarRunner) and stops it at exit without draining its pending
tasks, so a few cached extents those tasks still held are leaked at
shutdown. Suppress them by the three seastore subsystems they come from.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
10 days agoqa/lsan.supp: suppress still-reachable third-party leaks
Sun Yuechi [Mon, 22 Jun 2026 06:52:22 +0000 (14:52 +0800)]
qa/lsan.supp: suppress still-reachable third-party leaks

Several unittests fail LeakSanitizer on still-reachable allocations that
belong to third-party libraries, not to Ceph. These are boost.thread's
main-thread TLS, OpenSSL's one-time init (the ForkDeathTest children
_exit() before it is freed), and the cipher, DRBG and error-stack state
that OpenSSL and libcryptsetup keep behind the librbd encryption and
migration unittests. None get freed without OPENSSL_cleanup(), so suppress
them by their allocation entry points.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
10 days agovstart: load lsan/asan suppressions on WITH_ASAN builds
Sun Yuechi [Sun, 21 Jun 2026 08:42:54 +0000 (16:42 +0800)]
vstart: load lsan/asan suppressions on WITH_ASAN builds

AddCephTest.cmake runs unittests with
ASAN_OPTIONS/LSAN_OPTIONS=suppressions=qa/{asan,lsan}.supp, but vstart.sh
does not, so on a WITH_ASAN build `ceph-mon --mkfs` aborts on a still-reachable
leak that those suppressions cover and fails the "ceph API tests" job. Export
the same options when WITH_ASAN=ON.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
10 days agocmake: define BOOST_USE_UCONTEXT tree-wide under ASan 69622/head
Sun Yuechi [Sat, 20 Jun 2026 07:17:26 +0000 (15:17 +0800)]
cmake: define BOOST_USE_UCONTEXT tree-wide under ASan

Under WITH_ASAN Boost.Context is built ucontext-only, so consumers that
include its headers without linking Boost::context (e.g. libosd) were
still built for the fcontext backend and broke the link:

    mold: error: undefined symbol: boost::context::detail::make_fcontext

Define the backend tree-wide so every consumer agrees on it.

riscv64's ASan runtime mis-handles makecontext/swapcontext, so the
ucontext fiber backend reports false-positive heap-buffer-overflows on
fiber switch that can't be suppressed. So exclude it.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
10 days agoMerge pull request #69611 from sunyuechi/wip-boost-asan-context-impl-feature
Kefu Chai [Mon, 22 Jun 2026 05:24:08 +0000 (13:24 +0800)]
Merge pull request #69611 from sunyuechi/wip-boost-asan-context-impl-feature

cmake/boost: load context Jamfile before passing context-impl to b2

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
10 days agotest/encoding: probe `setarch -R` and drop the arch argument
Sun Yuechi [Sun, 21 Jun 2026 08:42:54 +0000 (16:42 +0800)]
test/encoding: probe `setarch -R` and drop the arch argument

readable.sh wraps ceph-dencoder with `setarch $(uname -m) -R` to disable
ASLR on ASan builds, but the arch-qualified form also sets the personality
to that arch, which fails where setarch can't (e.g. riscv64). Use bare
`setarch -R` to only clear ASLR, and probe it first so the script falls
back to running ceph-dencoder unwrapped.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
10 days agocrimson: build seastar with the default allocator under ASan
Sun Yuechi [Sun, 21 Jun 2026 08:42:54 +0000 (16:42 +0800)]
crimson: build seastar with the default allocator under ASan

With this build configured as RelWithDebInfo, seastar keeps its own
allocator instead of falling back to libc's. Under ASan that allocator
is called (via dlsym) before it is initialized and SIGSEGVs every
seastar/crimson unittest before main(). Define SEASTAR_DEFAULT_ALLOCATOR
under WITH_ASAN to keep seastar on the libc allocator.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
10 days agocmake: use the libc allocator for sanitizer builds
Sun Yuechi [Sun, 21 Jun 2026 16:14:55 +0000 (00:14 +0800)]
cmake: use the libc allocator for sanitizer builds

tcmalloc/jemalloc keep exporting the global operator new/delete even though
their malloc is shadowed by the sanitizer interceptor, so memory the sanitizer
allocated gets freed through tcmalloc and SIGSEGVs (e.g. seastar coroutine
frames). Force libc when WITH_ASAN is set.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
11 days agoMerge pull request #69577 from tchaikov/wip-debian-copyright
Kefu Chai [Sun, 21 Jun 2026 12:50:22 +0000 (20:50 +0800)]
Merge pull request #69577 from tchaikov/wip-debian-copyright

debian/copyright: silence old-fsf-address-in-copyright-file

Reviewed-by: Casey Bodley <cbodley@redhat.com>
11 days agoMerge pull request #69579 from tchaikov/wip-build-no-ci-in-package
Kefu Chai [Sun, 21 Jun 2026 07:25:09 +0000 (15:25 +0800)]
Merge pull request #69579 from tchaikov/wip-build-no-ci-in-package

debian,rpm: exclude CI directories from mgr plugin packages

Reviewed-by: John Mulligan <jmulligan@redhat.com>
11 days agoMerge pull request #69316 from sunyuechi/wip-tests-venv-system-site-packages
Kefu Chai [Sat, 20 Jun 2026 23:14:12 +0000 (07:14 +0800)]
Merge pull request #69316 from sunyuechi/wip-tests-venv-system-site-packages

test: optionally run test venvs with system site-packages

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
12 days agoMerge pull request #69600 from anthonyeleven/improve-onode
Anthony D'Atri [Sat, 20 Jun 2026 11:54:48 +0000 (07:54 -0400)]
Merge pull request #69600 from anthonyeleven/improve-onode

doc/rados/bluestore: Improve fast-onode-scan.rst

12 days agocmake/boost: load context Jamfile before passing context-impl to b2 69611/head
Sun Yuechi [Sat, 20 Jun 2026 02:53:51 +0000 (10:53 +0800)]
cmake/boost: load context Jamfile before passing context-impl to b2

With WITH_ASAN, b2 runs as `b2 context-impl=ucontext headers stage` for the
build step and `b2 context-impl=ucontext install` for the install step. The
`context-impl` feature is declared in libs/context/build/Jamfile.v2, which
neither the headers/stage nor the install targets load, so b2 aborts with:

    error: unknown feature "<context-impl>"

Name the context project as a target in both commands so its Jamfile (and the
feature) loads before the build request is expanded.

This works around https://github.com/boostorg/context/issues/297, fixed
upstream in
https://github.com/boostorg/context/commit/12ac945158ae3c2373ec0c888899373218aa209f
and first released in Boost 1.88; drop it once the bundled Boost is bumped to
1.88 or newer.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
12 days agotest/cmake: drop dead env_vars_for_tox_tests set_property 69316/head
Sun Yuechi [Sat, 20 Jun 2026 05:51:39 +0000 (13:51 +0800)]
test/cmake: drop dead env_vars_for_tox_tests set_property

Both `tox_tests` and `env_vars_for_tox_tests` have been undefined since
f0079a1030b, so this expands to `set_property(TEST PROPERTY ENVIRONMENT)`
-- a no-op. The actual per-test environment for tox tests is set in
add_tox_test() (cmake/modules/AddCephTest.cmake). Remove the leftover.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
12 days agomypy: skip follow_imports for prettytable
Sun Yuechi [Sun, 7 Jun 2026 14:19:08 +0000 (22:19 +0800)]
mypy: skip follow_imports for prettytable

With test venvs on system site-packages, mypy picks up the system
prettytable (3.4.0+, typed). It flags mgr's add_row(tuple) against the
list[Any] signature (src/mypy.ini) and qa's float_format = str against
the dict[str, str] property (qa/mypy.ini). Skip follow_imports in both.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
12 days agotest: optionally run test venvs with system site-packages
Sun Yuechi [Sat, 6 Jun 2026 18:05:34 +0000 (02:05 +0800)]
test: optionally run test venvs with system site-packages

Add a CEPH_PYTHON_SYSTEM_SITE switch (off by default). When set:

  - setup-virtualenv.sh builds its venv with --system-site-packages;
  - run_tox.sh exports VIRTUALENV_SYSTEM_SITE_PACKAGES=true for tox's venvs.

This lets distro packages satisfy test dependencies instead of pip building
them from sdist, which helps where prebuilt wheels are missing (e.g. scipy and
numpy on riscv64) by avoiding a slow rebuild when the RPMs are installed.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
12 days agoMerge pull request #69603 from sunyuechi/wip-mgr-tox-pytest-xdist
Kefu Chai [Sat, 20 Jun 2026 04:37:34 +0000 (12:37 +0800)]
Merge pull request #69603 from sunyuechi/wip-mgr-tox-pytest-xdist

mgr/tox: run pytest in parallel

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
12 days agoMerge pull request #69458 from ronen-fr/wip-rf-inc1406-crimson
Ronen Friedman [Sat, 20 Jun 2026 04:03:12 +0000 (07:03 +0300)]
Merge pull request #69458 from ronen-fr/wip-rf-inc1406-crimson

crimson,crimson/test: clean-up 'unused' warnings

Reviewed-by: Shraddha Agrawal <shraddhaag@ibm.com>
12 days agoMerge pull request #56537 from tchaikov/wip-cmake-enable-sanitizers 66135/head
Kefu Chai [Sat, 20 Jun 2026 01:24:42 +0000 (09:24 +0800)]
Merge pull request #56537 from tchaikov/wip-cmake-enable-sanitizers

script/run-make: enable ASan

Reviewed-by: Bill Scales <bill_scales@uk.ibm.com>
12 days agodoc/rados/bluestore: Improve fast-onode-scan.rst 69600/head
Anthony D'Atri [Fri, 19 Jun 2026 14:47:15 +0000 (10:47 -0400)]
doc/rados/bluestore: Improve fast-onode-scan.rst

Signed-off-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
13 days agocmake: make GTEST_PARALLEL_COMMAND visible to all test directories 69601/head
Sun Yuechi [Fri, 19 Jun 2026 06:38:10 +0000 (14:38 +0800)]
cmake: make GTEST_PARALLEL_COMMAND visible to all test directories

GTEST_PARALLEL_COMMAND was set as an ordinary variable inside the
`if(NOT TARGET gtest-parallel_ext)` guard, so it only existed in the
first directory that include()s AddCephTest (src/common/options). Later
includes skip the guarded block and leave it empty, so PARALLEL
unittests under src/test silently ran serially.

Promote it to CACHE INTERNAL so it is visible across all directories
regardless of include order.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
13 days agomgr/tox: run pytest in parallel 69603/head
Sun Yuechi [Thu, 18 Jun 2026 19:06:06 +0000 (03:06 +0800)]
mgr/tox: run pytest in parallel

The py3 and coverage tox environments run the full mgr pytest suite
serially, which makes run-tox-mgr the longest test in CI. Add
pytest-xdist and pass `-n auto` to both so the suite is distributed
across the available CPUs.

pytest-xdist is constrained to <2 to stay compatible with the pinned
pytest-cov. Running in parallel also surfaced a hard-coded port in
cephadm's test_node_proxy, which now allocates an ephemeral port per
process.

Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
13 days agoMerge pull request #69134 from cbodley/wip-rgw-multi-delete-op_ret
Casey Bodley [Fri, 19 Jun 2026 13:21:10 +0000 (09:21 -0400)]
Merge pull request #69134 from cbodley/wip-rgw-multi-delete-op_ret

rgw: use local error code in handle_individual_object()

Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
Reviewed-by: Mark Kogan <mkogan@redhat.com>
13 days agoMerge pull request #68840 from rapanigrahi/certmgr_smb
John Mulligan [Fri, 19 Jun 2026 12:50:37 +0000 (08:50 -0400)]
Merge pull request #68840 from rapanigrahi/certmgr_smb

mgr/cephadm: Support cephadm certmgr with SMB/TLS configuration

Reviewed-by: John Mulligan <jmulligan@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
13 days agorocksdb: update submodule to fix FTBFS due to missing <cstdint> 69596/head
Kefu Chai [Fri, 19 Jun 2026 11:20:09 +0000 (19:20 +0800)]
rocksdb: update submodule to fix FTBFS due to missing <cstdint>

59afb3d6 bumped rocksdb submodule in hope to address the FTBFS failure
when building rocksdb with GCC 16, but the tree still failed to build:

```
In file included from /ceph/src/rocksdb/include/rocksdb/trace_record_result.h:14,
                 from /ceph/src/rocksdb/trace_replay/trace_record_result.cc:6:
/ceph/src/rocksdb/include/rocksdb/trace_record.h:55:32: error: expected ')' before 'timestamp'
   55 |   explicit TraceRecord(uint64_t timestamp);
      |                       ~        ^~~~~~~~~~
      |                                )
/ceph/src/rocksdb/include/rocksdb/trace_record.h:63:11: error: 'uint64_t' does not name a type
   63 |   virtual uint64_t GetTimestamp() const;
      |           ^~~~~~~~
/ceph/src/rocksdb/include/rocksdb/trace_record.h:1:1: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
```

in this change, we cherry-pick upstream fix to address this build
failure.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
13 days agoscript/run-make: enable ASan 56537/head
Kefu Chai [Sun, 17 Mar 2024 10:42:44 +0000 (18:42 +0800)]
script/run-make: enable ASan

when performing tests, we should enable sanitizers for detecting
potential issues. so, in this change, we enable ASsan, TSan and
UBSan.

script/run-make.sh is used by our CI job for testing PRs, so
enabling these sanitizers helps us to identify issues as early as
possible. because ASan cannot be used along with TSan, we prefer
using ASan for capturing memory related issue in favor of
detecting the multi-threading issues.

also, because of https://bugs.llvm.org/show_bug.cgi?id=23272, we
cannot enable multiple sanitizers. but we should enable UBSan as well,
once we can use a higher version of Clang than Clang-14. with
Clang-14, when enabling UBSan, we'd have following FTBFS
```
error: Cannot represent a difference across sections
```
when compiling `src/tools/neorados.cc`

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
13 days agoMerge pull request #69457 from tchaikov/wip-test-objectstore-fix-leaks
Kefu Chai [Fri, 19 Jun 2026 11:03:14 +0000 (19:03 +0800)]
Merge pull request #69457 from tchaikov/wip-test-objectstore-fix-leaks

test/objectstore: hold split_blob cache shards in unique_ptr

Reviewed-by: Adam Kupczyk <akupczyk@ibm.com>
13 days agoMerge pull request #69373 from mheler/wip-rgw-restore-queue-shard-fix
Soumya Koduri [Fri, 19 Jun 2026 10:57:00 +0000 (16:27 +0530)]
Merge pull request #69373 from mheler/wip-rgw-restore-queue-shard-fix

rgw/restore: run shard hash through HASH_PRIME

Reviewed-by: Soumya Koduri <skoduri@redhat.com>
13 days agoMerge pull request #68613 from tchaikov/wip-test-journal-fix-use-after-free
Ilya Dryomov [Fri, 19 Jun 2026 09:42:42 +0000 (11:42 +0200)]
Merge pull request #68613 from tchaikov/wip-test-journal-fix-use-after-free

journal/ObjectPlayer: don't acquire locks in destructor

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
13 days agoMerge pull request #68161 from abitdrag/wip-miki-image-prim-snap-removal
Ilya Dryomov [Fri, 19 Jun 2026 09:38:14 +0000 (11:38 +0200)]
Merge pull request #68161 from abitdrag/wip-miki-image-prim-snap-removal

rbd-mirror: prune obsolete primary mirror snapshots after relocation

Reviewed-by: Ramana Raja <rraja@redhat.com>
Reviewed-by: VinayBhaskar-V <vvarada@redhat.com>
Reviewed-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
13 days agoMerge pull request #69531 from xiubli/lazyio
Venky Shankar [Fri, 19 Jun 2026 04:02:53 +0000 (09:32 +0530)]
Merge pull request #69531 from xiubli/lazyio

common/options: mark client_force_lazyio as not runtime updatable

Reviewed-by: Venky Shankar <vshankar@redhat.com>
13 days agoMerge pull request #69090 from rhcs-dashboard/76795-support-wildcard-sans
naman munet [Fri, 19 Jun 2026 03:44:00 +0000 (09:14 +0530)]
Merge pull request #69090 from rhcs-dashboard/76795-support-wildcard-sans

mgr/dashboard : Support wildcard sans and zonegroup hostnames

Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Abhishek Desai <abhishek.desai1@ibm.com>
Reviewed-by: Naman Munet <nmunet@redhat.com>
13 days agoMerge pull request #69414 from Adarsha1999/teuthology-smoke-log-ignorelist
Ilya Dryomov [Thu, 18 Jun 2026 22:30:09 +0000 (00:30 +0200)]
Merge pull request #69414 from Adarsha1999/teuthology-smoke-log-ignorelist

qa/smoke/basic: add log-ignorelist entries for expected smoke test warnings

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 weeks agoMerge pull request #69474 from sunyuechi/wip-rgw-a-declare-schedulers-kmip-deps
Casey Bodley [Thu, 18 Jun 2026 17:34:29 +0000 (13:34 -0400)]
Merge pull request #69474 from sunyuechi/wip-rgw-a-declare-schedulers-kmip-deps

rgw: declare rgw_a's dependency on rgw_schedulers and kmip

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2 weeks agoMerge pull request #69393 from rhcs-dashboard/wip-rgw-roles-account-scoping
naman munet [Thu, 18 Jun 2026 17:08:25 +0000 (22:38 +0530)]
Merge pull request #69393 from rhcs-dashboard/wip-rgw-roles-account-scoping

mgr/dashboard: align RGW role management with Carbon and fix API routing

Reviewed-by: Naman Munet <nmunet@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Sagar Gopale <sagar.gopale@ibm.com>
2 weeks agoqa/smoke/basic: add log-ignorelist entries for expected smoke test warnings 69414/head
Adarsha Dinda [Thu, 11 Jun 2026 11:11:51 +0000 (16:41 +0530)]
qa/smoke/basic: add log-ignorelist entries for expected smoke test warnings

Ignore FS_DEGRADED in libcephfs_interface_tests and MON_DOWN in
rbd_python_api_tests to avoid false failures from transient cluster health
messages.

Signed-off-by: Adarsha Dinda <adarshadinda@Adarshas-MacBook-Pro.local>
2 weeks agomgr/dashboard : Support wildcard sans and zonegroup hostnames 69090/head
Abhishek Desai [Tue, 26 May 2026 07:48:40 +0000 (13:18 +0530)]
mgr/dashboard : Support wildcard sans and zonegroup hostnames
fixes : https://tracker.ceph.com/issues/76795
Signed-off-by: Abhishek Desai <abhishek.desai1@ibm.com>
2 weeks agopython-common/ceph/smb: Add smb features constants for SSL 68840/head
Rabinarayan Panigrahi [Thu, 18 Jun 2026 11:45:01 +0000 (17:15 +0530)]
python-common/ceph/smb: Add smb features constants for SSL

Add smb constants to support for ca_certificate validation and string
alteration

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
2 weeks agomgr/cephadm: Registering smb features for ssl certificate with certmgr
Rabinarayan Panigrahi [Mon, 15 Jun 2026 19:10:58 +0000 (00:40 +0530)]
mgr/cephadm: Registering smb features for ssl certificate with certmgr

Here we are registering smb features such remote_control and keybridge
with certificate manager and can be list with ceph orch certmgr bindings
ls

Signed-off-by: Avan Thakkar <athakkar@redhat.com>
Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
2 weeks agomgr/cephadm/services: Add supported function for ssl certificates
Rabinarayan Panigrahi [Sun, 31 May 2026 17:32:11 +0000 (23:02 +0530)]
mgr/cephadm/services: Add supported function for ssl certificates

Added function for get smb features TLSCredentials using _get_feature_certs

Added function _get_certificates_from_spec_ssl_certificates to get the
certificates for ssl_certificates

Updating features ssl certificates to default path of containers

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
2 weeks agolibrbd/cache/pwl: cancel periodic_stats timer before perf_stop() 69161/head
Sun Yuechi [Fri, 29 May 2026 08:35:26 +0000 (16:35 +0800)]
librbd/cache/pwl: cancel periodic_stats timer before perf_stop()

AbstractWriteLog::shut_down() calls perf_stop(), which deletes
m_perfcounter, but the 5s periodic_stats timer is only canceled later
in the destructor. If it fires in between, periodic_stats ->
update_image_cache_state dereferences the freed m_perfcounter. Cancel
the timer under m_timer_lock first.

Destroying an AbstractWriteLog that was init()'ed without a matching
shut_down() is illegal, so the cancel_event() in the destructor is now
redundant and is dropped.

Fixes: https://tracker.ceph.com/issues/77501
Signed-off-by: Sun Yuechi <sunyuechi@iscas.ac.cn>
2 weeks agoMerge pull request #69555 from djgalloway/wip-pulp-container
David Galloway [Thu, 18 Jun 2026 14:19:59 +0000 (10:19 -0400)]
Merge pull request #69555 from djgalloway/wip-pulp-container

Containerfile: Support pulp repo URLs

2 weeks agoceph.spec.in: exclude CI and test directories from mgr plugin packages 69579/head
Kefu Chai [Thu, 18 Jun 2026 14:06:43 +0000 (22:06 +0800)]
ceph.spec.in: exclude CI and test directories from mgr plugin packages

The ceph-mgr-dashboard and ceph-mgr-rook packages install their entire
mgr module directory, which includes a ci/ subdirectory containing
Dockerfiles, e2e test scripts, and cluster specs used only for upstream
CI pipelines.  ceph-mgr-cephadm similarly ships a tests/ directory with
Python unit tests.  These files have no runtime purpose on a deployed
system and should not be shipped in the binary packages.

Exclude mgr/cephadm/tests, mgr/dashboard/ci, and mgr/rook/ci via
%exclude directives.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
2 weeks agodebian/rules: exclude CI and test directories from mgr plugin packages
Kefu Chai [Thu, 18 Jun 2026 14:06:36 +0000 (22:06 +0800)]
debian/rules: exclude CI and test directories from mgr plugin packages

The ceph-mgr-dashboard and ceph-mgr-rook packages install their entire
mgr module directory, which includes a ci/ subdirectory containing
Dockerfiles, e2e test scripts, and cluster specs used only for upstream
CI pipelines.  ceph-mgr-cephadm similarly ships a tests/ directory with
Python unit tests.  These files have no runtime purpose on a deployed
system and should not be shipped in the binary packages.

Exclude mgr/cephadm/tests, mgr/dashboard/ci, and mgr/rook/ci via
dh_install --exclude.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
2 weeks agoMerge pull request #69425 from cbodley/wip-76995
Casey Bodley [Thu, 18 Jun 2026 14:10:59 +0000 (10:10 -0400)]
Merge pull request #69425 from cbodley/wip-76995

Reapply "qa/rgw/crypt: disable failing kmip testing"

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
2 weeks agomgr/cephadm: add ca_cert_required parameter to get_certificates mock in test
Rabinarayan Panigrahi [Sun, 31 May 2026 16:39:09 +0000 (22:09 +0530)]
mgr/cephadm: add ca_cert_required parameter to get_certificates mock in test

Add the ca_cert_required parameter to the lambda function mocking
CephadmService.get_certificates in test_prometheus_config_security_enabled
to match the updated method signature.

This ensures the test mock properly handles the new parameter that was
added to the get_certificates method.

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
2 weeks agodoc/cephadm: Add SMB TLS/SSL configuration and examples
Rabinarayan Panigrahi [Sun, 10 May 2026 07:31:22 +0000 (13:01 +0530)]
doc/cephadm: Add SMB TLS/SSL configuration and examples

Add SMB TLS/SSL configuration with example for SMB features
remote_control and keybridge

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
2 weeks agomgr/cephadm: Add test case from smb spec and validating functionality
Rabinarayan Panigrahi [Fri, 8 May 2026 12:38:52 +0000 (18:08 +0530)]
mgr/cephadm: Add test case from smb spec and validating functionality
with test

Here we have added a test case to test_smb.py to validate functionality
of certificate manager after apply certificates.

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
2 weeks agomgr/cephadm: Test case are updated to validate for ssl certificate for
Rabinarayan Panigrahi [Fri, 8 May 2026 07:38:22 +0000 (13:08 +0530)]
mgr/cephadm: Test case are updated to validate for ssl certificate for
smb services

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
2 weeks agomgr/smb: Add ssl_certificates buffer for smb features
Rabinarayan Panigrahi [Fri, 8 May 2026 05:34:39 +0000 (11:04 +0530)]
mgr/smb: Add ssl_certificates buffer for smb features

Add ssl_certificates buffer for smb features like remote_control
and keybridge. when certificate applied it stores as a feature
name and SSLParameters as value where SSLParameters holds cert,
key and ca-cert.

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
2 weeks agomgr/smb: Add is_feature_enabled function to resource class
Rabinarayan Panigrahi [Fri, 8 May 2026 05:33:06 +0000 (11:03 +0530)]
mgr/smb: Add is_feature_enabled function to resource class

This funality added to find if feature like remote_control
and keybride is enable.

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
2 weeks agomgr/cephadm: Add function to get ssl certificate from ssl_certificates
Rabinarayan Panigrahi [Fri, 8 May 2026 05:28:09 +0000 (10:58 +0530)]
mgr/cephadm: Add function to get ssl certificate from ssl_certificates

A function is added _get_certificates_from_spec_ssl_certificates to get
certificates from ssl_certificates buffer. it returns TLSCredentials from
SSLParameters of ssl_certificates[feature]

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
2 weeks agoceph/deployment: Adding smb to REQUIRES_CERTIFICATES list
Rabinarayan Panigrahi [Wed, 29 Apr 2026 01:56:23 +0000 (07:26 +0530)]
ceph/deployment: Adding smb to REQUIRES_CERTIFICATES list

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
2 weeks agomgr/cephadm: Add function all to get ssl certificates
Rabinarayan Panigrahi [Wed, 29 Apr 2026 01:10:12 +0000 (06:40 +0530)]
mgr/cephadm: Add function all to get ssl certificates

A function call added to get ssl certificates from ssl_certificates
buffer. it returns TLSCredentials:

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
2 weeks agoceph/deployment: Adding class SSLParameters for storing cert, key
Rabinarayan Panigrahi [Fri, 24 Apr 2026 10:47:40 +0000 (16:17 +0530)]
ceph/deployment: Adding class SSLParameters for storing cert, key
and ca-cert for ssl and other features

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
2 weeks agomgr/dashboard: align RGW role management with Carbon and fix API routing 69393/head
Sagar Gopale [Wed, 10 Jun 2026 13:29:50 +0000 (18:59 +0530)]
mgr/dashboard: align RGW role management with Carbon and fix API routing

Fixes: https://tracker.ceph.com/issues/77328
Signed-off-by: Sagar Gopale <sagar.gopale@ibm.com>
2 weeks agodebian/copyright: silence old-fsf-address-in-copyright-file 69577/head
Kefu Chai [Thu, 18 Jun 2026 12:31:13 +0000 (20:31 +0800)]
debian/copyright: silence old-fsf-address-in-copyright-file

in order to silence the warnings like:

```
W: rbd-nbd: old-fsf-address-in-copyright-file
```

let's refere to the email address of FSF, instead of its old postal
address.

See https://lintian.debian.org/tags/old-fsf-address-in-copyright-file.html

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
2 weeks agoMerge pull request #69573 from rhcs-dashboard/fixe2e
Nizamudeen A [Thu, 18 Jun 2026 12:01:46 +0000 (17:31 +0530)]
Merge pull request #69573 from rhcs-dashboard/fixe2e

mgr/dashboard: fix daemon e2e

Reviewed-by: Nizamudeen A <nia@redhat.com>
2 weeks agojournal/ObjectPlayer: don't acquire locks in destructor 68613/head
Kefu Chai [Sun, 14 Jun 2026 06:52:00 +0000 (14:52 +0800)]
journal/ObjectPlayer: don't acquire locks in destructor

~ObjectPlayer took m_timer_lock only to assert two invariants. but that
lock is borrowed by reference from the caller's SafeTimer, and an
ObjectPlayer can outlive it: a C_Fetch/C_WatchFetch completion on the
librados finisher may hold the last reference and run ~ObjectPlayer after
the timer and its lock are already gone. re-taking the freed lock is a
heap-use-after-free, which unittest_journal hits on arm64 under ASan:

  ==ERROR: AddressSanitizer: heap-use-after-free
    journal::ObjectPlayer::~ObjectPlayer  ObjectPlayer.cc:63
    journal::ObjectPlayer::C_WatchFetch::~C_WatchFetch
    journal::ObjectPlayer::C_Fetch::finish

the lock isn't needed though: at refcount 0 the watch has been cancelled
(m_watch_ctx == nullptr, asserted below) so no timer task references us, and
no fetch is in flight since a pending fetch holds a reference. nothing else
can touch our state. Furthermore, we can also skip acquiring `m_lock` as
well, because, in the destructor, it shouldn't really matter -- if one
of these asserts fails because the execution of the destructor races
with some `ObjectPlayer` mthod, we would get what the `assert()` was
added for. They are here to catch bugs and such a race just being
possible is a bug in itself.

Fixes: https://tracker.ceph.com/issues/77496
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
2 weeks agoMerge pull request #68978 from mheler/mon-backup
mheler [Thu, 18 Jun 2026 10:11:13 +0000 (05:11 -0500)]
Merge pull request #68978 from mheler/mon-backup

mon: implement mon backup mechanism

2 weeks agoMerge pull request #69521 from sunyuechi/warnings-cephfs-int32
Kefu Chai [Thu, 18 Jun 2026 08:17:10 +0000 (16:17 +0800)]
Merge pull request #69521 from sunyuechi/warnings-cephfs-int32

pybind/cephfs: drop redundant int32_t typedef

Reviewed-by: Rishabh Dave <ridave@redhat.com>
Reviewed-by: Kefu Chai <k.chai@proxmox.com>
2 weeks agomgr/dashboard: fix daemon e2e 69573/head
Naman Munet [Thu, 18 Jun 2026 08:04:55 +0000 (13:34 +0530)]
mgr/dashboard: fix daemon e2e

fixes: https://tracker.ceph.com/issues/77489

Signed-off-by: Naman Munet <naman.munet@ibm.com>
2 weeks agomgr/dashboard: Add "gw refresh_network" cmd 69556/head
Vallari Agrawal [Tue, 16 Jun 2026 14:38:29 +0000 (20:08 +0530)]
mgr/dashboard: Add "gw refresh_network" cmd

Fixes: https://tracker.ceph.com/issues/77442
Signed-off-by: Vallari Agrawal <vallari.agrawal@ibm.com>
2 weeks agoMerge pull request #69076 from xxhdx1985126/wip-seastore-paddr-cross-coroutine-fix
Matan Breizman [Thu, 18 Jun 2026 07:27:38 +0000 (10:27 +0300)]
Merge pull request #69076 from xxhdx1985126/wip-seastore-paddr-cross-coroutine-fix

crimson/os/seastore/lba, TM: prevent of the users of LBACursor/LBAMapping from pass the paddr/lba_map_val_t across the boundaries of coroutines

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
2 weeks agocommon/options: mark client_force_lazyio as not runtime updatable 69531/head
Xiubo Li [Wed, 17 Jun 2026 01:14:43 +0000 (09:14 +0800)]
common/options: mark client_force_lazyio as not runtime updatable

The client_force_lazyio option is currently marked as supporting
runtime updates in the configuration schema, but this is misleading.

The value is read once during each file open/create and stored in
the file flags. There is no config observer registered to handle
dynamic updates, and there is no logic to propagate changes to the
already opened file handles.

This patch adds the NO_RUNTIME flag to the option definition to
correctly reflect reality.

Fixes: https://tracker.ceph.com/issues/77451
Signed-off-by: Xiubo Li <xiubo.li@clyso.com>
2 weeks agoMerge pull request #69074 from kotreshhr/mirror-metrics-counter-dump
Kotresh HR [Thu, 18 Jun 2026 04:10:55 +0000 (09:40 +0530)]
Merge pull request #69074 from kotreshhr/mirror-metrics-counter-dump

tools/cephfs_mirror: Expose Mirror metrics via asok counter dump

Reviewed-by: Venky Shankar <vshankar@redhat.com>
2 weeks agomon: add monitor RocksDB backup and restore 68978/head
Matthew N. Heler [Mon, 18 May 2026 01:57:01 +0000 (20:57 -0500)]
mon: add monitor RocksDB backup and restore

Implements an opt-in backup mechanism for the monitor using
rocksdb::BackupEngine. Backups run on a schedule when
mon_backup_interval is set, or are triggered manually via
`ceph tell mon.* backup`. Cleanup keeps the last N, hourly,
and daily snapshots, with a free-space guard. Off by default.

Restore is offline: stop the mon and run
  ceph-mon --restore-backup <dir> --yes-i-really-mean-it
optionally with --backup-version (BackupEngine logical version,
as shown by --list-backups). The mon keyring is stashed alongside
the RocksDB backup so a wiped mon_data is recovered end-to-end,
and kv_backend is stamped back when missing.

Co-authored-by: Daniel Poelzleithner <poelzleithner@b1-systems.de>
Signed-off-by: Matthew N. Heler <matthew.heler@hotmail.com>
2 weeks agoContainerfile: Support pulp repo URLs 69554/head 69555/head
David Galloway [Wed, 17 Jun 2026 12:53:12 +0000 (08:53 -0400)]
Containerfile: Support pulp repo URLs

Signed-off-by: David Galloway <david.galloway@ibm.com>
2 weeks agocrimson,crimson/test: clean-up 'unused' warnings 69458/head
Ronen Friedman [Sun, 14 Jun 2026 09:19:20 +0000 (09:19 +0000)]
crimson,crimson/test: clean-up 'unused' warnings

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
2 weeks agoMerge pull request #69511 from VallariAg/wip-update-submodule-182
Vallari Agrawal [Wed, 17 Jun 2026 15:44:50 +0000 (21:14 +0530)]
Merge pull request #69511 from VallariAg/wip-update-submodule-182

mgr/dashboard: bump nvmeof submodule to 1.8.2

2 weeks agoMerge pull request #69356 from eameh-LF/wip-doc-77200
Ilya Dryomov [Wed, 17 Jun 2026 14:21:28 +0000 (16:21 +0200)]
Merge pull request #69356 from eameh-LF/wip-doc-77200

doc: Replace Python 2 package names with Python 3 equivalents

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2 weeks agoMerge pull request #69275 from fultheim/seastore-io-wakeup
Matan Breizman [Wed, 17 Jun 2026 13:56:01 +0000 (16:56 +0300)]
Merge pull request #69275 from fultheim/seastore-io-wakeup

crimson/os/seastore: wake blocked IO on BackgroundProcess wakeup

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
2 weeks agoMerge pull request #67141 from BBoozmen/wip-oozmen-74677
Oguzhan Ozmen [Wed, 17 Jun 2026 13:52:19 +0000 (09:52 -0400)]
Merge pull request #67141 from BBoozmen/wip-oozmen-74677

rgw/multisite: Balance sync traffic across DNS-resolved backends using CURLOPT_CONNECT_TO

2 weeks agoMerge pull request #69355 from eameh-LF/wip-doc-77208
eameh-LF [Wed, 17 Jun 2026 13:25:50 +0000 (14:25 +0100)]
Merge pull request #69355 from eameh-LF/wip-doc-77208

doc: Remove empty README.md and relocate nvmeof HA design doc

2 weeks agoMerge pull request #69354 from eameh-LF/wip-doc-77206
eameh-LF [Wed, 17 Jun 2026 13:25:27 +0000 (14:25 +0100)]
Merge pull request #69354 from eameh-LF/wip-doc-77206

doc/security: Add Security Lead and Working Group pages to toctree

2 weeks agodoc/install: Update mirrors.rst to use https and current release 69357/head
Emmanuel Ameh [Tue, 9 Jun 2026 12:21:38 +0000 (13:21 +0100)]
doc/install: Update mirrors.rst to use https and current release

All mirror URLs used insecure http://. Update to https://. The example
repository paths used debian-hammer and rpm-hammer (Hammer was EOL in
2016); update to the current stable release (tentacle). Also update
the GitHub mirroring link from the stale master branch to main.

Fixes: https://tracker.ceph.com/issues/77197
Signed-off-by: Emmanuel Ameh <eameh@contractor.linuxfoundation.org>
2 weeks agodoc: Replace Python 2 package names with Python 3 equivalents 69356/head
Emmanuel Ameh [Tue, 9 Jun 2026 12:19:27 +0000 (13:19 +0100)]
doc: Replace Python 2 package names with Python 3 equivalents

librados-intro.rst referenced ``python-rados`` for CentOS/RHEL.
rbd-openstack.rst referenced ``python-rbd`` for both apt and yum.
Python 2 reached end-of-life in January 2020; these package names
install the Python 2 bindings (or fail entirely) on current distros.
Replace with the correct Python 3 package names: python3-rados and
python3-rbd.

Fixes: https://tracker.ceph.com/issues/77200
Signed-off-by: Emmanuel Ameh <eameh@contractor.linuxfoundation.org>
2 weeks agoMerge pull request #65286 from pritha-srivastava/wip-rgw-d4n-mem-leak
Samarah Uriarte [Wed, 17 Jun 2026 13:05:20 +0000 (08:05 -0500)]
Merge pull request #65286 from pritha-srivastava/wip-rgw-d4n-mem-leak

rgw/d4n: deleting LFUDAEntry and LFUDAObjEntry instances

Reviewed-by: Mark Kogan <mkogan@redhat.com>
Reviewed-by: Gal Salomon <gsalomon@redhat.com>
2 weeks agorbd-mirror: prune obsolete primary mirror snapshots after relocation 68161/head
Miki Patel [Sun, 19 Apr 2026 06:29:40 +0000 (11:59 +0530)]
rbd-mirror: prune obsolete primary mirror snapshots after relocation

Previously, obsolete primary and demoted primary snapshots on the
secondary cluster were not cleaned up immediately after relocation.
Instead, old primary snapshots remained until a subsequent promote
operation triggered their cleanup, while old demoted primary snapshots
persisted until a later demote operation removed them.

Adding changes for proactive cleanup of obsolete primary and demoted
primary snapshots that are no longer required after relocation.

Also adding test coverage to validate the cleanup behavior.

Fixes: https://tracker.ceph.com/issues/76154
Signed-off-by: Miki Patel <miki.patel132@gmail.com>