]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/log
ceph.git
4 days agoMerge pull request #68258 from tchaikov/wip-with-system-jerasure
Kefu Chai [Tue, 26 May 2026 09:53:02 +0000 (17:53 +0800)]
Merge pull request #68258 from tchaikov/wip-with-system-jerasure

cmake: support building with system jerasure and gf-complete

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 days agoMerge pull request #61131 from NitzanMordhai/wip-nitzan-mgr-modules-perf-counts
NitzanMordhai [Tue, 26 May 2026 09:31:45 +0000 (12:31 +0300)]
Merge pull request #61131 from NitzanMordhai/wip-nitzan-mgr-modules-perf-counts

mgr: Add per-module performance counters to mgr

Reviewed-by: Sridhar Seshasayee sridhar.seshasayee@ibm.com
4 days agoMerge pull request #68858 from rsacherer/wip-fix-limit-break-existing-devices
Guillaume Abrioux [Tue, 26 May 2026 09:19:03 +0000 (11:19 +0200)]
Merge pull request #68858 from rsacherer/wip-fix-limit-break-existing-devices

ceph-volume: fix re-deployment of OSD issues with disk selection filters and DB Devices

4 days agoMerge pull request #67935 from rhcs-dashboard/add-csv
Pedro Gonzalez Gomez [Tue, 26 May 2026 09:06:14 +0000 (11:06 +0200)]
Merge pull request #67935 from rhcs-dashboard/add-csv

mgr/dashboard: Add Hosts via CSV Upload

Reviewed-by: Devika Babrekar <devika.babrekar@ibm.com>
Reviewed-by: Puja Shahu <pshahu@redhat.com>
Reviewed-by: Pedro Gonzalez Gomez <pegonzal@ibm.com>
4 days agoMerge pull request #68894 from guits/cv-dm-mgmt
Guillaume Abrioux [Tue, 26 May 2026 09:04:53 +0000 (11:04 +0200)]
Merge pull request #68894 from guits/cv-dm-mgmt

ceph-volume: OSD mapper lifecycle (LVM + raw) for activate

4 days agoMerge pull request #69064 from tchaikov/wip-crimson-scrub-blocked
Matan Breizman [Tue, 26 May 2026 08:02:54 +0000 (11:02 +0300)]
Merge pull request #69064 from tchaikov/wip-crimson-scrub-blocked

crimson/scrub: fix assert in PGScrubber::release_range() on interval change

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
4 days agoMerge pull request #69020 from tchaikov/wip-level-triggered-unblock
Matan Breizman [Tue, 26 May 2026 08:01:14 +0000 (11:01 +0300)]
Merge pull request #69020 from tchaikov/wip-level-triggered-unblock

crimson/osd: only unblock wait_for_active_blocker on replica when ACTIVE

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
4 days agoMerge pull request #69018 from tchaikov/wip-large-object-size
Matan Breizman [Tue, 26 May 2026 08:00:37 +0000 (11:00 +0300)]
Merge pull request #69018 from tchaikov/wip-large-object-size

crimson/seastore: reject oversized writes and zeros instead of aborting

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
4 days agoMerge pull request #59476 from zhscn/wip-new-128
Xuehan Xu [Tue, 26 May 2026 05:40:09 +0000 (13:40 +0800)]
Merge pull request #59476 from zhscn/wip-new-128

crimson/os/seastore: introduce static layout of laddr_t

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Reviewed-by: Anthony D Atri <anthony.datri@gmail.com>
4 days agoMerge pull request #68887 from ShreeJejurikar/wip-bucket-logging-requester-assumed...
Yuval Lifshitz [Tue, 26 May 2026 04:58:58 +0000 (07:58 +0300)]
Merge pull request #68887 from ShreeJejurikar/wip-bucket-logging-requester-assumed-role

rgw/logging: use assumed-role ARN as Requester for STS requests

4 days agoMerge pull request #69067 from xxhdx1985126/wip-seastore-lba-wrong-asserts
Xuehan Xu [Tue, 26 May 2026 02:54:07 +0000 (10:54 +0800)]
Merge pull request #69067 from xxhdx1985126/wip-seastore-lba-wrong-asserts

crimson/os/seastore/lba: fix wrong asserts and "if" conditions

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
4 days agoMerge pull request #69082 from ronen-fr/wip-rf-trimlmt-rst
Ronen Friedman [Mon, 25 May 2026 18:27:42 +0000 (21:27 +0300)]
Merge pull request #69082 from ronen-fr/wip-rf-trimlmt-rst

doc/PendingReleaseNotes: document osd_scrub_queued_snaptrims_limit

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
4 days agodoc/PendingReleaseNotes: document osd_scrub_queued_snaptrims_limit 69082/head
Ronen Friedman [Mon, 25 May 2026 13:13:03 +0000 (13:13 +0000)]
doc/PendingReleaseNotes: document osd_scrub_queued_snaptrims_limit

