]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
4 weeks agomgr/cephadm: support tls creds via uri in service spec
John Mulligan [Tue, 1 Jul 2025 23:08:02 +0000 (19:08 -0400)]
mgr/cephadm: support tls creds via uri in service spec

Support populating the cert data sent to the cephadm binary using
special `URI:` prefixed strings instead of putting the cert data itself
in the smb service spec. This avoids having an extra copy of the cert
floating around but still matches the behavior of other services where
cephadm writes the certs into files.

In the future we may be able to avoid even putting the data in here as
sambacc can use rados apis - but for simplicity and matching other
services we will send the data this way for now.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: make tls credential types work in smb show
John Mulligan [Tue, 1 Jul 2025 21:44:01 +0000 (17:44 -0400)]
mgr/smb: make tls credential types work in smb show

Update the handler code needed to make tls credential types work
corrently for `ceph smb show` commands.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add tls credential and remote control support to handler
John Mulligan [Wed, 2 Jul 2025 23:48:38 +0000 (19:48 -0400)]
mgr/smb: add tls credential and remote control support to handler

Use the new tls credential resource and remote control cluster field
to configure the tls creds for the remote control sidecar in the
service spec.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: remove unused generate_smb_service_spec function
John Mulligan [Tue, 1 Jul 2025 21:13:34 +0000 (17:13 -0400)]
mgr/smb: remove unused generate_smb_service_spec function

Remove the generate_smb_service_spec as it was unused (it was used
early on for a debug dump command). Leaving it would have meant
keeping it up-to-date with the real spec generating function and
unnecessary extra work.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add tls credential support to staging
John Mulligan [Wed, 2 Jul 2025 21:27:45 +0000 (17:27 -0400)]
mgr/smb: add tls credential support to staging

Add the necessary cross-check functions to staging.py for tls credential
resources. Add prune function for tls resources because they support
linked_to_cluster.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add external store key func for tls credential resources
John Mulligan [Tue, 1 Jul 2025 21:11:41 +0000 (17:11 -0400)]
mgr/smb: add external store key func for tls credential resources

For getting keys for an external store.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add a new entry class for tls credential resources
John Mulligan [Tue, 1 Jul 2025 15:28:02 +0000 (11:28 -0400)]
mgr/smb: add a new entry class for tls credential resources

Add a new entry class for the new tls credential resources. It should
work similarly to the join auth resources.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add a uri lookup func to the MonKeyConfigStore
John Mulligan [Tue, 1 Jul 2025 23:08:24 +0000 (19:08 -0400)]
mgr/smb: add a uri lookup func to the MonKeyConfigStore

Add a new lookup_uri function to the MonKeyConfigStore - this allows the
store to return an entry given a URI. The URIs in the stores are
typically used to communicate to components outside the mgr module. But
there are occasions that we have a uri and want to look it up instead
of using a key.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: extend the mon key store to support raw data
John Mulligan [Tue, 1 Jul 2025 21:14:55 +0000 (17:14 -0400)]
mgr/smb: extend the mon key store to support raw data

Previously, a new protocol for raw data entries was added. Extend the
MonKeyStoreEntry to meet this protocol so that it can be used to retain
raw text/data blobs.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add support for tls credential resoruces to sqlite store
John Mulligan [Tue, 1 Jul 2025 15:37:33 +0000 (11:37 -0400)]
mgr/smb: add support for tls credential resoruces to sqlite store

The sqlite store needs to be updated for each top-level resource type.
Update it for the newly added tls credential type. Configure it so that
it works similarly to the join auth resource such that the cert data is
not stored in the sqlite db - only in the layered mon store.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add a RawConfigEntry protocol type
John Mulligan [Tue, 1 Jul 2025 21:15:10 +0000 (17:15 -0400)]
mgr/smb: add a RawConfigEntry protocol type

Previously, the ConfigEntry type was created to be general interface for
serializing structures to JSON and persist them in a store.
However, there are times we want to retain data in a store that is not
serialized JSON - but just raw data. Create a new protocol for that
purpose.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add a remote control configuration to cluster resource
John Mulligan [Wed, 2 Jul 2025 22:15:16 +0000 (18:15 -0400)]
mgr/smb: add a remote control configuration to cluster resource

