]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ci.git/log
ceph-ci.git
3 days agocrimson/.../lba_manager: add formatter for remap_entry_t
Samuel Just [Mon, 8 Dec 2025 18:10:28 +0000 (10:10 -0800)]
crimson/.../lba_manager: add formatter for remap_entry_t

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../object_data_handler: fix LOG_PREFIX for do_clone
Samuel Just [Mon, 8 Dec 2025 17:21:59 +0000 (09:21 -0800)]
crimson/.../object_data_handler: fix LOG_PREFIX for do_clone

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../lba_manager: convert remap_mappings to use cursors
Samuel Just [Tue, 21 Oct 2025 21:59:58 +0000 (21:59 +0000)]
crimson/.../lba_manager: convert remap_mappings to use cursors

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../lba_manager: convert reserve_region to use cursor
Samuel Just [Mon, 20 Oct 2025 23:55:00 +0000 (23:55 +0000)]
crimson/.../lba_manager: convert reserve_region to use cursor

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: simplify _update_mapping_ret, remove update_mapping_re...
Samuel Just [Sat, 18 Oct 2025 00:54:08 +0000 (17:54 -0700)]
crimson/.../btree_lba_manager: simplify _update_mapping_ret, remove update_mapping_ret_bare_t

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert _update_mapping to coroutine
Samuel Just [Sat, 18 Oct 2025 00:34:57 +0000 (17:34 -0700)]
crimson/.../btree_lba_manager: convert _update_mapping to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: remove update_refcount, simplify _update_mapping retur...
Samuel Just [Fri, 17 Oct 2025 23:06:34 +0000 (23:06 +0000)]
crimson/.../btree_lba_manager: remove update_refcount, simplify _update_mapping return value

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert remap_mappings to coroutine
Samuel Just [Fri, 17 Oct 2025 22:07:57 +0000 (22:07 +0000)]
crimson/.../transaction_manager: convert remap_mappings to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert remap_mappings to coroutine
Samuel Just [Thu, 16 Oct 2025 01:45:33 +0000 (18:45 -0700)]
crimson/.../btree_lba_manager: convert remap_mappings to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../lba_manager: convert clone_mapping to use cursors
Samuel Just [Thu, 16 Oct 2025 01:26:52 +0000 (01:26 +0000)]
crimson/.../lba_manager: convert clone_mapping to use cursors

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert clone_pin to coroutine
Samuel Just [Thu, 16 Oct 2025 00:54:26 +0000 (00:54 +0000)]
crimson/.../transaction_manager: convert clone_pin to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert clone_mapping to coroutine
Samuel Just [Wed, 15 Oct 2025 22:47:30 +0000 (22:47 +0000)]
crimson/.../btree_lba_manager: convert clone_mapping to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert get_end_mapping to return LBACursorRef
Samuel Just [Wed, 15 Oct 2025 21:58:34 +0000 (21:58 +0000)]
crimson/.../btree_lba_manager: convert get_end_mapping to return LBACursorRef

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert get_end_mapping to coroutine
Samuel Just [Wed, 15 Oct 2025 21:53:20 +0000 (21:53 +0000)]
crimson/.../btree_lba_manager: convert get_end_mapping to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: remove LBAMapping update_mapping variant
Samuel Just [Tue, 14 Oct 2025 00:03:46 +0000 (00:03 +0000)]
crimson/.../transaction_manager: remove LBAMapping update_mapping variant

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../lba_manager: remove get_mapping interfaces
Samuel Just [Mon, 13 Oct 2025 22:50:05 +0000 (22:50 +0000)]
crimson/.../lba_manager: remove get_mapping interfaces

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert get_pins to use get_cursors
Samuel Just [Mon, 13 Oct 2025 20:58:54 +0000 (20:58 +0000)]
crimson/.../transaction_manager: convert get_pins to use get_cursors

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert get_extents_if_live and helpers to use cursors
Samuel Just [Mon, 13 Oct 2025 20:13:33 +0000 (20:13 +0000)]
crimson/.../transaction_manager: convert get_extents_if_live and helpers to use cursors

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert get_extents_if_live to coroutine
Samuel Just [Fri, 10 Oct 2025 16:02:51 +0000 (16:02 +0000)]
crimson/.../transaction_manager: convert get_extents_if_live to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../lba_manager: convert alloc_extents_ret to use LBACursor
Samuel Just [Fri, 10 Oct 2025 01:53:32 +0000 (01:53 +0000)]
crimson/.../lba_manager: convert alloc_extents_ret to use LBACursor

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert alloc_data_extents to coroutine
Samuel Just [Fri, 10 Oct 2025 00:47:07 +0000 (00:47 +0000)]
crimson/.../transaction_manager: convert alloc_data_extents to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert alloc_extents to coroutine
Samuel Just [Fri, 10 Oct 2025 00:27:16 +0000 (00:27 +0000)]
crimson/.../btree_lba_manager: convert alloc_extents to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert rewrite_logical_extent to use get_cursor
Samuel Just [Mon, 13 Oct 2025 21:41:15 +0000 (14:41 -0700)]
crimson/.../transaction_manager: convert rewrite_logical_extent to use get_cursor

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../lba_manager: switch alloc_extent_ret to LBACursorRef
Samuel Just [Fri, 10 Oct 2025 00:11:32 +0000 (00:11 +0000)]
crimson/.../lba_manager: switch alloc_extent_ret to LBACursorRef

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert reserve_region to coroutine
Samuel Just [Thu, 9 Oct 2025 23:16:14 +0000 (23:16 +0000)]
crimson/.../btree_lba_manager: convert reserve_region to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert reserve_region to coroutine
Samuel Just [Thu, 9 Oct 2025 23:08:59 +0000 (23:08 +0000)]
crimson/.../transaction_manager: convert reserve_region to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert alloc_extent to coroutine
Samuel Just [Thu, 9 Oct 2025 22:48:12 +0000 (22:48 +0000)]
crimson/.../btree_lba_manager: convert alloc_extent to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert rewrite_logical_extent to coroutine
Samuel Just [Thu, 9 Oct 2025 21:19:41 +0000 (21:19 +0000)]
crimson/.../transaction_manager: convert rewrite_logical_extent to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert get_pin to use get_cursor
Samuel Just [Thu, 9 Oct 2025 01:32:03 +0000 (01:32 +0000)]
crimson/.../transaction_manager: convert get_pin to use get_cursor

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../lba_manager: remove remove_mappings
Samuel Just [Wed, 8 Oct 2025 02:23:00 +0000 (19:23 -0700)]
crimson/.../lba_manager: remove remove_mappings

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: rework _remove in terms of LBACursor interfaces
Samuel Just [Wed, 8 Oct 2025 01:47:52 +0000 (18:47 -0700)]
crimson/.../transaction_manager: rework _remove in terms of LBACursor interfaces