osd_scrub_queued_snaptrims_limit, introduced in PR#68737,
blocks the initiation of non-urgent scrubs on OSDs that
are overloaded with snap-trim operations.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
4 days agoqa/rgw/bucket-logging: configure STS for assume-role test 68887/head
ShreeJejurikar [Wed, 20 May 2026 07:18:03 +0000 (12:48 +0530)]
qa/rgw/bucket-logging: configure STS for assume-role test

Set rgw sts key and enable rgw s3 auth use sts, both needed by
test_bucket_logging_requester_assumed_role. Mirrors the existing
settings in qa/suites/rgw/verify/overrides.yaml.

Signed-off-by: ShreeJejurikar <shreemj8@gmail.com>
4 days agoMerge pull request #69006 from tchaikov/wip-seastore-clamp-block-size-on-small-lba
Matan Breizman [Mon, 25 May 2026 10:39:18 +0000 (13:39 +0300)]
Merge pull request #69006 from tchaikov/wip-seastore-clamp-block-size-on-small-lba

crimson/seastore: clamp block_size to laddr_t::UNIT_SIZE on small-LBA devices

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
5 days agoMerge pull request #68961 from fultheim/fix-cleaner-stall-projected-ratio
Matan Breizman [Mon, 25 May 2026 10:24:59 +0000 (13:24 +0300)]
Merge pull request #68961 from fultheim/fix-cleaner-stall-projected-ratio

crimson/os/seastore: fix cleaner stall under IO-block pressure

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
5 days agoMerge pull request #68884 from tchaikov/wip-crimson-advance-osdmap
Matan Breizman [Mon, 25 May 2026 09:27:01 +0000 (12:27 +0300)]
Merge pull request #68884 from tchaikov/wip-crimson-advance-osdmap

crimson/osd: fix mark-down crash for removed OSDs

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
5 days agoMerge pull request #68861 from tchaikov/wip-crimson-reset-logger
Matan Breizman [Mon, 25 May 2026 09:26:06 +0000 (12:26 +0300)]
Merge pull request #68861 from tchaikov/wip-crimson-reset-logger

crimson/osd: inline log file stream setup to fix dangling pointer

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
5 days agoMerge pull request #69042 from Shubhaj1810/revert-67999
Redouane Kachach [Mon, 25 May 2026 09:14:57 +0000 (11:14 +0200)]
Merge pull request #69042 from Shubhaj1810/revert-67999

Revert "mgr/cephadm: align nodeid and add register_service for NFS Ganesha service visibility"

Reviewed-by: Shweta Bhosale <Shweta.Bhosale1@ibm.com>
5 days agocrimson/os/seastore: also update the mappings copied by client 59476/head
Xuehan Xu [Fri, 15 May 2026 09:10:04 +0000 (17:10 +0800)]
crimson/os/seastore: also update the mappings copied by client
transactions when committing background rewriting transactions

With the 128-bit laddr key layout in place, SeaStore::rename would
involve copying mappings. These mappings must also be updated when
the logical extents they point to are rewritten.

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agocrimson/os/seastore/omap_manager/log: better output
Xuehan Xu [Tue, 28 Apr 2026 07:00:24 +0000 (15:00 +0800)]
crimson/os/seastore/omap_manager/log: better output

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agodoc/dev/crimson/seastore_laddr.rst: add descriptions about temp
Xuehan Xu [Sun, 10 May 2026 07:36:22 +0000 (15:36 +0800)]
doc/dev/crimson/seastore_laddr.rst: add descriptions about temp
recovering objects

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agocrimson/osd: treat OI-not-existing cases as enoent
Xuehan Xu [Thu, 16 Apr 2026 05:47:18 +0000 (13:47 +0800)]
crimson/osd: treat OI-not-existing cases as enoent

