]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
8 weeks agocrimson/os/seastore: mkfs_managers() into coroutines 64812/head
Matan Breizman [Wed, 30 Jul 2025 15:10:48 +0000 (15:10 +0000)]
crimson/os/seastore: mkfs_managers() into coroutines

* txn is now created only once and not in each repeated
  iteration as before, with_repeat_trans_intr will reset the txn
  if needed.

* in order for us to return a seastar::future, we would have to handle
  each and every errorator. Instead, change the return value to
  errorator and let the caller handle the error.

* The lambda which is passed to with_trans_intr returns mkfs_iertr
  since this is an extended version of base_iertr.
  Introduce a mkfs_ertr for the reason above. Future commits would
  unify the new mkfs_ertr with seastore_mkfs_ertr.

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/os/seastore: cleanup final base_ertr users
Matan Breizman [Sun, 10 Aug 2025 12:46:17 +0000 (12:46 +0000)]
crimson/os/seastore: cleanup final base_ertr users

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/os/seastore: introduce with_repeat_trans_intr
Matan Breizman [Mon, 4 Aug 2025 10:54:34 +0000 (10:54 +0000)]
crimson/os/seastore: introduce with_repeat_trans_intr

Most of with_trans_intr use repeat_eagain so it makes sense to introduce
this wrapper and audit exisitng users (future PR).

Note: each repeated iteration should use a fresh txn if we failed
in-flight.

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/os/seastore/transaction: Cleanup journal_seq_t users
Matan Breizman [Mon, 4 Aug 2025 10:48:54 +0000 (10:48 +0000)]
crimson/os/seastore/transaction: Cleanup journal_seq_t users

Seems like to logic is moved here:
```
  last_commit = start_seq;

  apply_backref_byseq(t.move_backref_entries(), start_seq);
  commit_backref_entries(std::move(backref_entries), start_seq);
```

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/os/seastore/transaction_interruptor: include transaction.h
Matan Breizman [Mon, 4 Aug 2025 10:31:19 +0000 (10:31 +0000)]
crimson/os/seastore/transaction_interruptor: include transaction.h

With the new design, only transaction_interruptor would include
transaction in order to use its methods (is_conflicted and future
commits)

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/os/seastore/transaction: fix circular dependency
Matan Breizman [Mon, 4 Aug 2025 10:28:46 +0000 (10:28 +0000)]
crimson/os/seastore/transaction: fix circular dependency

transaction_interruptor includes transaction and vice verca.
With the previous commits in this PR, we can not drop transaction
from including transaction_interruptor.

* move interrupt_cond_t to transaction_interruptor.

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/os/seastore/btree/fixed_kv_btree: use common base_ertr
Matan Breizman [Mon, 4 Aug 2025 10:16:59 +0000 (10:16 +0000)]
crimson/os/seastore/btree/fixed_kv_btree: use common base_ertr

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/os/seastore/backref/btree_backref_manager: use common base_ertr
Matan Breizman [Mon, 4 Aug 2025 10:11:47 +0000 (10:11 +0000)]
crimson/os/seastore/backref/btree_backref_manager: use common base_ertr

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/os/seastore/object_data_handler: use base_iertr
Matan Breizman [Sun, 10 Aug 2025 10:54:44 +0000 (10:54 +0000)]
crimson/os/seastore/object_data_handler: use base_iertr

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/seastore/async: Use common base_ertr and base_iertr
Matan Breizman [Mon, 4 Aug 2025 10:06:36 +0000 (10:06 +0000)]
crimson/seastore/async: Use common base_ertr and base_iertr

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/os/seastore/onode_manager: use common base_iertr
Matan Breizman [Mon, 4 Aug 2025 08:27:28 +0000 (08:27 +0000)]
crimson/os/seastore/onode_manager: use common base_iertr

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/os/seastore/cache: remove Cache::base_ertr and iertr
Matan Breizman [Mon, 4 Aug 2025 08:23:45 +0000 (08:23 +0000)]
crimson/os/seastore/cache: remove Cache::base_ertr and iertr

Use the common declarations instead

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/os/seastore/seastore_types: introduce base_ertr
Matan Breizman [Mon, 4 Aug 2025 08:09:43 +0000 (08:09 +0000)]
crimson/os/seastore/seastore_types: introduce base_ertr

Instead of decalring base_ertr and base_iertr in every file or
class that use them -
* Move base_ertr decleration to the common seastore_types header.
  Note: the price for that is including errorator in seastore_types
        though this seems reasonable considering the benefits.
* Move base_iertr to transaction_interruptor where trans_iertr
  is defined.

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agocrimson/os/seastore/cached_extent: remove transaction_interruptor
Matan Breizman [Mon, 4 Aug 2025 07:33:13 +0000 (07:33 +0000)]
crimson/os/seastore/cached_extent: remove transaction_interruptor