Removes the need for _remove_direct_mapping and _remove_indirect_mapping.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: avoid using LBAManager::ref_update_result_t
Samuel Just [Wed, 8 Oct 2025 00:30:46 +0000 (17:30 -0700)]
crimson/.../transaction_manager: avoid using LBAManager::ref_update_result_t

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson: replace LBAManager::complete_indirect_lba_mapping with TransactionManager...
Samuel Just [Tue, 7 Oct 2025 21:20:17 +0000 (14:20 -0700)]
crimson: replace LBAManager::complete_indirect_lba_mapping with TransactionManager::complete_mapping

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: simplify get_extent_if_linked
Samuel Just [Tue, 7 Oct 2025 00:27:18 +0000 (00:27 +0000)]
crimson/.../transaction_manager: simplify get_extent_if_linked

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert _remove_indirect_mapping to coroutine
Samuel Just [Fri, 3 Oct 2025 18:10:14 +0000 (18:10 +0000)]
crimson/.../transaction_manager: convert _remove_indirect_mapping to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert _remove_direct_mapping to coroutine
Samuel Just [Thu, 2 Oct 2025 21:39:27 +0000 (21:39 +0000)]
crimson/.../transaction_manager: convert _remove_direct_mapping to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../remove: convert to use cursor interfaces
Samuel Just [Thu, 2 Oct 2025 21:20:18 +0000 (21:20 +0000)]
crimson/.../remove: convert to use cursor interfaces

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert remove to use cursor interfaces
Samuel Just [Thu, 2 Oct 2025 20:47:46 +0000 (13:47 -0700)]
crimson/.../transaction_manager: convert remove to use cursor interfaces

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_types: add LBACursor::is_direct
Samuel Just [Thu, 2 Oct 2025 20:46:54 +0000 (13:46 -0700)]
crimson/.../btree_types: add LBACursor::is_direct

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert _remove_indirect_mapping_only to use new...
Samuel Just [Wed, 1 Oct 2025 23:31:34 +0000 (16:31 -0700)]
crimson/.../transaction_manager: convert _remove_indirect_mapping_only to use new interfaces