This is consistent with classic osds

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agocrimson/os/seastore/object_data_handler: new debug logs
Xuehan Xu [Tue, 14 Apr 2026 06:00:52 +0000 (14:00 +0800)]
crimson/os/seastore/object_data_handler: new debug logs

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agocrimson/osd: create temp recovering objects through touch_temp
Xuehan Xu [Wed, 22 Apr 2026 05:37:46 +0000 (13:37 +0800)]
crimson/osd: create temp recovering objects through touch_temp

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agocrimson/os/seastore: handle OP_TOUCH_TEMP
Xuehan Xu [Sun, 29 Mar 2026 03:20:52 +0000 (11:20 +0800)]
crimson/os/seastore: handle OP_TOUCH_TEMP

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agoos/Transaction: add the interface dedicated to touching temp objects
Xuehan Xu [Thu, 26 Mar 2026 08:08:41 +0000 (16:08 +0800)]
os/Transaction: add the interface dedicated to touching temp objects

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agocrimson/os/seastore/lba: fix possible namespace lookup error
Xuehan Xu [Tue, 3 Feb 2026 03:11:33 +0000 (11:11 +0800)]
crimson/os/seastore/lba: fix possible namespace lookup error

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agodev/doc/crimson: clarify dynamic PG and object bits for static laddr design
Zhang Song [Thu, 8 Jan 2026 04:14:20 +0000 (12:14 +0800)]
dev/doc/crimson: clarify dynamic PG and object bits for static laddr design

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agocrimson/os/seastore: adapt copy on write for static onode prefix
Zhang Song [Wed, 3 Sep 2025 07:54:40 +0000 (15:54 +0800)]
crimson/os/seastore: adapt copy on write for static onode prefix

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agocrimson/os/seastore: support rename for static layout of laddr
Zhang Song [Tue, 26 Aug 2025 03:42:49 +0000 (11:42 +0800)]
crimson/os/seastore: support rename for static layout of laddr

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agocrimson/os/seastore: add "move_mapping" to TransactionManager and LBAManager
Xuehan Xu [Tue, 26 Aug 2025 06:28:55 +0000 (14:28 +0800)]
crimson/os/seastore: add "move_mapping" to TransactionManager and LBAManager

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agocrimson/os/seastore/lba: set extent type for ZERO lba mappings
Xuehan Xu [Mon, 2 Feb 2026 07:42:49 +0000 (15:42 +0800)]
crimson/os/seastore/lba: set extent type for ZERO lba mappings

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
5 days agomgr/dashboard: Add Hosts via CSV Upload 67935/head
Sagar Gopale [Mon, 23 Mar 2026 06:08:44 +0000 (11:38 +0530)]
mgr/dashboard: Add Hosts via CSV Upload

Fixes: https://tracker.ceph.com/issues/75578
Signed-off-by: Sagar Gopale <sagar.gopale@ibm.com>
5 days agoMerge pull request #68667 from rhcs-dashboard/fix-76316-main
Redouane Kachach [Mon, 25 May 2026 08:32:23 +0000 (10:32 +0200)]
Merge pull request #68667 from rhcs-dashboard/fix-76316-main

mgr/dashboard: add remote write section to prometheus configuration

Reviewed-by: Redouane Kachach <rkachach@ibm.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
5 days agoworkunits/mgr/test_mgr_modules_perf_counters: new test for enable\disable\perf counts 61131/head
Nitzan Mordechai [Tue, 17 Dec 2024 13:49:00 +0000 (13:49 +0000)]
workunits/mgr/test_mgr_modules_perf_counters: new test for enable\disable\perf counts

Simple test to enable \ disable and get counters dump
for checking perf counters.

Signed-off-by: Nitzan Mordechai <nmordech@redhat.com>
5 days agomgr: Add per-module performance counters to mgr
Nitzan Mordechai [Sun, 8 Dec 2024 18:08:39 +0000 (18:08 +0000)]
mgr: Add per-module performance counters to mgr

This commit introduces performance counters for individual Ceph mgr modules.
These counters allow monitoring module behavior, debugging latency issues,
and identifying performance bottlenecks, all without modifying the modules themselves.

The following counters are now exposed under:
  > ceph daemon mgr.<id> perf dump

Example structure:
"mgr_module_<module_name>": {
    "notify_avg_usec": {     <- Average time spent handling notify events
        "avgcount": 0,
        "sum": 0
    },
    "cmd_avg_usec": {        <- Average time spent processing CLI/admin commands
        "avgcount": 0,
        "sum": 0
    },
    "serve_avg_usec": {      <- Average time spent in module serve loop (if applicable)
        "avgcount": 0,
        "sum": 0
    },
    "alive": 1               <- Module is alive (1 = running, 0 = exited)
    "cpu_usage": 0,          <- CPU usage in percent
    "mem_rss_change": 0,     <- Memory RSS change in bytes
    "mem_rss_current": 490737664 <- Memory RSS current in bytes

}

Signed-off-by: Nitzan Mordechai <nmordech@ibm.com>
Conflicts:
  src/mgr/ActivePyModules.cc - finisher.queue changed by 63859, adding py_module to the parameter list
  src/mgr/PyModuleRegistry.cc - check_all_modules_started added by 63859

5 days agoceph-volume: OSD mapper lifecycle (LVM + raw) for activate 68894/head
Guillaume Abrioux [Wed, 13 May 2026 12:57:03 +0000 (14:57 +0200)]
ceph-volume: OSD mapper lifecycle (LVM + raw) for activate

This adds small helpers so activate can consistently bring the OSD device
stack online (LVM lvchange, optional mapper open) and tear it down again,
with refresh in between. Same idea for the raw path. Crypto is handled
inside that flow when the OSD is encrypted.

Fixes: https://tracker.ceph.com/issues/76591
Signed-off-by: Guillaume Abrioux <gabrioux@ibm.com>
5 days agoMerge pull request #68771 from jrse/rgw-kafka-mtls-rebased
Yuval Lifshitz [Sun, 24 May 2026 19:29:38 +0000 (22:29 +0300)]
Merge pull request #68771 from jrse/rgw-kafka-mtls-rebased