Add the remote control component to a field of the cluster resource.
A remote control side car can be explicitly enabled or implicitly
enabled by specifying the tls creds.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: create a new resource component for remote control
John Mulligan [Wed, 2 Jul 2025 22:15:03 +0000 (18:15 -0400)]
mgr/smb: create a new resource component for remote control

Remote control is a new optional feature of the samba-container. It runs
a small "sidecar" service that provides a (g)RPC interface that bridges
certain runtime operations, like disconnecting a particular client,
from the cloudy-gRPC world to samba's existing tooling.
Add a new type that can be used to configure this sidecar service.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add a new tls source component resource
John Mulligan [Wed, 2 Jul 2025 21:45:42 +0000 (17:45 -0400)]
mgr/smb: add a new tls source component resource

Add a new resource component for referencing a tls credential resource.
This works pretty much like the join auth resource in that a cluster
refers to a tls credential resource by name - avoiding having to have
potentially sensitive info stored in the cluster resource.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add a new tls credential resource type
John Mulligan [Wed, 2 Jul 2025 21:44:45 +0000 (17:44 -0400)]
mgr/smb: add a new tls credential resource type

Add a new TLS credential resource type that can currently store one
TLS certificate, TLS key, or TLS CA certificate. This is a new top-level
resource so that they can be use across clusters or managed
independently by different people and or private information can be kept
out a cluster resource stored in a file committed somewhere.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add a new BigString helper type for serializing yaml
John Mulligan [Wed, 2 Jul 2025 21:41:26 +0000 (17:41 -0400)]
mgr/smb: add a new BigString helper type for serializing yaml

Add a new BigString type that serves to help serialize resources to
YAML, causing it to use the multi-line literal style. A BigString is
a string so it should be transparent to other serializations, but
note that it should only be used in "simplified" structures.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: use a private constant for hidden value indicator
John Mulligan [Wed, 2 Jul 2025 21:42:40 +0000 (17:42 -0400)]
mgr/smb: use a private constant for hidden value indicator

When the password filter hides a value we replace it with a string
of asterisks - indicating that there was a value here. Move it
to a constant so it can be reused later.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add a new store namespace for tls_creds
John Mulligan [Wed, 2 Jul 2025 21:47:26 +0000 (17:47 -0400)]
mgr/smb: add a new store namespace for tls_creds

A new resource for tls credentials will be added soon. Prepare for
that by adding a store namespace for these resources.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add a new generalized enum for source references
John Mulligan [Wed, 2 Jul 2025 22:06:30 +0000 (18:06 -0400)]
mgr/smb: add a new generalized enum for source references

The join auth and users and groups sources typically specify a
source as a reference to a (local) resource. Right now this is
really the only supported value. Since they're all basically the same
add a new generic SourceReferenceType enum for future source
resource components.

Note that python doesn't allow subclassing enums that have values
assigned. This is the reason for the copy paste here.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add a new TLSCredentialType enum
John Mulligan [Wed, 2 Jul 2025 21:47:56 +0000 (17:47 -0400)]
mgr/smb: add a new TLSCredentialType enum

Add a new TLSCredentialType to enums.py. This will be used in the future
to support a new resource type that manages TLS/SSL credential objects (
certs, keys, etc).

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/cephadm: copy tls blobs from smb service spec to smb configuration
John Mulligan [Mon, 30 Jun 2025 23:11:47 +0000 (19:11 -0400)]
mgr/cephadm: copy tls blobs from smb service spec to smb configuration

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/cephadm: add a helper function for setting up smb config
John Mulligan [Mon, 30 Jun 2025 23:11:34 +0000 (19:11 -0400)]
mgr/cephadm: add a helper function for setting up smb config

Add a private helper function for copying values into the config_blobs
and similar dictionaries that are serialized and passed to cephadm for
configuration of smb. The helper automates the familiar pattern of
```
if value:
    config_blobs[key] = value
```

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agopython-common/deployment: add remote control sidecar config params
John Mulligan [Mon, 9 Jun 2025 17:19:06 +0000 (13:19 -0400)]
python-common/deployment: add remote control sidecar config params

Add parameters to the smb service spec for configuring the remote
control sidecar. The feature always controls the deployment (or not) of
the sidecar and the ssl/tls config params will be used to set up (m)TLS
for the sidecar.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agocephadm/smb: add support for remote control sidecar
John Mulligan [Mon, 9 Jun 2025 17:18:49 +0000 (13:18 -0400)]
cephadm/smb: add support for remote control sidecar