Also removes now unused LBAMapping::remove_indirect_mapping_only.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: remove unused get_ref_update_result
Samuel Just [Wed, 1 Oct 2025 22:38:46 +0000 (15:38 -0700)]
crimson/.../btree_lba_manager: remove unused get_ref_update_result

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../lba_manager: replace unused incref_extent with update_mapping_refcount
Samuel Just [Tue, 30 Sep 2025 21:02:30 +0000 (21:02 +0000)]
crimson/.../lba_manager: replace unused incref_extent with update_mapping_refcount

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: remove unused _incref_extent
Samuel Just [Tue, 30 Sep 2025 19:32:53 +0000 (12:32 -0700)]
crimson/.../btree_lba_manager: remove unused _incref_extent

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert remove_mapping to coroutine
Samuel Just [Tue, 30 Sep 2025 18:56:42 +0000 (18:56 +0000)]
crimson/.../btree_lba_manager: convert remove_mapping to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../lba_manager: switch update_mapping to take a cursor, add adapter
Samuel Just [Tue, 30 Sep 2025 18:53:22 +0000 (18:53 +0000)]
crimson/.../lba_manager: switch update_mapping to take a cursor, add adapter

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert update_mapping to coroutine
Samuel Just [Tue, 30 Sep 2025 18:04:55 +0000 (11:04 -0700)]
crimson/.../btree_lba_manager: convert update_mapping to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: introduce resolve_cursor_to_mapping
Samuel Just [Tue, 30 Sep 2025 17:52:45 +0000 (10:52 -0700)]
crimson/.../transaction_manager: introduce resolve_cursor_to_mapping

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../lba_manager: add get_cursor interfaces
Samuel Just [Fri, 26 Sep 2025 23:19:26 +0000 (16:19 -0700)]
crimson/.../lba_manager: add get_cursor interfaces

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert get_mappings to coroutine
Samuel Just [Tue, 23 Sep 2025 20:51:42 +0000 (13:51 -0700)]
crimson/.../btree_lba_manager: convert get_mappings to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert get_cursors to coroutine
Samuel Just [Tue, 23 Sep 2025 21:08:28 +0000 (14:08 -0700)]
crimson/.../btree_lba_manager: convert get_cursors to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../fixed_kv_btree: add get_btree helper
Samuel Just [Tue, 23 Sep 2025 20:51:18 +0000 (13:51 -0700)]
crimson/.../fixed_kv_btree: add get_btree helper

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_lba_manager: convert mkfs to coroutine
Samuel Just [Tue, 23 Sep 2025 20:19:30 +0000 (20:19 +0000)]
crimson/.../btree_lba_manager: convert mkfs to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert remove to coroutine
Samuel Just [Fri, 19 Sep 2025 16:13:20 +0000 (09:13 -0700)]
crimson/.../transaction_manager: convert remove to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert read_extent to coroutine
Samuel Just [Wed, 17 Sep 2025 21:35:08 +0000 (21:35 +0000)]
crimson/.../transaction_manager: convert read_extent to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../transaction_manager: convert get_pin to coroutine
Samuel Just [Tue, 16 Sep 2025 16:48:34 +0000 (09:48 -0700)]
crimson/.../transaction_manager: convert get_pin to coroutine

Signed-off-by: Samuel Just <sjust@redhat.com>
3 days agocrimson/.../btree_types: allow get_refcount() on indirect cursor
Samuel Just [Tue, 11 Nov 2025 01:39:17 +0000 (17:39 -0800)]
crimson/.../btree_types: allow get_refcount() on indirect cursor