da5e195cb4d8c2e2299ab86da156e98cda16496b added transaction_interruptor
but its no longer needed. Revert the relevant changes.

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agoMerge pull request #64714 from chanyoung/fix-rebalancing-assertion
Matan Breizman [Sun, 10 Aug 2025 08:33:16 +0000 (11:33 +0300)]
Merge pull request #64714 from chanyoung/fix-rebalancing-assertion

crimson/.../linked_tree_node: fix pivot_idx assertion in balancing

Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
8 weeks agoMerge pull request #64810 from chanyoung/faster-seastore-ut
Matan Breizman [Sun, 10 Aug 2025 08:05:28 +0000 (11:05 +0300)]
Merge pull request #64810 from chanyoung/faster-seastore-ut

test/crimson/seastore/CMakeLists: tune ASan's UAR fake stack size

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
8 weeks agoMerge pull request #62513 from xxhdx1985126/wip-seastore-transaction-manager-iterator
Matan Breizman [Sun, 10 Aug 2025 08:03:42 +0000 (11:03 +0300)]
Merge pull request #62513 from xxhdx1985126/wip-seastore-transaction-manager-iterator

crimson/os/seastore: LBACursor based LBAManager/TM interfaces and the related ObjectDataHandler refactor

Reviewed-by: Samuel Just <sjust@redhat.com>
8 weeks agoMerge pull request #64522 from chanyoung/cleanup-test-variable-sizes
Matan Breizman [Sun, 10 Aug 2025 07:59:04 +0000 (10:59 +0300)]
Merge pull request #64522 from chanyoung/cleanup-test-variable-sizes

test/crimson/seastore/test_omap_manager: redesign test variable sizes

Reviewed-by: Samuel Just <sjust@redhat.com>
8 weeks agoMerge pull request #64779 from baum/create_dev_dsa
baum [Sun, 10 Aug 2025 07:14:12 +0000 (10:14 +0300)]
Merge pull request #64779 from baum/create_dev_dsa

nvmeof: create /dev/dsa if DSA acceleration is enabled and the device is missing

8 weeks agonvmeof: create /dev/dsa if DSA acceleration is enabled and the device doesn't exist 64779/head
Alexander Indenbaum [Thu, 31 Jul 2025 15:33:36 +0000 (18:33 +0300)]
nvmeof: create /dev/dsa if DSA acceleration is enabled and the device doesn't exist

Signed-off-by: Alexander Indenbaum <aindenba@redhat.com>
8 weeks agoMerge pull request #64713 from baum/nvmeof_mon_client_connect_panic
baum [Sat, 9 Aug 2025 17:56:34 +0000 (20:56 +0300)]
Merge pull request #64713 from baum/nvmeof_mon_client_connect_panic

src/nvmeof/NVMeofGwMonitorClient: connect panic

8 weeks agoMerge pull request #64614 from shreya-subramanian/benchmarking_clean_pg_rgw
Samuel Just [Fri, 8 Aug 2025 23:14:12 +0000 (16:14 -0700)]
Merge pull request #64614 from shreya-subramanian/benchmarking_clean_pg_rgw

crimson-store-bench: add utility for measuring IO patterns against crimson FuturizedStore

Reviewed-by: Samuel Just <sjust@redhat.com>
8 weeks agoMerge pull request #64710 from rhcs-dashboard/table-re-render-fix
afreen23 [Fri, 8 Aug 2025 16:33:12 +0000 (22:03 +0530)]
Merge pull request #64710 from rhcs-dashboard/table-re-render-fix

mgr/dashboard: fix table dom re-rendering

Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: Naman Munet <nmunet@redhat.com>
8 weeks agoMerge pull request #64586 from afreen23/eol
afreen23 [Fri, 8 Aug 2025 12:38:07 +0000 (18:08 +0530)]
Merge pull request #64586 from afreen23/eol

mgr/dashboard; setup husky

Reviewed-by: Naman Munet <nmunet@redhat.com>
8 weeks agomgr/dashboard: fix table dom re-rendering 64710/head
Nizamudeen A [Mon, 28 Jul 2025 08:22:36 +0000 (13:52 +0530)]
mgr/dashboard: fix table dom re-rendering

each table refresh creates a new data or update the existing data. this
causes the existing data to be completely replaced with a newer one and
thereby loosing the trackBy functionality. So I am modifying the data
in-place so that the memory reference doesn't get changed

Fixes: https://tracker.ceph.com/issues/72491
Signed-off-by: Nizamudeen A <nia@redhat.com>
8 weeks agoMerge pull request #64634 from rhcs-dashboard/fix-skeleton-loader-table
Nizamudeen A [Fri, 8 Aug 2025 09:52:49 +0000 (15:22 +0530)]
Merge pull request #64634 from rhcs-dashboard/fix-skeleton-loader-table

mgr/dashboard: fix table loading while fetching data

8 weeks agoMerge pull request #64876 from zdover23/wip-doc-2025-08-07-cephfs-troubleshooting-2
Zac Dover [Fri, 8 Aug 2025 06:19:07 +0000 (16:19 +1000)]
Merge pull request #64876 from zdover23/wip-doc-2025-08-07-cephfs-troubleshooting-2