rgw/kafka: add mTLS support (extends #61572)

6 days agoMerge pull request #66150 from MaodiMa/AVX512_crc32c
Kefu Chai [Sun, 24 May 2026 09:55:45 +0000 (17:55 +0800)]
Merge pull request #66150 from MaodiMa/AVX512_crc32c

common: enable AVX512+VPCLMULQDQ for crc32c performance on x86

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
6 days agocrimson/os/seastore/lba: fix wrong asserts and "if" conditions 69067/head
Xuehan Xu [Sat, 23 May 2026 09:23:02 +0000 (17:23 +0800)]
crimson/os/seastore/lba: fix wrong asserts and "if" conditions

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore/OMapManager: only store the relative block offset to omap root...
Zhang Song [Fri, 30 May 2025 09:45:39 +0000 (17:45 +0800)]
crimson/os/seastore/OMapManager: only store the relative block offset to omap root in OMapInnerNode

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agotest/crimson/seastore/test_btree_lba_manager: add test cases for conflict policy
Zhang Song [Tue, 27 May 2025 07:31:13 +0000 (15:31 +0800)]
test/crimson/seastore/test_btree_lba_manager: add test cases for conflict policy

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore/lba_manager: implement conflict policy
Zhang Song [Tue, 26 Aug 2025 03:38:49 +0000 (11:38 +0800)]
crimson/os/seastore/lba_manager: implement conflict policy

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore: reserve region in LBABtree when touching onode
Zhang Song [Wed, 11 Jun 2025 04:04:25 +0000 (12:04 +0800)]
crimson/os/seastore: reserve region in LBABtree when touching onode

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore/OnodeManager: adapt laddr_hint_t approach
Zhang Song [Wed, 11 Jun 2025 04:04:03 +0000 (12:04 +0800)]
crimson/os/seastore/OnodeManager: adapt laddr_hint_t approach

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore/OMapManager: adapt laddr_hint_t approach
Zhang Song [Mon, 26 May 2025 07:23:25 +0000 (15:23 +0800)]
crimson/os/seastore/OMapManager: adapt laddr_hint_t approach

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore: use laddr_hint_t to allocate the laddr
Zhang Song [Tue, 26 Aug 2025 03:36:07 +0000 (11:36 +0800)]
crimson/os/seastore: use laddr_hint_t to allocate the laddr

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore/Onode: get sibling's object id when creating new onode
Zhang Song [Wed, 11 Jun 2025 03:50:12 +0000 (11:50 +0800)]
crimson/os/seastore/Onode: get sibling's object id when creating new onode

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore/Onode: adapt new get hint approach
Zhang Song [Tue, 26 Aug 2025 03:34:37 +0000 (11:34 +0800)]
crimson/os/seastore/Onode: adapt new get hint approach

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore/Onode: support get object/clone prefix
Zhang Song [Thu, 22 May 2025 08:58:14 +0000 (16:58 +0800)]
crimson/os/seastore/Onode: support get object/clone prefix

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore/Onode: remove default metadata offset/range
Zhang Song [Tue, 26 Aug 2025 03:31:03 +0000 (11:31 +0800)]
crimson/os/seastore/Onode: remove default metadata offset/range

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore: introduce laddr_hint_t and associated factory methods
Zhang Song [Wed, 14 May 2025 08:34:00 +0000 (16:34 +0800)]
crimson/os/seastore: introduce laddr_hint_t and associated factory methods

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore: make pladdr_t only store the local clone id instead of full...
Zhang Song [Tue, 26 Aug 2025 02:35:55 +0000 (10:35 +0800)]
crimson/os/seastore: make pladdr_t only store the local clone id instead of full laddr_t

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore: introduce static layout of laddr_t
Zhang Song [Wed, 14 May 2025 08:26:26 +0000 (16:26 +0800)]
crimson/os/seastore: introduce static layout of laddr_t

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agocrimson/os/seastore: extend the size of laddr_t from 64 bits to 128 bits
Zhang Song [Wed, 14 May 2025 07:22:15 +0000 (15:22 +0800)]
crimson/os/seastore: extend the size of laddr_t from 64 bits to 128 bits

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
6 days agoMerge pull request #69045 from xxhdx1985126/wip-seastore-drop-retired-placeholder
Kefu Chai [Sat, 23 May 2026 13:56:32 +0000 (21:56 +0800)]
Merge pull request #69045 from xxhdx1985126/wip-seastore-drop-retired-placeholder

crimson/os/seastore: remove RetiredExtentPlaceholder

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
6 days agoMerge pull request #68823 from tchaikov/wip-crimson-remove-from
Kefu Chai [Sat, 23 May 2026 13:33:14 +0000 (21:33 +0800)]
Merge pull request #68823 from tchaikov/wip-crimson-remove-from

crimson/osd: make PGAdvanceMap idempotent

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
6 days agocrimson/scrub: fix assert in PGScrubber::release_range() on interval change 69064/head
Kefu Chai [Fri, 22 May 2026 11:01:17 +0000 (19:01 +0800)]
crimson/scrub: fix assert in PGScrubber::release_range() on interval change

when an interval change occurs while ScrubReserveRange is still
waiting to acquire background_process_lock, ChunkState::exit()
calls release_range() but blocked is not yet set. this triggers
ceph_assert(blocked) in release_range().

fix by checking if blocked is set before asserting. if blocked is
not set, the range was never reserved, so release_range() is a
no-op. ScrubReserveRange's finally block handles lock cleanup in
this case.

Fixes: https://tracker.ceph.com/issues/76752
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
7 days agoMerge pull request #68684 from ronen-fr/wip-rf-statfx
Ronen Friedman [Sat, 23 May 2026 08:04:45 +0000 (11:04 +0300)]
Merge pull request #68684 from ronen-fr/wip-rf-statfx

osd/scrub: auto-correct accounting-only stat mismatches

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
7 days agoMerge pull request #68292 from Kushal-deb/fix-nvme-gw-crash
Redouane Kachach [Sat, 23 May 2026 08:04:37 +0000 (10:04 +0200)]
Merge pull request #68292 from Kushal-deb/fix-nvme-gw-crash

mgr/cephadm: fix nvmeof reconfig loop by preserving daemon deps

Reviewed-by: Redouane Kachach <rkachach@ibm.com>
7 days agoMerge pull request #67308 from rkachach/fix_issue_ssl_cert_deps
Redouane Kachach [Sat, 23 May 2026 08:04:03 +0000 (10:04 +0200)]
Merge pull request #67308 from rkachach/fix_issue_ssl_cert_deps

mgr/cephadm: track TLS spec changes in deps and cleanup stale certmgr entries on cert source transitions

Reviewed-by: Shweta Bhosale <Shweta.Bhosale1@ibm.com>
7 days agoMerge pull request #68737 from ronen-fr/wip-rf-stqlength
Ronen Friedman [Sat, 23 May 2026 07:50:42 +0000 (10:50 +0300)]
Merge pull request #68737 from ronen-fr/wip-rf-stqlength

crimson+classic/osd/scrub: limit scrubbing under snap-trimming overload

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
7 days agofeat(rgw/kafka): add mTLS client certificate authentication for Kafka notifications 68771/head
Jan Radon [Fri, 15 May 2026 13:42:08 +0000 (15:42 +0200)]
feat(rgw/kafka): add mTLS client certificate authentication for Kafka notifications
Add support for mutual TLS (mTLS) client certificate authentication
when publishing bucket notifications to Kafka brokers. RGW can now
present a client certificate and private key to authenticate with
brokers that require ssl.client.auth=required.
Changes:
- Add ssl-certificate-location, ssl-key-location, and ssl-key-password
  topic attributes for configuring client certificates
- Validate that ssl_certificate and ssl_key are provided together
- Include ssl_key_password in connection identity (hash/equality)
- Add kafka-security.sh script for generating broker and client TLS certs
- Add mTLS test (test_notification_kafka_security_ssl_mtls) using
  use_mtls=True flag on the existing SSL security path
- Update RGW notifications documentation with mTLS parameters

Fixes: http://tracker.ceph.com/issues/67427
Signed-off-by: Jan Radon <jan.fabian.radon@sap.com>
7 days agoMerge pull request #67315 from timqn22/misreporting_count_osd_services
Redouane Kachach [Fri, 22 May 2026 19:28:33 +0000 (21:28 +0200)]
Merge pull request #67315 from timqn22/misreporting_count_osd_services

mgr/cephadm: verify spec service_id before applying

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
Reviewed-by: Shweta Bhosale <Shweta.Bhosale1@ibm.com>
Reviewed-by: Adam King <adking@redhat.com>
7 days agoMerge pull request #66477 from xelexin/fix_cephadm_agent_volume_gatherer
Redouane Kachach [Fri, 22 May 2026 19:27:37 +0000 (21:27 +0200)]
Merge pull request #66477 from xelexin/fix_cephadm_agent_volume_gatherer

orch/cephadm: Fixes an unlimited env append in cephadm agent

Reviewed-by: Adam King <adking@redhat.com>
7 days agoMerge pull request #68902 from timqn22/logrotate-list
Redouane Kachach [Fri, 22 May 2026 19:26:44 +0000 (21:26 +0200)]
Merge pull request #68902 from timqn22/logrotate-list

src/cephadm: added ceph-exporter to post-rotate signal list

Reviewed-by: Redouane Kachach <rkachach@ibm.com>
Reviewed-by: Kefu Chai <k.chai@proxmox.com>
7 days agoMerge pull request #68915 from kginonredhat/issue-76564-mgr-daemon-ports-list-grows...
Redouane Kachach [Fri, 22 May 2026 19:25:50 +0000 (21:25 +0200)]
Merge pull request #68915 from kginonredhat/issue-76564-mgr-daemon-ports-list-grows-unbounded-across-redeploys

mgr daemon ports list grows unbounded across redeploys

Reviewed-by: Redouane Kachach <rkachach@ibm.com>
7 days agoMerge pull request #68976 from kginonredhat/issue-76295-nfs-sample-enable-udp-false
Redouane Kachach [Fri, 22 May 2026 19:24:54 +0000 (21:24 +0200)]
Merge pull request #68976 from kginonredhat/issue-76295-nfs-sample-enable-udp-false

cephadm: disable UDP in samples/nfs.json for test_cephadm Ganesha

Reviewed-by: Redouane Kachach <rkachach@ibm.com>
Reviewed-by: Shweta Bhosale <Shweta.Bhosale1@ibm.com>
7 days agomgr/cephadm: adding UT for the new functionality 67308/head
Redouane Kachach [Mon, 9 Mar 2026 15:11:50 +0000 (16:11 +0100)]
mgr/cephadm: adding UT for the new functionality

Fixes: https://tracker.ceph.com/issues/75009
Signed-off-by: Redouane Kachach <rkachach@ibm.com>
7 days agomgr/cephadm: moving certificates reconciliation code to a new method
Redouane Kachach [Mon, 23 Feb 2026 15:15:12 +0000 (16:15 +0100)]
mgr/cephadm: moving certificates reconciliation code to a new method

This way we ensure it's called everytime there's a switch in the
certificate

Signed-off-by: Redouane Kachach <rkachach@ibm.com>
8 days agocrimson/os/seastore: drop RetiredExtentPlaceholder 69045/head
Xuehan Xu [Thu, 21 May 2026 07:10:59 +0000 (15:10 +0800)]
crimson/os/seastore: drop RetiredExtentPlaceholder

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
8 days agocrimson/os/seastore/cache: remove retire_extent_addr
Xuehan Xu [Thu, 21 May 2026 06:50:42 +0000 (14:50 +0800)]
crimson/os/seastore/cache: remove retire_extent_addr

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
8 days agocrimson/os/seastore/cache: re-implement Cache::retire_absent_extent_addr
Xuehan Xu [Wed, 20 May 2026 08:31:29 +0000 (16:31 +0800)]
crimson/os/seastore/cache: re-implement Cache::retire_absent_extent_addr

The new implementation retire an absent extent by constructing a real
empty extent and add it to the transaction's retired_set, instead of
creating a retired placeholder

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
8 days agoMerge pull request #68358 from ronen-fr/wip-rf-notazns main_base_5.22.26
Ronen Friedman [Fri, 22 May 2026 05:49:42 +0000 (08:49 +0300)]
Merge pull request #68358 from ronen-fr/wip-rf-notazns

crimson/os/seastore: do not treat non-ZNS devices as errors

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Reviewed-by: Kefu Chai <k.chai@proxmox.com>
8 days agoMerge pull request #68948 from ronen-fr/wip-rf-fix-trimsnap
Ronen Friedman [Thu, 21 May 2026 19:36:06 +0000 (22:36 +0300)]
Merge pull request #68948 from ronen-fr/wip-rf-fix-trimsnap

crimson/osd: decouple snap trim initiation from scrub completion

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
8 days agoosd/scrub: limit scrubbing under snap-trimming overload 68737/head
Ronen Friedman [Wed, 29 Apr 2026 04:55:02 +0000 (04:55 +0000)]
osd/scrub: limit scrubbing under snap-trimming overload

When the snap-trim queues are long, scrubbing is likely to
make things worse. This change adds a new scrubbing restriction
for that case, and prevents periodic scrubs from starting when
the total snap-trim queue length across all PGs exceeds a
configurable threshold.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
8 days agocrimson/osd: collect total snap-trim queueus length
Ronen Friedman [Wed, 29 Apr 2026 04:14:23 +0000 (04:14 +0000)]
crimson/osd: collect total snap-trim queueus length

Periodically collect the total snap-trim
queue length across all PGs. Expose it through
OSDService::get_snap_trim_queue_total().

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
8 days agoosd: collect total snap-trim queueus length
Ronen Friedman [Wed, 29 Apr 2026 03:45:34 +0000 (03:45 +0000)]
osd: collect total snap-trim queueus length

Periodically collect the total snap-trim
queue length across all PGs. Expose it through
OSDService::get_snap_trim_queue_total().

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
8 days agoMerge pull request #68873 from cbodley/wip-73475
Casey Bodley [Thu, 21 May 2026 14:41:52 +0000 (10:41 -0400)]
Merge pull request #68873 from cbodley/wip-73475

librados/asio: clear cancellation slot in associated executor

Reviewed-by: Adam Emerson <aemerson@redhat.com>
Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
8 days agoMerge pull request #68985 from djgalloway/nfs-ganesha-selinux
David Galloway [Thu, 21 May 2026 14:21:53 +0000 (10:21 -0400)]
Merge pull request #68985 from djgalloway/nfs-ganesha-selinux

Revert "Use GANESHA_REPO_BASEURL for NFS-Ganesha on all distros"

9 days agocommon: enable AVX512+VPCLMULQDQ for crc32c performance on x86 66150/head
Maodi Ma [Wed, 5 Nov 2025 02:35:46 +0000 (02:35 +0000)]
common: enable AVX512+VPCLMULQDQ for crc32c performance on x86

- Add crc32_iscsi_by16_10 in src/isa-l into candidates for ceph_crc32c
- Add hardware capability check for AVX512 instr before register
- Add NASM feature check to ensure compatibility and to enable
  AS_FEATURE_LEVEL in crc32_iscsi_by16_10.asm

Signed-off-by: Maodi Ma <mamaodi@hygon.cn>
9 days agoRevert "Merge pull request #67999 from Shubhaj1810/nfs-ganesha-servicemap-fix" 69042/head
Shubha Jain [Thu, 21 May 2026 08:51:08 +0000 (14:21 +0530)]
Revert "Merge pull request #67999 from Shubhaj1810/nfs-ganesha-servicemap-fix"

This reverts commit d44d4fd402a0c23ab98056368d12cb83afd7bb32, reversing
changes made to 0e05a6054c822e36dcdf7b25d8d031fc937ac278.

Signed-off-by: Shubha Jain <SHUBHA.JAIN1@ibm.com>
9 days agorgw/logging: use assumed-role ARN as Requester for STS requests
ShreeJejurikar [Wed, 13 May 2026 13:05:39 +0000 (18:35 +0530)]
rgw/logging: use assumed-role ARN as Requester for STS requests

When a request is made with STS temporary credentials, the bucket logging
Requester field was being set to the underlying user ID instead of the
assumed-role ARN. Per the AWS S3 server-access-log spec, the Requester
field should contain the assumed-role ARN (e.g.
arn:aws:sts::<account>:assumed-role/<role>/<session>) for STS-credentialed
requests.

Detect TYPE_ROLE identities via s->auth.identity->get_identity_type() and
use the ARN returned by Identity::get_caller_identity() (already
implemented by RoleApplier in the expected AWS format) instead of falling
straight through to s->user->get_id(). Existing behavior for account- and
user-scoped requests is unchanged.

Fixes: https://tracker.ceph.com/issues/71742
Signed-off-by: Shree Jejurikar <shree.jejurikar@gmail.com>
9 days agoMerge pull request #69013 from bluikko/wip-doc-rados-ops-pool-fix-label
bluikko [Thu, 21 May 2026 02:46:54 +0000 (09:46 +0700)]
Merge pull request #69013 from bluikko/wip-doc-rados-ops-pool-fix-label

doc/rados: move label to right place in pools.rst

9 days agoMerge pull request #69014 from bluikko/wip-doc-man-cephadm-fix-markup
bluikko [Thu, 21 May 2026 02:46:43 +0000 (09:46 +0700)]
Merge pull request #69014 from bluikko/wip-doc-man-cephadm-fix-markup

doc/man: fix broken markup in cephadm.rst

9 days agoRevert "Use GANESHA_REPO_BASEURL for NFS-Ganesha on all distros" 68985/head
David Galloway [Wed, 20 May 2026 20:38:52 +0000 (16:38 -0400)]
Revert "Use GANESHA_REPO_BASEURL for NFS-Ganesha on all distros"

The ganesha spec file is calling in a system package that is in CentOS 10 Stream but not yet in Rocky/Alma/RHEL/whatever.

This reverts commit 1163bd6b01560bb435821d1ec14b69a5a4f3b0cc.

Fixes: https://tracker.ceph.com/issues/76681
Signed-off-by: David Galloway <david.galloway@ibm.com>
9 days agoMerge PR #68907 into main
Patrick Donnelly [Wed, 20 May 2026 20:16:20 +0000 (16:16 -0400)]
Merge PR #68907 into main

* refs/pull/68907/head:
qa: ignore pg stuck peering

Reviewed-by: Yuri Weinstein <yweins@redhat.com>
9 days agoMerge PR #68896 into main
Patrick Donnelly [Wed, 20 May 2026 19:41:40 +0000 (15:41 -0400)]
Merge PR #68896 into main

* refs/pull/68896/head:
qa: ignore cephadm failed daemon warnings during thrashing

Reviewed-by: Yuri Weinstein <yweins@redhat.com>
9 days agoMerge PR #68998 into main
Patrick Donnelly [Wed, 20 May 2026 19:40:56 +0000 (15:40 -0400)]
Merge PR #68998 into main

* refs/pull/68998/head:
.github/workflows/releng-audit: update python to 3.12
.github/workflows/releng-audit: update workflows

Reviewed-by: Yuri Weinstein <yweins@redhat.com>
9 days agoMerge PR #68893 into main
Patrick Donnelly [Wed, 20 May 2026 19:38:17 +0000 (15:38 -0400)]
Merge PR #68893 into main

* refs/pull/68893/head:
qa: ignore expected OSD_ROOT_DOWN
qa: ignore fs offline warning
qa: add MDS_INSUFFICIENT_STANDBY to ignorelist
qa/suites/upgrade: use common ignorelist

Reviewed-by: Laura Flores <lflores@redhat.com>
9 days agoMerge PR #68897 into main
Patrick Donnelly [Wed, 20 May 2026 19:37:29 +0000 (15:37 -0400)]
Merge PR #68897 into main

* refs/pull/68897/head:
qa/suites/upgrade: ignore undersized PG during stress splits

Reviewed-by: Laura Flores <lflores@redhat.com>
9 days agoMerge PR #69004 into main
Patrick Donnelly [Wed, 20 May 2026 19:33:33 +0000 (15:33 -0400)]
Merge PR #69004 into main

* refs/pull/69004/head:
script/ptl-tool: allow automatic links for commit sha

Reviewed-by: Yuri Weinstein <yweins@redhat.com>
9 days agoMerge pull request #68962 from afreen23/remove-fa
Afreen Misbah [Wed, 20 May 2026 17:57:32 +0000 (23:27 +0530)]
Merge pull request #68962 from afreen23/remove-fa

mgr/dashboard: Remove font awesome icon package

Reviewed-by: Nizamudeen A <nia@redhat.com>
9 days agocrimson/osd: use store-specific max_object_size for the OSD-layer write check 69018/head
Kefu Chai [Wed, 20 May 2026 07:55:58 +0000 (15:55 +0800)]
crimson/osd: use store-specific max_object_size for the OSD-layer write check

is_offset_and_length_valid() checked write sizes against
osd_max_object_size (128 MiB), but SeaStore caps per-onode laddr space
at seastore_default_max_object_size (16 MiB).  Writes between the two
limits pass the OSD check, reach SeaStore, and trip
prepare_data_reservation()'s ceph_assert(), crashing the OSD and its
replicas.

Add FuturizedStore::Shard::get_max_object_size() (returns
osd_max_object_size by default) and override it in SeaStore::Shard to
return min(osd_max_object_size, max_object_size).  Convert
is_offset_and_length_valid() from a static function to a PGBackend
member that queries the store, so EFBIG reaches the client before the
write ever hits the store.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
9 days agocrimson/osd: only unblock wait_for_active_blocker on replica when ACTIVE 69020/head
Kefu Chai [Wed, 20 May 2026 04:03:12 +0000 (12:03 +0800)]
crimson/osd: only unblock wait_for_active_blocker on replica when ACTIVE

ReplicaActive::react(ActivateCommitted) sets ACTIVE or PEERED before
calling on_activate_committed().  Without a guard, an unconditional
unblock() on the PEERED path resets the promise, causing ops that
arrive afterward to park indefinitely (until the next on_change()).

The primary already has this guard in on_activate_complete(); mirror it
on the replica side.

See-also: 2389c32d517e
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
9 days agocrimson/seastore: reject oversized writes and zeros instead of aborting
Kefu Chai [Wed, 20 May 2026 07:36:51 +0000 (15:36 +0800)]
crimson/seastore: reject oversized writes and zeros instead of aborting

prepare_data_reservation() ceph_assert()s the request fits within
seastore_default_max_object_size (16 MiB), but the OSD validates writes
against osd_max_object_size (128 MiB).  Anything between the two limits
passes OSD validation then trips the assert, crashing the OSD and its
replicas.

_zero() already returned EIO for this case; mirror that in _write() and
fix _zero()'s off-by-one (>= should be >, matching the <= in the assert).

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
9 days agoMerge pull request #68796 from ronen-fr/wip-rf-snapreset-crimson
Ronen Friedman [Wed, 20 May 2026 11:05:09 +0000 (14:05 +0300)]
Merge pull request #68796 from ronen-fr/wip-rf-snapreset-crimson

Crimson/osd/snap-mapper: flush pending writes on pg interval change

Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
Reviewed-by: Aishwarya Mathuria <amathuri@redhat.com>
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
9 days agoMerge pull request #68880 from ronen-fr/wip-rf-asokassert-crimson
Ronen Friedman [Wed, 20 May 2026 10:50:04 +0000 (13:50 +0300)]
Merge pull request #68880 from ronen-fr/wip-rf-asokassert-crimson

crimson/osd,qa: support and test the 'assert' ASOK command

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
10 days agoMerge pull request #67010 from bluikko/wip-doc-radosgw-ref-links-split5
bluikko [Wed, 20 May 2026 09:12:26 +0000 (16:12 +0700)]
Merge pull request #67010 from bluikko/wip-doc-radosgw-ref-links-split5

doc/radosgw: change all intra-docs links to use ref (6 of 6)