It should always be 1, but there's no reason not to allow it.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 weeks agoMerge pull request #66533 from imran-imtiaz/dashboard
Imran Imtiaz [Tue, 9 Dec 2025 14:02:18 +0000 (14:02 +0000)]
Merge pull request #66533 from imran-imtiaz/dashboard

mgr/dashboard: add API endpoint for consistency group name update

4 weeks agoMerge pull request #66506 from Matan-B/wip-matanb-crimson-seastore-extent-race-v3
Matan Breizman [Tue, 9 Dec 2025 12:43:02 +0000 (14:43 +0200)]
Merge pull request #66506 from Matan-B/wip-matanb-crimson-seastore-extent-race-v3

crimson/os/seastore/cache: Verify crc prior to complete_io

Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
4 weeks agoMerge pull request #65689 from VallariAg/wip-listener-mon-cmd
Vallari Agrawal [Tue, 9 Dec 2025 07:25:12 +0000 (12:55 +0530)]
Merge pull request #65689 from VallariAg/wip-listener-mon-cmd

mon: Add command "nvme-gw listeners"

4 weeks agoMerge pull request #66549 from tchaikov/wip-cpp-btree-silence-warnings
Kefu Chai [Tue, 9 Dec 2025 05:09:15 +0000 (13:09 +0800)]
Merge pull request #66549 from tchaikov/wip-cpp-btree-silence-warnings

include/cpp-btree: fix array bounds warning in child() accessors

Reviewed-by: Edwin Rodriguez <edwin.rodriguez1@ibm.com>
4 weeks agoMerge pull request #66562 from Germano0/manual-deployment.osd
bluikko [Tue, 9 Dec 2025 04:43:28 +0000 (11:43 +0700)]
Merge pull request #66562 from Germano0/manual-deployment.osd

doc: add ceph.conf in osd creation

4 weeks agodoc: add ceph.conf in osd creation
Germano Massullo (Thetra) [Tue, 9 Dec 2025 00:23:31 +0000 (01:23 +0100)]
doc: add ceph.conf in osd creation

Signed-off-by: Germano Massullo (Thetra) <germano.massullo@thetra.eu>
4 weeks agoMerge pull request #66304 from NitzanMordhai/wip-nitzan-objecter-osdmap-request-override
SrinivasaBharathKanta [Mon, 8 Dec 2025 22:49:46 +0000 (04:19 +0530)]
Merge pull request #66304 from NitzanMordhai/wip-nitzan-objecter-osdmap-request-override

Objecter: respect higher epoch subscription in tick

4 weeks agoMerge pull request #66560 from anthonyeleven/arminfo
Anthony D'Atri [Mon, 8 Dec 2025 22:22:30 +0000 (17:22 -0500)]
Merge pull request #66560 from anthonyeleven/arminfo

doc/start: Add ARM support note to hardware-recommendations.rst

4 weeks agodoc/start: Add ARM support note to hardware-recommendations.rst
Anthony D'Atri [Mon, 8 Dec 2025 19:48:58 +0000 (14:48 -0500)]
doc/start: Add ARM support note to hardware-recommendations.rst

Signed-off-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
4 weeks agoMerge pull request #66020 from bluikko/doc-conf-auth-config-ref-links-rados
Ilya Dryomov [Mon, 8 Dec 2025 19:10:26 +0000 (20:10 +0100)]
Merge pull request #66020 from bluikko/doc-conf-auth-config-ref-links-rados

doc: Use validated links with ref instead of external links

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
Reviewed-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
4 weeks agocrimson/os/seastore/lba_mapping: Introduce co_refresh wip-matanb-crimson-seastore-extent-race-v3
Matan Breizman [Mon, 8 Dec 2025 12:54:36 +0000 (12:54 +0000)]
crimson/os/seastore/lba_mapping: Introduce co_refresh

See comment:
```
  //TODO: should be changed to return future<> once all calls
  //   to refresh are through co_await. We return LBAMapping
  //   for now to avoid mandating the callers to make sure
  //   the life of the lba mapping survives the refresh.
```

For now introduce co_refresh and mark the existing refresh as
deprecated. Following work will audit all the existing users of
refresh and move them to the new method. This change is not trivial
so I prefer to follow up on this as a separate PR.