Add support for the remote control sidecar. The remote control server
is provided by the sambacc project. It is a small grpc server that
allows remote systems to get live information about connected clients
and disconnect clients or shares from the servers. The gRPC server
requires being run in mTLS mode to make changes.

Adding sidecar required adding a bunch of support for TLS/SSL certificate
management. I copied some of what other ceph containers do, like map
in a dedicated dir having certs. I expect some more stuff in the smb
daemon will require TLS support so I tried to make it a little more
generic than would be strictly needed by just this sidecar.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agocephadm: update type of populate_files first argument
John Mulligan [Wed, 16 Jul 2025 20:17:07 +0000 (16:17 -0400)]
cephadm: update type of populate_files first argument

The populate_files function's first argument was typed as `str` but
all places that str is used in that function can also use a
pathlib.Path. Update the type of that argument to match.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: improve error handling when _customize_resource is wrong
John Mulligan [Mon, 30 Jun 2025 21:46:10 +0000 (17:46 -0400)]
mgr/smb: improve error handling when _customize_resource is wrong

While working on other changes I noticed that if _customize_resource
does not return a resource object (something fairly easy to do like
accidentally delete a line) the error it produces is somewhat hard
to debug. Check the return from the function returns a non-false
object to provide better error reporting.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agomgr/smb: add a wrapper_type attribute for resourcelib fields
John Mulligan [Mon, 30 Jun 2025 21:18:36 +0000 (17:18 -0400)]
mgr/smb: add a wrapper_type attribute for resourcelib fields

Add a new wrapper_type attribute for resourcelib fields that will be
used for better YAML representations in a future change. The
wrapper_type attribute will be applied during the simplification
phase to prep the resulting object for serialization. It can be set
using the special _customize_resource function.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 weeks agoMerge pull request #64861 from ronen-fr/wip-rf-pgdict
Ronen Friedman [Tue, 12 Aug 2025 13:33:02 +0000 (16:33 +0300)]
Merge pull request #64861 from ronen-fr/wip-rf-pgdict

test/standalone/scrub: improve build_pg_dicts() performance

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 weeks agoMerge pull request #64253 from arm7star/rgw-openssl
Casey Bodley [Tue, 12 Aug 2025 13:04:39 +0000 (09:04 -0400)]
Merge pull request #64253 from arm7star/rgw-openssl

rgw, common: OpenSSL provider support

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 weeks agoMerge pull request #64675 from chanyoung/fix-omap-balance
Matan Breizman [Tue, 12 Aug 2025 11:01:09 +0000 (14:01 +0300)]
Merge pull request #64675 from chanyoung/fix-omap-balance

crimson/.../omap_btree_node_impl: pass pivot_idx for balancing

Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
4 weeks agoMerge pull request #64575 from chanyoung/add-test-omap-update
Matan Breizman [Tue, 12 Aug 2025 11:00:04 +0000 (14:00 +0300)]
Merge pull request #64575 from chanyoung/add-test-omap-update

test/crimson/seastore/test_omap_manager: add heavy update UT

Reviewed-by: Samuel Just <sjust@redhat.com>
4 weeks agoMerge pull request #64812 from Matan-B/wip-matanb-crimson-seastore-trans-intr
Matan Breizman [Tue, 12 Aug 2025 10:57:18 +0000 (13:57 +0300)]
Merge pull request #64812 from Matan-B/wip-matanb-crimson-seastore-trans-intr

crimson/os/seastore: introduce with_repeat_trans_intr

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
4 weeks agoMerge pull request #64911 from rhcs-dashboard/dashboard-loading-state
afreen23 [Tue, 12 Aug 2025 08:38:23 +0000 (14:08 +0530)]
Merge pull request #64911 from rhcs-dashboard/dashboard-loading-state

mgr/dashboard: loading state for inventory card

Reviewed-by: Afreen Misbah <afreen@ibm.com>
4 weeks agoMerge pull request #64890 from cloudbehl/add-osd-ratio
afreen23 [Tue, 12 Aug 2025 07:08:36 +0000 (12:38 +0530)]
Merge pull request #64890 from cloudbehl/add-osd-ratio

prometheus: Add OSD full and nearfull ratio to prometheus

Reviewed-by: Afreen Misbah <afreen@ibm.com>
4 weeks agoMerge pull request #64753 from Hezko/nvmeof-cli-mtls-fix2
afreen23 [Tue, 12 Aug 2025 06:59:49 +0000 (12:29 +0530)]
Merge pull request #64753 from Hezko/nvmeof-cli-mtls-fix2