doc/cephfs: edit troubleshooting.rst

Reviewed-by: Venky Shankar <vshankar@redhat.com>
8 weeks agoMerge pull request #64881 from zdover23/wip-doc-2025-08-07-cephfs-troubleshooting-3
Zac Dover [Fri, 8 Aug 2025 04:38:34 +0000 (14:38 +1000)]
Merge pull request #64881 from zdover23/wip-doc-2025-08-07-cephfs-troubleshooting-3

doc/cephfs: edit troubleshooting.rst

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
8 weeks agodoc/cephfs: edit troubleshooting.rst 64881/head
Zac Dover [Thu, 7 Aug 2025 06:10:49 +0000 (16:10 +1000)]
doc/cephfs: edit troubleshooting.rst

Edit the section "Slow/Stuck Operations" in
doc/cephfs/troubleshooting.rst.

Signed-off-by: Zac Dover <zac.dover@proton.me>
8 weeks agotest/crimson/seastore/test_omap_manager: redesign test variable sizes 64522/head
Chanyoung Park [Wed, 16 Jul 2025 04:14:46 +0000 (04:14 +0000)]
test/crimson/seastore/test_omap_manager: redesign test variable sizes

Signed-off-by: Chanyoung Park <chaney.p@kakaoenterprise.com>
8 weeks agoMerge pull request #64625 from chanyoung/fix-end-offset
Samuel Just [Thu, 7 Aug 2025 22:34:41 +0000 (15:34 -0700)]
Merge pull request #64625 from chanyoung/fix-end-offset

crimson/.../linked_tree_node: fix incorrect end offset calculation

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
8 weeks agoMerge pull request #64703 from myoungwon/wip-fix-print-rbm-space
Samuel Just [Thu, 7 Aug 2025 22:33:45 +0000 (15:33 -0700)]
Merge pull request #64703 from myoungwon/wip-fix-print-rbm-space

crimson/os/seastore: fix incorrect total space reporting when using multiple shards in RBM

Reviewed-by: Samuel Just <sjust@redhat.com>
8 weeks agodebian/ceph-osd.install: add packaging for crimson-store-bench 64614/head
Samuel Just [Thu, 7 Aug 2025 16:37:26 +0000 (09:37 -0700)]
debian/ceph-osd.install: add packaging for crimson-store-bench

Signed-off-by: Samuel Just <sjust@redhat.com>
8 weeks agoceph.spec.in: add packaging for crimson-store-bench
Samuel Just [Thu, 7 Aug 2025 16:36:25 +0000 (16:36 +0000)]
ceph.spec.in: add packaging for crimson-store-bench

Signed-off-by: Samuel Just <sjust@redhat.com>
8 weeks agocrimson/tools: Added PG log and rgw_index workload
Shreya Subramanian [Thu, 24 Jul 2025 18:22:14 +0000 (18:22 +0000)]
crimson/tools: Added PG log and rgw_index workload

This commit includes 2 workloads to crimson-store-bench
(a)PG_log workload with sequential omap write and delete
(b)RGW_index workload with randomised omap write and delete

Output is the number of operations, the total latency in seconds and the
duration of the workload in seconds per reactor.

Signed-off-by: Shreya Subramanian <Shreya.Subramanian@ibm.com>
8 weeks agocrimson/tools: add store-bench
Samuel Just [Wed, 18 Jun 2025 17:08:38 +0000 (17:08 +0000)]
crimson/tools: add store-bench

Adds stub for a new store-bench tool.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 weeks agoMerge pull request #64699 from stzuraski898/szmappadd
yaarith [Thu, 7 Aug 2025 20:59:06 +0000 (16:59 -0400)]
Merge pull request #64699 from stzuraski898/szmappadd

mailmap, githubmap, organisationmap: Add Steven Zuraski

Reviewed-by: Laura Flores <lflores@ibm.com>
Reviewed-by: Yaarit Hatuka <yhatuka@ibm.com>
8 weeks agoMerge pull request #62770 from adamemerson/wip-70882
Adam Emerson [Thu, 7 Aug 2025 17:39:20 +0000 (13:39 -0400)]
Merge pull request #62770 from adamemerson/wip-70882

rgw/admin: Fix assert on datalog list of invalid shard

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 weeks agoMerge pull request #64566 from chanyoung/cleanup-test-basic
Samuel Just [Thu, 7 Aug 2025 17:30:50 +0000 (10:30 -0700)]
Merge pull request #64566 from chanyoung/cleanup-test-basic

test/crimson/seastore/test_omap_manager: redesign test basic

Reviewed-by: Samuel Just <sjust@redhat.com>
8 weeks agoMerge pull request #64528 from chanyoung/cleanup-test-clear
Samuel Just [Thu, 7 Aug 2025 17:28:49 +0000 (10:28 -0700)]
Merge pull request #64528 from chanyoung/cleanup-test-clear

test/crimson/seastore/test_omap_manager: add unit test for clear