This should help avoiding UAR in suspension points:
```
==103588==ERROR: AddressSanitizer: stack-use-after-return on address 0xffff80197e90 at pc 0xaaaacb941b24 bp 0xffff7e48dd80 sp 0xffff7e48dd78
READ of size 8 at 0xffff80197e90 thread T1
    #0 0xaaaacb941b20 in boost::intrusive_ptr<crimson::os::seastore::LBACursor>::swap(boost::intrusive_ptr<crimson::os::seastore::LBACursor>&) /opt/ceph/include/boost/smart_ptr/intrusive_ptr.hpp:172:18
    #1 0xaaaacb941998 in boost::intrusive_ptr<crimson::os::seastore::LBACursor>::operator=(boost::intrusive_ptr<crimson::os::seastore::LBACursor>&&) /opt/ceph/include/boost/smart_ptr/intrusive_ptr.hpp:93:61
    #2 0xaaaacb933758 in crimson::os::seastore::LBAMapping::operator=(crimson::os::seastore::LBAMapping&&) /ceph/src/crimson/os/seastore/lba_mapping.h:46:48
    #3 0xaaaacde2fa54 in ... crimson::os::seastore::LBAMapping&&, std::array<crimson::os::seastore::LBAManager::remap_entry_t, 1ul>) (.resume) /ceph/src/crimson/os/seastore/transaction_manager.h:1282:11
```

Deprecate is commented out since otherwise make check would fail.

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 weeks agocrimson/os/seastore/cache: Verify crc prior to complete_io
Matan Breizman [Sun, 7 Dec 2025 10:36:28 +0000 (10:36 +0000)]
crimson/os/seastore/cache: Verify crc prior to complete_io

Calling check_full_extent_integrity in pin_to_extent is wrong.
By the time we partially read the extent, another transaction
might fully load the entire extent. Either by a full_extent read
or by filling the missing unloaded extent gap.
This would result in veryfing the extent crc since it's fully
loaded. However, since the extent was only partially read our
data (and crc) might be outdated.
Instead move the crc checks to read_extent prior to complete_io.
That way we would only check the crc when the extent was intended to
be fully loaded. Other users of read_extent which do not use pin_crc
(CRC_NULL), would skip this check.

Fixes: https://tracker.ceph.com/issues/73790
Fixes: https://tracker.ceph.com/issues/72864
Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 weeks agocrimson/os/seastore/cache: get_absent_extent to accept pin_crc
Matan Breizman [Sun, 7 Dec 2025 10:31:41 +0000 (10:31 +0000)]
crimson/os/seastore/cache: get_absent_extent to accept pin_crc

Allow pin_to_extent_by_type and pin_to_extent to pass the pin CRC.
As get_absent_extent and read_extent has other users which are not
pin_to_extent - use CRC_NULL as the default value.
This change would allow us to move the integrity checks to _read_extent.
See next commit.

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 weeks agocrimson/os/seastore/transaction_manager: add logs pin_to_extent
Matan Breizman [Sun, 7 Dec 2025 10:13:08 +0000 (10:13 +0000)]
crimson/os/seastore/transaction_manager: add logs pin_to_extent

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 weeks agocrimson/os/seastore/transaction_manager: pin_to_extent_by_type into
Matan Breizman [Sun, 7 Dec 2025 10:07:17 +0000 (10:07 +0000)]
crimson/os/seastore/transaction_manager: pin_to_extent_by_type into
coroutines

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 weeks agocrimson/os/seastore/transaction_manager: pin_to_extent into coroutines
Matan Breizman [Sun, 7 Dec 2025 10:03:58 +0000 (10:03 +0000)]
crimson/os/seastore/transaction_manager: pin_to_extent into coroutines

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 weeks agocrimson/os/seastore/transaction_manager: add logs to remap_pin
Matan Breizman [Sun, 7 Dec 2025 15:15:29 +0000 (15:15 +0000)]
crimson/os/seastore/transaction_manager: add logs to remap_pin

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 weeks agocrimson/os/seastore/transaction_manager: remap_pin into coroutines
Matan Breizman [Sun, 7 Dec 2025 14:51:44 +0000 (14:51 +0000)]
crimson/os/seastore/transaction_manager: remap_pin into coroutines

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 weeks agoMerge pull request #66070 from samarahu/rgw-d4n-unit-test-fix
Samarah Uriarte [Mon, 8 Dec 2025 14:32:35 +0000 (08:32 -0600)]
Merge pull request #66070 from samarahu/rgw-d4n-unit-test-fix