mgr/dashboard: fix nvmeof mtls

Reviewed-by: Nizamudeen A <nia@redhat.com>
4 weeks agoMerge pull request #64767 from bluikko/doc-notifications-fixes-cephadm
Zac Dover [Tue, 12 Aug 2025 06:59:07 +0000 (16:59 +1000)]
Merge pull request #64767 from bluikko/doc-notifications-fixes-cephadm

doc/radosgw: Small fixes and improvements in notifications.rst, part 1

Reviewed-by: Yuval Lifshitz <ylifshit@ibm.com>
Reviewed-by: Zac Dover <zac.dover@proton.me>
4 weeks agoMerge PR #64716 into main
Venky Shankar [Tue, 12 Aug 2025 05:36:33 +0000 (11:06 +0530)]
Merge PR #64716 into main

* refs/pull/64716/head:

Reviewed-by: Anoop C S <anoopcs@cryptolab.net>
Reviewed-by: Sachin Prabhu <sp@spui.uk>
4 weeks agoMerge pull request #64952 from Matan-B/wip-matanb-rgw-fifo-ftbfs
Ilya Dryomov [Mon, 11 Aug 2025 17:13:30 +0000 (19:13 +0200)]
Merge pull request #64952 from Matan-B/wip-matanb-rgw-fifo-ftbfs

neorados/cls/fifo/detail/fifo: include strtol.h

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
4 weeks agoneorados/cls/fifo/detail/fifo: include strtol.h 64952/head
Matan Breizman [Mon, 11 Aug 2025 12:28:47 +0000 (12:28 +0000)]
neorados/cls/fifo/detail/fifo: include strtol.h

https://github.com/ceph/ceph/commit/a2d26647c011274b61805f8ac17c3422e9b9b63c

ftbfs:
```
/home/jenkins-build/build/workspace/ceph-pull-requests/src/neorados/cls/fifo/detail/fifo.h:630:14: error: no member named 'parse' in namespace 'ceph'; did you mean 'pause'?
  630 |     auto n = ceph::parse<decltype(m.num)>(num);
      |              ^~~~~~~~~~~
```

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 weeks agoMerge pull request #64773 from afreen23/freq-api-calls
afreen23 [Mon, 11 Aug 2025 11:44:43 +0000 (17:14 +0530)]
Merge pull request #64773 from afreen23/freq-api-calls

mgr/dashboard: Stop rules api being polled on every page

Reviewed-by: Afreen Misbah <afreen@ibm.com>
4 weeks agoMerge pull request #64905 from rhcs-dashboard/mem-leak
afreen23 [Mon, 11 Aug 2025 11:34:34 +0000 (17:04 +0530)]
Merge pull request #64905 from rhcs-dashboard/mem-leak

mgr/dashboard: fix memory leak in prometheus service

Reviewed-by: Afreen Misbah <afreen@ibm.com>
4 weeks agoMerge pull request #62915 from MaxKellermann/common_includes
Ilya Dryomov [Mon, 11 Aug 2025 07:39:35 +0000 (09:39 +0200)]
Merge pull request #62915 from MaxKellermann/common_includes

common: include cleanup

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
4 weeks agoMerge PR #61116 into main
Venky Shankar [Mon, 11 Aug 2025 06:53:41 +0000 (12:23 +0530)]
Merge PR #61116 into main

* refs/pull/61116/head:

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@ibm.com>
4 weeks agoMerge PR #64822 into main
Venky Shankar [Mon, 11 Aug 2025 06:52:16 +0000 (12:22 +0530)]
Merge PR #64822 into main

* refs/pull/64822/head:

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
4 weeks agomgr/dashboard: fix memory leak in prometheus service 64905/head
Nizamudeen A [Fri, 8 Aug 2025 06:42:20 +0000 (12:12 +0530)]
mgr/dashboard: fix memory leak in prometheus service

Prometheus API calls in the Cluster Utilization call is subscribed in
the for loop multiple times but this is not properly unsubscribed. As we
stay in the dashboard page for longer time, it produces a significant
memory leak which eventually lags the UI. Attempting to fix it by
properly handling the subscription