Reviewed-by: Samuel Just <sjust@redhat.com
8 weeks agoMerge pull request #64763 from adk3798/cephadm-limit-list-servers-calls
Adam King [Thu, 7 Aug 2025 13:08:05 +0000 (09:08 -0400)]
Merge pull request #64763 from adk3798/cephadm-limit-list-servers-calls

mgr/cephadm: limit calls to list_servers

Reviewed-by: John Mulligan <jmulligan@redhat.com>
8 weeks agoMerge pull request #64136 from JonBailey1993/ceph_test_rados_io_sequence_10_bug_fix
Jon Bailey [Thu, 7 Aug 2025 12:08:10 +0000 (13:08 +0100)]
Merge pull request #64136 from JonBailey1993/ceph_test_rados_io_sequence_10_bug_fix

test/osd: Fix pack for minor issues in ceph_test_rados_io_sequence

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
8 weeks agotest/crimson/seastore/CMakeLists: re-enable seastore unittests 64810/head
Chanyoung Park [Thu, 7 Aug 2025 08:07:16 +0000 (08:07 +0000)]
test/crimson/seastore/CMakeLists: re-enable seastore unittests

Fixes: https://tracker.ceph.com/issues/70254
Signed-off-by: Chanyoung Park <chaney.p@kakaoenterprise.com>
8 weeks agotest/crimson/seastore/CMakeLists: tune ASan's UAR fake stack size
Chanyoung Park [Mon, 4 Aug 2025 07:13:24 +0000 (07:13 +0000)]
test/crimson/seastore/CMakeLists: tune ASan's UAR fake stack size

Avoids severe slowdowns with detect_stack_use_after_return=1.
The root cause is unclear, but ASan's fake stack GC behavior is
suspected. Tuning the UAR (Use-After-Return) fake stack size
(reduced from 64KB–1MB to 64KB) helped delay the onset of the
performance degradation.

Fixes: https://tracker.ceph.com/issues/71704
Signed-off-by: Chanyoung Park <chaney.p@kakaoenterprise.com>
8 weeks agoMerge pull request #64869 from zdover23/wip-doc-2025-08-07-cephfs-troubleshooting
Zac Dover [Thu, 7 Aug 2025 05:48:04 +0000 (15:48 +1000)]
Merge pull request #64869 from zdover23/wip-doc-2025-08-07-cephfs-troubleshooting

doc/cephfs: edit troubleshooting.rst

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
8 weeks agodoc/cephfs: edit troubleshooting.rst 64876/head
Zac Dover [Thu, 7 Aug 2025 05:39:55 +0000 (15:39 +1000)]
doc/cephfs: edit troubleshooting.rst

Edit "Avoiding Recovery Roadblocks" in the "Stuck During Recovery"
section of doc/cephfs/troubleshooting.rst.

This commit follows https://github.com/ceph/ceph/pull/64854.

Signed-off-by: Zac Dover <zac.dover@proton.me>
8 weeks agodoc/cephfs: edit troubleshooting.rst 64869/head
Zac Dover [Thu, 7 Aug 2025 05:03:22 +0000 (15:03 +1000)]
doc/cephfs: edit troubleshooting.rst

Follow up on comments made by Anthony D'Atri in
https://github.com/ceph/ceph/pull/64832 and make other small changes to
increase the ease of reading this text.

Signed-off-by: Zac Dover <zac.dover@proton.me>
8 weeks agoMerge pull request #64854 from zdover23/wip-doc-2025-08-06-cephfs-troubleshooting...
Zac Dover [Thu, 7 Aug 2025 04:56:23 +0000 (14:56 +1000)]
Merge pull request #64854 from zdover23/wip-doc-2025-08-06-cephfs-troubleshooting-stuck-during-recovery

doc/cephfs: edit troubleshooting.rst

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
8 weeks agoMerge pull request #64848 from bluikko/doc-conf-file-linkify-install
Anthony D'Atri [Thu, 7 Aug 2025 02:39:40 +0000 (22:39 -0400)]
Merge pull request #64848 from bluikko/doc-conf-file-linkify-install

doc/install: Linkify mention of ceph.conf and use ref for links

8 weeks agoMerge pull request #64856 from zdover23/wip-doc-2025-08-06-rados-operations-erasure...
Zac Dover [Wed, 6 Aug 2025 22:57:33 +0000 (08:57 +1000)]
Merge pull request #64856 from zdover23/wip-doc-2025-08-06-rados-operations-erasure-code-profile-tr72436

doc/rados: Fix broken links

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
8 weeks agoMerge pull request #64719 from cloudbehl/smb-overview-per-share
Pedro Gonzalez Gomez [Wed, 6 Aug 2025 22:06:16 +0000 (00:06 +0200)]
Merge pull request #64719 from cloudbehl/smb-overview-per-share

monitoring: Add per share metrics to SMB dashboard

Reviewed-by: Pedro Gonzalez <pegonzal@redhat.com>
2 months agorgw/datalog: Stick noexcept on wrappers returning int 62770/head
Adam C. Emerson [Thu, 3 Jul 2025 19:12:05 +0000 (15:12 -0400)]
rgw/datalog: Stick noexcept on wrappers returning int