Reviewed-by: Pritha Srivastava <prsrivas@redhat.com>
4 weeks agoinclude/cpp-btree: fix array bounds warning in child() accessors
Kefu Chai [Mon, 8 Dec 2025 08:29:00 +0000 (16:29 +0800)]
include/cpp-btree: fix array bounds warning in child() accessors

Replace array indexing with pointer arithmetic in child() and
mutable_child() methods to avoid compiler warning when accessing
child nodes beyond the static array bounds.

The original code was functionally correct but triggered
-Warray-bounds when accessing mutable_child(32) during btree
operations. Using pointer arithmetic achieves the same result
without the bounds check warning.

This is a follow-up to commit 8458a19ab which fixed similar
warnings in other btree_node methods.

No functional changes.

Fixes: https://tracker.ceph.com/issues/72477
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
4 weeks agoMerge pull request #66402 from afreen23/remove-ng
Afreen Misbah [Mon, 8 Dec 2025 10:03:05 +0000 (15:33 +0530)]
Merge pull request #66402 from afreen23/remove-ng

mgr/dashboard: Remove ng script

Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: pujaoshahu <pshahu@redhat.com>
4 weeks agoMerge pull request #62002 from mohit84/crimson_mclock_1
Matan Breizman [Mon, 8 Dec 2025 09:40:59 +0000 (11:40 +0200)]
Merge pull request #62002 from mohit84/crimson_mclock_1

crimson: Support mclock for crimson

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
4 weeks agocrimson/os/seastore/transaction_manager: Move CRC_NULL checks
Matan Breizman [Sun, 7 Dec 2025 09:53:03 +0000 (09:53 +0000)]
crimson/os/seastore/transaction_manager: Move CRC_NULL checks

check_full_extent_integrity would allow for CRC_NULL (0) checksums
when `full_extent_integrity_check` was false. Instead, move this
check as an assertiion into TransactionManager::read_pin.

This would allow us to reuse CRC_NULL concept for more purposes e.g
skipping integrity checks when no CRC is passed (next commits).

Note: With this change check_full_extent_integrity could be called
      only on non CRC_NULL, the check would be moved in next commits.

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 weeks agoMerge pull request #65729 from tchaikov/cmake-link-ceph-common
Kefu Chai [Mon, 8 Dec 2025 07:38:31 +0000 (15:38 +0800)]
Merge pull request #65729 from tchaikov/cmake-link-ceph-common

cmake: convert erasure_code and json_spirit to OBJECT libraries

Reviewed-by: Patrick Donnelly <pdonnell@ibm.com>
4 weeks agodoc: Use validated links with ref instead of external links
Ville Ojamo [Wed, 22 Oct 2025 07:19:31 +0000 (14:19 +0700)]
doc: Use validated links with ref instead of external links

Use :ref: for intra-docs links that are validated, instead of external
links.
Only use already existing labels.
Fixes a few anchors that pointed to now-renamed section titles.
Use automatically generated link text where appropriate.
Delete unused link definitions.

Mostly in doc/rados/ but also a few in doc/rbd/.
Try to fix all links in each of the changed documents.

Signed-off-by: Ville Ojamo <14869000+bluikko@users.noreply.github.com>
4 weeks agoMerge pull request #66489 from joscollin/wip-drop-double-check
Venky Shankar [Mon, 8 Dec 2025 04:34:42 +0000 (10:04 +0530)]
Merge pull request #66489 from joscollin/wip-drop-double-check

mds: drop checking CEPH_MDS_OP_SETLAYOUT two times

Reviewed-by: Patrick Donnelly <pdonnell@ibm.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
4 weeks agocrimson/os/seastore: Introduce check_full_extent_integrity helper
Matan Breizman [Wed, 3 Dec 2025 13:02:27 +0000 (13:02 +0000)]
crimson/os/seastore: Introduce check_full_extent_integrity helper