Fixes: https://tracker.ceph.com/issues/72511
Signed-off-by: Nizamudeen A <nia@redhat.com>
4 weeks agomgr/dashboard: loading state for inventory card 64911/head
Nizamudeen A [Wed, 6 Aug 2025 09:23:22 +0000 (14:53 +0530)]
mgr/dashboard: loading state for inventory card

show loading state when inventory details are being loaded. also don't
block the UI when inventories are not loaded.

Fixes: https://tracker.ceph.com/issues/72494
Signed-off-by: Nizamudeen A <nia@redhat.com>
4 weeks agoMerge pull request #62488 from dparmar18/i70553
Venky Shankar [Mon, 11 Aug 2025 03:17:08 +0000 (08:47 +0530)]
Merge pull request #62488 from dparmar18/i70553

client: fix unmount hang after lookups

Reviewed-by: Venky Shankar <vshankar@redhat.com>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 weeks agotest/crimson/seastore/test_omap_manager: add heavy update UT 64575/head
Chanyoung Park [Fri, 18 Jul 2025 08:06:15 +0000 (08:06 +0000)]
test/crimson/seastore/test_omap_manager: add heavy update UT

Signed-off-by: Chanyoung Park <chaney.p@kakaoenterprise.com>
4 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>
4 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>
4 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>
4 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>
4 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>
4 weeks agotest/crimson/seastore/test_omap_manager: add a UT to reproduce issue 72270 64675/head
Chanyoung Park [Mon, 28 Jul 2025 15:37:43 +0000 (15:37 +0000)]
test/crimson/seastore/test_omap_manager: add a UT to reproduce issue 72270

Signed-off-by: Chanyoung Park <chaney.p@kakaoenterprise.com>
4 weeks agocrimson/.../omap_btree_node_impl: pass pivot_idx for balancing
Chanyoung Park [Thu, 24 Jul 2025 15:52:35 +0000 (15:52 +0000)]
crimson/.../omap_btree_node_impl: pass pivot_idx for balancing

Fixes: https://tracker.ceph.com/issues/72270
Signed-off-by: Chanyoung Park <chaney.p@kakaoenterprise.com>
4 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>
4 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>
4 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>
4 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>
4 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

4 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>
4 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

4 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>
4 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>
4 weeks agomgr/dashboard: Stop rules api being polled on every page 64773/head
Afreen Misbah [Wed, 6 Aug 2025 07:37:16 +0000 (13:07 +0530)]
mgr/dashboard: Stop rules api being polled on every page

- /rules ar epolled every 5 seconds on every page
- it is only required for alerts page where full rules list is shown in `Alerts` tab
- also added observable for getting rules instead of plain array

Signed-off-by: Afreen Misbah <afreen@ibm.com>
4 weeks agoprometheus: Add OSD full and nearfull ratio to prometheus 64890/head
Ankush Behl [Thu, 7 Aug 2025 11:43:19 +0000 (17:13 +0530)]
prometheus: Add OSD full and nearfull ratio to prometheus

Fixes: https://tracker.ceph.com/issues/72495
Signed-off-by: Ankush Behl <cloudbehl@gmail.com>
4 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>
5 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>
5 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

5 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>
5 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>
5 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>
5 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>
5 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>
5 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>
5 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>
5 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>
5 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>
5 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>
5 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>
5 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>
5 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>
5 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
5 weeks agodoc/radosgw: Small fixes and improvements in notifications.rst, part 1 64767/head
Ville Ojamo [Thu, 31 Jul 2025 06:33:16 +0000 (13:33 +0700)]
doc/radosgw: Small fixes and improvements in notifications.rst, part 1

Fix ordering of list items so that the sub-list is after the parent list
item referring to it.
Also fix multiple formatting errors in the same unordered list.

Fix unordered list rendered as a single sentence due to missing empty
line.

Break many long lines around standard line length.

Don't use hyphen for "regular expressions".

Use double backticks for data like configuration parameters.

Fix double space in an example CLI command.

Don't list same parameter "user/password" in multiple list items,
instead just list all concerns under the same list item.

Start sentences with capital case and end in full stop consistently.

Trim section title formatting syntax to text length.

Capitalize "URI" and "Kafka" consistently.

Use quotation marks in one occurrence of the value "true" instead of
single backticks for consistency.

Signed-off-by: Ville Ojamo <14869000+bluikko@users.noreply.github.com>
5 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>
5 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>
5 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>
5 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>
5 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>
5 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>
5 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>