Easier to debug.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months agorgw: Use `run_coro` to call coroutines at use
Adam C. Emerson [Fri, 18 Apr 2025 07:31:35 +0000 (03:31 -0400)]
rgw: Use `run_coro` to call coroutines at use

This avoids having two entry points with different error checking
preparation, etc. to get out of sync or have a fix get forgotten.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months agorgw: Add run_coro utility
Adam C. Emerson [Fri, 18 Apr 2025 07:27:36 +0000 (03:27 -0400)]
rgw: Add run_coro utility

A convenience function for turning coroutines that return values and
use exceptions, `error_code`, or similar into `int`-returning
functions that take references to out parameters.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months agocommon/async: Update `use_blocked` for newer asio
Adam C. Emerson [Wed, 6 Aug 2025 20:02:32 +0000 (16:02 -0400)]
common/async: Update `use_blocked` for newer asio

Reimplement with `initiate` rather than the old style. This
necessitates getting rid of the old `async::Completion` in anything
that was calling it, and other changes.

Also, use disposition for error handling.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months agoMerge pull request #64712 from idryomov/wip-krbd-unmap-fixed-1
Ilya Dryomov [Wed, 6 Aug 2025 19:52:52 +0000 (21:52 +0200)]
Merge pull request #64712 from idryomov/wip-krbd-unmap-fixed-1

qa/suites/krbd: use a standard fixed-1 cluster in unmap subsuite

Reviewed-by: Ramana Raja <rraja@redhat.com>
2 months agocommon/async: Add concepts.h
Adam C. Emerson [Fri, 18 Apr 2025 00:08:36 +0000 (20:08 -0400)]
common/async: Add concepts.h

Asio does not have nearly as many actual explicit concepts one can use
as one might like.

And there's no reason we might not want our own asynchrony-related concepts.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months agocommon/async/co_waiter: Add missing header
Adam C. Emerson [Thu, 17 Apr 2025 17:29:33 +0000 (13:29 -0400)]
common/async/co_waiter: Add missing header

Didn't include `associated_cancellation_slot.hpp`.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months agorgw/multi: Fix error handling in public Datalog APIs
Adam C. Emerson [Tue, 15 Apr 2025 11:30:35 +0000 (07:30 -0400)]
rgw/multi: Fix error handling in public Datalog APIs

I had been thinking of list and trim as purely internal interfaces,
but they are called through HTTP and thus need to be prepared for bad
input.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months agorgw/admin: Fix assert on datalog list of invalid shard
Adam C. Emerson [Fri, 11 Apr 2025 21:53:58 +0000 (17:53 -0400)]
rgw/admin: Fix assert on datalog list of invalid shard

Fixes: https://tracker.ceph.com/issues/70882
Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months agoMerge pull request #63698 from adamemerson/wip-71066
Adam Emerson [Wed, 6 Aug 2025 15:31:31 +0000 (11:31 -0400)]
Merge pull request #63698 from adamemerson/wip-71066

rgw/multisite: Fix lifetime issues

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2 months agoMerge pull request #64849 from ronen-fr/wip-rf-72420repair
Ronen Friedman [Wed, 6 Aug 2025 14:22:24 +0000 (17:22 +0300)]
Merge pull request #64849 from ronen-fr/wip-rf-72420repair

osd/scrub: do not limit operator-initiated repairs

Reviewed-by: Alex Ainscow <aainscow@uk.ibm.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2 months agoMerge pull request #63047 from awojno-bloomberg/sts-fix
Casey Bodley [Wed, 6 Aug 2025 14:11:07 +0000 (10:11 -0400)]
Merge pull request #63047 from awojno-bloomberg/sts-fix

rgw: check all JWKS for STS

Reviewed-by: Pritha Srivastava <prsrivas@redhat.com>
2 months agoMerge pull request #64825 from rhcs-dashboard/72409-parsing-error-in-grafana
Nizamudeen A [Wed, 6 Aug 2025 13:07:41 +0000 (18:37 +0530)]
Merge pull request #64825 from rhcs-dashboard/72409-parsing-error-in-grafana

mgr/dashboard: 72409 : Fixed parsing error in grafana for host overall performance iframe

2 months agoMerge pull request #64689 from rhcs-dashboard/72288-mirrored-images-have-incorrect...
Nizamudeen A [Wed, 6 Aug 2025 13:06:41 +0000 (18:36 +0530)]
Merge pull request #64689 from rhcs-dashboard/72288-mirrored-images-have-incorrect-info-in-gui

mgr/dashboard: Fixed incorrect snapshot scheduled date for rbd block in GUI

2 months agomgr/dashboard: 72409 : Fixed parsing error in grafana for host overall performance... 64825/head
Abhishek Desai [Mon, 4 Aug 2025 19:54:40 +0000 (01:24 +0530)]
mgr/dashboard: 72409 : Fixed parsing error in grafana for host overall performance iframe
fixes: https://tracker.ceph.com/issues/72409