This is an intermediate step to move the crc checks to Cache logic.

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 weeks agoMerge pull request #66158 from xxhdx1985126/wip-seastore-minor-perf-issue
Matan Breizman [Sun, 7 Dec 2025 08:16:57 +0000 (10:16 +0200)]
Merge pull request #66158 from xxhdx1985126/wip-seastore-minor-perf-issue

crimson/os/seastore/epm: avoid unnecessary container copies

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
4 weeks agocmake: convert erasure_code and json_spirit to OBJECT libraries wip-pr-65729-kefu
Kefu Chai [Tue, 30 Sep 2025 10:38:31 +0000 (18:38 +0800)]
cmake: convert erasure_code and json_spirit to OBJECT libraries

This resolves a circular dependency issue where ceph-common was linked
against erasure_code and json_spirit static libraries, while these
libraries themselves referenced symbols from ceph-common, creating an
unresolvable circular dependency. The static libraries were incorrectly
marked PUBLIC, causing executables linking against ceph-common to also
link against them directly.

The circular dependency manifested as linker errors in tests like
ceph_test_ino_release_cb, where libjson_spirit.a and liberasure_code.a
contained undefined references to ceph-common symbols (e.g.,
ceph::__ceph_assert_fail and get_str_list) that couldn't be resolved
due to the linking order.

For instance, ceph_test_ino_release_cb failed to link:
```
/usr/bin/ld: ../../../lib/libcephfs.so.2.0.0: undefined reference to symbol '_ZN4ceph18__ceph_assert_failERKNS_11assert_dataE'
/usr/bin/ld: ../../../lib/libceph-common.so.2: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
```

Changes:

- Convert erasure_code and json_spirit from STATIC to OBJECT libraries
- Embed their object files directly into ceph-common during linking,
  breaking the circular dependency and preventing public propagation
  of these dependencies to downstream targets
- Remove direct linkage from targets that already get these symbols
  through ceph-common dependencies:
  * Erasure code unit tests (unittest_erasure_code_isa,
    unittest_erasure_code_plugin_isa, unittest_erasure_code_example)
  * Test libraries (radostest)
  * Plugins (denc-mod-osd, cls_refcount, cls_rgw, cls_lua, ec_lrc)

This also prevents ODR violations that would occur if targets linked
against these libraries directly while also getting them from
ceph-common. Such violations cause undefined behavior including
segmentation faults, as static variables and vtables would exist in
duplicate, leading to crashes during destruction or when accessing
shared state.

For example, before removing direct linkage from plugins, ceph-dencoder
would segfault on certain object types:

  /ceph/src/test/encoding/readable.sh: line 111: Segmentation fault
  $CEPH_DENCODER type ScrubMap import ... decode encode decode dump_json

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
5 weeks agomgr/dashboard: add API endpoint for consistency group name update
Imran Imtiaz [Fri, 5 Dec 2025 08:46:40 +0000 (08:46 +0000)]
mgr/dashboard: add API endpoint for consistency group name update

Signed-off-by: Imran Imtiaz <imran.imtiaz@uk.ibm.com>
Fixes: https://tracker.ceph.com/issues/74121
Add a dashboard API endpoint to update (rename) consistency groups.

5 weeks agoMerge pull request #65274 from ifed01/wip-ifed-more-max-lat
Igor Fedotov [Wed, 3 Dec 2025 14:46:08 +0000 (17:46 +0300)]
Merge pull request #65274 from ifed01/wip-ifed-more-max-lat

os/bluestore: track max latencies for key bluestore/bluefs perf counters

Reviewed-by: Adam Kupczyk <akupczyk@ibm.com>
5 weeks agosrc/test/crimson/CMakeLists: include dmclock wip-moagrawa-crimson-mclock-debug
Mohit Agrawal [Thu, 6 Nov 2025 12:52:23 +0000 (18:22 +0530)]
src/test/crimson/CMakeLists: include dmclock

Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
5 weeks agocrimson/CMakeLists.txt: include dmclock
Mohit Agrawal [Mon, 28 Jul 2025 14:44:47 +0000 (20:14 +0530)]
crimson/CMakeLists.txt: include dmclock

Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
5 weeks agocrimson/mclock_scheduler: Support mclock for crimson
Mohit Agrawal [Mon, 28 Jul 2025 13:25:41 +0000 (18:55 +0530)]
crimson/mclock_scheduler: Support mclock for crimson