Signed-off-by: Abhishek Desai <abhishek.desai1@ibm.com>
2 months agodoc/rados: Fix broken links 64856/head
Zac Dover [Wed, 6 Aug 2025 08:56:22 +0000 (18:56 +1000)]
doc/rados: Fix broken links

Fix the broken links to "Erasure Coding Profiles" section.

Fixes: https://tracker.ceph.com/issues/72436
Signed-off-by: Zac Dover <zac.dover@proton.me>
2 months agoosd/scrub: do not limit operator-initiated repairs 64849/head
Ronen Friedman [Wed, 6 Aug 2025 05:38:07 +0000 (00:38 -0500)]
osd/scrub: do not limit operator-initiated repairs

'auto-repair' scrubs are limited to a maximum of
'scrub_auto_repair_num_errors' damaged objects.
However, operator-initiated repairs should not be limited
by that number. Alas, a bug in a previous commit
(97de817ad1c253ee1c7c9c9302981ad2435301b9) modified the
code in such a way that it applied the
'scrub_auto_repair_num_errors' limit to all repairs,
including operator-initiated ones. This commit fixes that.

Fixes: https://tracker.ceph.com/issues/72420
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
2 months agodoc/cephfs: edit troubleshooting.rst 64854/head
Zac Dover [Wed, 6 Aug 2025 08:44:32 +0000 (18:44 +1000)]
doc/cephfs: edit troubleshooting.rst

Edit "Avoiding Recovery Roadblocks" in the "Stuck During Recovery"
section of doc/cephfs/troubleshooting.rst.

This commit follows https://github.com/ceph/ceph/pull/64832.

Signed-off-by: Zac Dover <zac.dover@proton.me>
2 months agoMerge pull request #64832 from zdover23/wip-doc-2025-08-05-cephfs-troubleshooting...
Zac Dover [Wed, 6 Aug 2025 08:11:01 +0000 (18:11 +1000)]
Merge pull request #64832 from zdover23/wip-doc-2025-08-05-cephfs-troubleshooting-stuck-during-recovery

doc/cephfs: edit troubleshooting.rst

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2 months agodoc/install: Linkify mention of ceph.conf and use ref for links 64848/head
Ville Ojamo [Wed, 6 Aug 2025 05:05:49 +0000 (12:05 +0700)]
doc/install: Linkify mention of ceph.conf and use ref for links

Linkify first mention of config file to ceph.conf docs in:
- install-storage-cluster.rst
- manual-deployment.rst
- manual-freebsd-deployment.rst

Use ref instead of an external link in:
- clone-source.rst
- get-packages.rst
- index_manual.rst
- install-storage-cluster.rst
- manual-deploymen.rst
- manual-freebsd-deployment.rst
Only where a label already exists at the destination.
Delete the old link definition if one was used previously.
That should be about all external links in install/ that can use
existing labels for ref.

Fix an instance of "the a" into just "a" that is consistent with other
similar mentions in manual-freebsd-deployment.rst.

Signed-off-by: Ville Ojamo <14869000+bluikko@users.noreply.github.com>
2 months agorgw/datalog: Manage and shutdown tasks properly 63698/head
Adam C. Emerson [Mon, 30 Jun 2025 20:54:46 +0000 (16:54 -0400)]
rgw/datalog: Manage and shutdown tasks properly

This is slightly ugly but good enough for now. Make sure we can block
when shutting down background tasks.

Remove a few `driver` parameters that are unused. This lets us
simplify the IAM Policy and Lua tests and not construct stores we
never use. (Which is good since we aren't running them under a cluster.)

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months agoMerge pull request #64662 from yuvalif/wip-yuval-71585
Yuval Lifshitz [Tue, 5 Aug 2025 20:48:35 +0000 (23:48 +0300)]
Merge pull request #64662 from yuvalif/wip-yuval-71585

rgw/notifications: test refactoring

2 months agoneorados/fifo: Rewrite as proper I/O object
Adam C. Emerson [Fri, 11 Jul 2025 18:57:02 +0000 (14:57 -0400)]
neorados/fifo: Rewrite as proper I/O object

Split nominal handle object and reference-counted
implementation. While we're at it, add lazy-open functionality.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months ago{neorados,osdc}: Support subsystem cancellation
Adam C. Emerson [Thu, 26 Jun 2025 17:58:57 +0000 (13:58 -0400)]
{neorados,osdc}: Support subsystem cancellation

Tag operations with a subsystem so we can cancel them all in one go.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months agorgw/multi: Give tasks a reference to RGWDataChangesLog
Adam C. Emerson [Fri, 25 Apr 2025 21:40:05 +0000 (17:40 -0400)]
rgw/multi: Give tasks a reference to RGWDataChangesLog

Also run them in strands. Also `datalog_rados` is a `shared_ptr`,
now. Probably make it intrusive later.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months agoneorados: Hold reference to implementation across operations
Adam C. Emerson [Fri, 30 May 2025 20:54:45 +0000 (16:54 -0400)]
neorados: Hold reference to implementation across operations

Asynchrony combined with cancellations keeps leading to occasional
lifetime issues, so follow the best-practices of Asio I/O objects by
having completions keep a reference live.

The original NeoRados backing implements Asio's two-phase shutdown
properly.

The RadosClient backing does not, because it shares an Objecter with
completions that do not belong to it. In practice I don't think this
will matter since librados and neorados get shut down around the same
time.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2 months agoMerge pull request #64840 from bluikko/doc-delete-invalid-link-defs-rados
Anthony D'Atri [Tue, 5 Aug 2025 17:36:59 +0000 (13:36 -0400)]
Merge pull request #64840 from bluikko/doc-delete-invalid-link-defs-rados

doc/rados: Remove obsolete fs-recommendations links

2 months agoMerge pull request #64809 from bill-scales/ec_docs
Anthony D'Atri [Tue, 5 Aug 2025 17:17:18 +0000 (13:17 -0400)]
Merge pull request #64809 from bill-scales/ec_docs

Doc: Erasure Coding enhancements for tentacle

2 months agoMerge pull request #64838 from bluikko/doc-relative-external-links-rados
Anthony D'Atri [Tue, 5 Aug 2025 17:17:02 +0000 (13:17 -0400)]
Merge pull request #64838 from bluikko/doc-relative-external-links-rados

doc/rados: Use ref instead of relative external links

2 months agomgr/dashboard: Fixed incorrect snapshot scheduled date for rbd block in GUI 64689/head
Abhishek Desai [Fri, 25 Jul 2025 12:18:20 +0000 (17:48 +0530)]
mgr/dashboard: Fixed incorrect snapshot scheduled date for rbd block in GUI
fixes: https://tracker.ceph.com/issues/72288

Signed-off-by: Abhishek Desai <abhishek.desai1@ibm.com>
2 months agomonitoring: Add per share metrics to SMB dashboard 64719/head
Ankush Behl [Mon, 28 Jul 2025 12:12:49 +0000 (17:42 +0530)]
monitoring: Add per share metrics to SMB dashboard

Fixes: https://tracker.ceph.com/issues/72308
Signed-off-by: Ankush Behl <cloudbehl@gmail.com>
2 months agorgw/notifications: test refactoring 64662/head
Yuval Lifshitz [Thu, 3 Jul 2025 16:57:39 +0000 (16:57 +0000)]
rgw/notifications: test refactoring

* kafka: pass full broker list to consumer in tests
* kafka: use ip instead of localhost
* kafka: make sure topic exists before consumer start
* kafka: fix zookeeper and broker conf in tests
* kafka: verify receiver in the test
* kafka: tests were not running (Fixes: https://tracker.ceph.com/issues/72240)
* kafka: failover tests were failing (Fixes: https://tracker.ceph.com/issues/71585)
* simplify basic tests run command
* v2 migration tests were not running
* fix failing migration tests

Signed-off-by: Yuval Lifshitz <ylifshit@ibm.com>
2 months agodoc: erasure coding enhancements for tentacle 64809/head
Bill Scales [Fri, 1 Aug 2025 15:17:58 +0000 (16:17 +0100)]
doc: erasure coding enhancements for tentacle

* Document new pool flag allow_ec_optimizations
* Reference new conf setting osd_pool_default_flag_ec_optimizations
* Add section describing Erasure Code Optimizations

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
2 months agodoc/rados: Remove obsolete fs-recomm links 64840/head
Ville Ojamo [Tue, 5 Aug 2025 15:34:26 +0000 (22:34 +0700)]
doc/rados: Remove obsolete fs-recomm links

2 files linked to filesystem-recommendations.rst which was removed
around the year 2017.
I understand this was relevant only for Filestore. So simply remove the
references to this file & the link definition if one was used.

troubleshooting/troubleshooting-osd.rst
operations/add-or-rm-osds.rst

Signed-off-by: Ville Ojamo <14869000+bluikko@users.noreply.github.com>
2 months agodoc/rados: Use ref instead of relative external links 64838/head
Ville Ojamo [Tue, 5 Aug 2025 14:45:05 +0000 (21:45 +0700)]
doc/rados: Use ref instead of relative external links

Instead of external links use :ref: where dst labels exist already in:
operations/erasure-code.rst
operations/pools.rst
troubleshooting/troubleshooting-osd.rst

Use link text generation where it is reasonably close to previous manual
link text.
Delete some unused link definitions.

Signed-off-by: Ville Ojamo <14869000+bluikko@users.noreply.github.com>
2 months agoMerge pull request #64824 from bluikko/doc-kmip-improvements-radosgw
Anthony D'Atri [Tue, 5 Aug 2025 12:51:35 +0000 (08:51 -0400)]
Merge pull request #64824 from bluikko/doc-kmip-improvements-radosgw

doc/radosgw: Small improvements in kmip.rst

2 months agoMerge pull request #64823 from bluikko/doc-s3-notification-compatibility-radosgw
Anthony D'Atri [Tue, 5 Aug 2025 12:15:31 +0000 (08:15 -0400)]
Merge pull request #64823 from bluikko/doc-s3-notification-compatibility-radosgw

doc/radosgw: Small improvements in s3-notification-compatibility.rst

2 months agodoc/cephfs: edit troubleshooting.rst 64832/head
Zac Dover [Tue, 5 Aug 2025 11:24:41 +0000 (21:24 +1000)]
doc/cephfs: edit troubleshooting.rst

Edit "Stuck in up:replay" under the "Stuck During Recovery" section of
doc/cephfs/troubleshooting.rst. I had planned to edit the entire "Stuck
During Recovery" section in a single commit, but I think that the
material is too involved for that.

Signed-off-by: Zac Dover <zac.dover@proton.me>
2 months agocrimson/os/seastore/transaction_manager: complete indirect mappings 62513/head
Xuehan Xu [Wed, 9 Jul 2025 09:54:44 +0000 (17:54 +0800)]
crimson/os/seastore/transaction_manager: complete indirect mappings
before reading

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
2 months agocrimson/os/seastore/lba_mapping: treat indirect mappings as valid
Xuehan Xu [Tue, 5 Aug 2025 02:58:42 +0000 (10:58 +0800)]
crimson/os/seastore/lba_mapping: treat indirect mappings as valid
non-clone ones

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
2 months agocrimson/os/seastore/lba_mapping: treat indirect mappings as valid
Xuehan Xu [Mon, 4 Aug 2025 08:55:50 +0000 (16:55 +0800)]
crimson/os/seastore/lba_mapping: treat indirect mappings as valid
non-zero-reserved mappings

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
2 months agocrimson/os/seastore/lba_mapping: add interfaces to determine the pending
Xuehan Xu [Thu, 3 Jul 2025 08:36:27 +0000 (16:36 +0800)]
crimson/os/seastore/lba_mapping: add interfaces to determine the pending
state of mappings' child extents

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
2 months agocrimson/os/seastore: laddr_offset_t can align to mulitple UNIT_SIZE now
Xuehan Xu [Tue, 17 Jun 2025 10:24:53 +0000 (18:24 +0800)]
crimson/os/seastore: laddr_offset_t can align to mulitple UNIT_SIZE now

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
2 months agocrimson/os/seastore/lba_mapping: drop the deprecated "duplicate" method
Xuehan Xu [Wed, 11 Jun 2025 07:09:25 +0000 (15:09 +0800)]
crimson/os/seastore/lba_mapping: drop the deprecated "duplicate" method

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
2 months agocrimson/os/seastore/cached_extent: more correctness asserts
Xuehan Xu [Fri, 6 Jun 2025 12:37:40 +0000 (20:37 +0800)]
crimson/os/seastore/cached_extent: more correctness asserts

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
2 months agocrimson/os/seastore/transaction_manager: hide
Xuehan Xu [Wed, 4 Jun 2025 07:37:22 +0000 (15:37 +0800)]
crimson/os/seastore/transaction_manager: hide
TransactionManager::remap_pin()

It doesn't have public use cases any more.

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
2 months agocrimson/os/seastore/object_data_handler: LBACursor based clones
Xuehan Xu [Wed, 26 Mar 2025 03:33:27 +0000 (11:33 +0800)]
crimson/os/seastore/object_data_handler: LBACursor based clones

Avoiding unnecessary lba tree searches

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
2 months agocrimson/os/seastore/object_data_handler: cleanup deprecated functions
Xuehan Xu [Tue, 18 Mar 2025 10:18:03 +0000 (18:18 +0800)]
crimson/os/seastore/object_data_handler: cleanup deprecated functions

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
2 months agocrimson/os/seastore/object_data_handler: LBACursor based overwrite
Xuehan Xu [Fri, 21 Mar 2025 02:58:27 +0000 (10:58 +0800)]
crimson/os/seastore/object_data_handler: LBACursor based overwrite

This should avoid unnecessary lba tree searches in the old
implementation of ObjectDataHandler::overwrite()

Overwrites of ObjectDataBlocks are dealt with by first punching holes
in the lba tree and then inserting new extents in the holes.

Specifically, overwrites are classified into two categories:
1. the range of the overwrite falls in a single lba mapping;
2. the range of the overwrite crosses multiple lba mappings.

For the first category, ObjectDataHandler processes the overwrites in
the following way:
1. if the mapping is a pending one (corresponds to a pending extent),
   merge the overwrite with the data of the pending extent;
2. otherwise, if the overwrite can, apply it with delta based
   overwrites;
3. otherwise, punch a hole in the mapping, insert a new extent with the
   data of the overwrite.

For the second category, the overwrite is processed as follows:
1. if the left boundary of the overwrite is inside an existing mapping,
   deal with the mapping in a way similar to the single-mapping
   overwrites;
2. remove all lba mappings that are strictly within the range of the
   overwrite;
3. deal with the right boundary of the overwrite in the same way as the
   left boundary.

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>