The patch is trying to sync mclock source of crimson similar to
classic osds. Currently the feature is use by crimson only for
background recovery operations but later we will use it for other
OSD operations also.To use the same user need to configure
crimson_osd_scheduler_concurrency parameter for osd.

Replace item_t with WorkItem variant to maintain similarity
with classic OSD.

Introduce cost and priority as part of item_t.

Fixes: https://tracker.ceph.com/issues/67367
Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
5 weeks agocrimson/background_recovery: switch to unified SchedulerClass and introduce get_avera...
Mohit Agrawal [Mon, 28 Jul 2025 13:19:14 +0000 (18:49 +0530)]
crimson/background_recovery: switch to unified SchedulerClass and introduce get_average_object_size for pg

1)  Replace usage of crimson::osd::scheduler::scheduler_class_t
    with unified SchedulerClass
2) Add priority to scheduler params structure
3) Introduce get_average_object_size for pg

Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
5 weeks agocrimson/osd: Refactor crimson scheduler wrapper
Mohit Agrawal [Mon, 28 Jul 2025 13:03:38 +0000 (18:33 +0530)]
crimson/osd: Refactor crimson scheduler wrapper

Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
5 weeks agocrimson/osd,osd_operation: initialize mClock scheduler, detect rotational devices...
Mohit Agrawal [Mon, 28 Jul 2025 12:48:57 +0000 (18:18 +0530)]
crimson/osd,osd_operation: initialize mClock scheduler, detect rotational devices, and run OperationThrottler background task

Initialize the mClock scheduler on all shards when the device class
is non-rotational. If the device is rotational throw an exception
to prevent unsupported configurations.

In addition, introduce a background task in OperationThrottler that
continuously dequeues and schedules client requests from the mClock
scheduler based on available credits and throttling limits.

Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
5 weeks agocommon/mclock_common: Declared MonClient for crimson in mclock_common
Mohit Agrawal [Mon, 28 Jul 2025 12:08:07 +0000 (17:38 +0530)]
common/mclock_common: Declared MonClient for crimson in mclock_common

Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
5 weeks agoMerge pull request #66453 from aainscow/lrc_fix
NitzanMordhai [Wed, 3 Dec 2025 09:55:59 +0000 (11:55 +0200)]
Merge pull request #66453 from aainscow/lrc_fix

osd: Perform shard look up correctly in partial EC writes

5 weeks agoMerge pull request #66384 from bill-scales/issue72879
NitzanMordhai [Wed, 3 Dec 2025 09:54:19 +0000 (11:54 +0200)]
Merge pull request #66384 from bill-scales/issue72879

Fix teuthology timeout issues with bluestore software compression and improve thread heartbeat timeout code

5 weeks agoMerge PR #66093 into main
Venky Shankar [Wed, 3 Dec 2025 06:40:18 +0000 (12:10 +0530)]
Merge PR #66093 into main

* refs/pull/66093/head:

Reviewed-by: John Mulligan <jmulligan@redhat.com>
Reviewed-by: Anoop C S <anoopcs@cryptolab.net>
Reviewed-by: Shwetha Acharya <sacharya@redhat.com>
5 weeks agomds: drop checking CEPH_MDS_OP_SETLAYOUT two times
Jos Collin [Tue, 2 Dec 2025 12:58:13 +0000 (18:28 +0530)]
mds: drop checking CEPH_MDS_OP_SETLAYOUT two times

Signed-off-by: Jos Collin <jcollin@redhat.com>
5 weeks agoqa/d4n: Update host checks
Samarah [Tue, 18 Nov 2025 16:21:40 +0000 (16:21 +0000)]
qa/d4n: Update host checks

Signed-off-by: Samarah <samarah.uriarte@ibm.com>
5 weeks agotest/d4n: Add temporary eviction testing
Samarah [Mon, 24 Nov 2025 20:14:13 +0000 (20:14 +0000)]
test/d4n: Add temporary eviction testing

Signed-off-by: Samarah <samarah.uriarte@ibm.com>