]>
git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/log
Sagar Gopale [Fri, 2 Jan 2026 05:47:53 +0000 (11:17 +0530)]
mgr/dashboard: carbonize-osd-flags-modal
Fixes: https://tracker.ceph.com/issues/74298
Signed-off-by: Sagar Gopale <sagar.gopale@ibm.com>
Aashish Sharma [Thu, 26 Mar 2026 07:08:19 +0000 (12:38 +0530)]
Merge pull request #67997 from rhcs-dashboard/abount-window
mgr/Dashboard : [Dashboard] Not able to open "About" window
Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Adam Kupczyk [Wed, 25 Mar 2026 23:11:42 +0000 (00:11 +0100)]
Merge pull request #66318 from aclamk/aclamk-fcm-plugin
FCM plugin for block device
Adam Kupczyk [Wed, 11 Feb 2026 12:03:18 +0000 (12:03 +0000)]
extblkdev/fcm: Add plugin identification for fcm
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Adam Kupczyk [Wed, 11 Feb 2026 15:14:16 +0000 (15:14 +0000)]
extblkdev/fcm: Do not enable set_keepcaps by default
When one runs FCM enabled hardware config.set_keepcaps must be set.
However, having it as default is inadvised.
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Adam Kupczyk [Wed, 11 Feb 2026 11:29:48 +0000 (11:29 +0000)]
extblkdev/fcm: Change douts/derrs
Remove printing fcm values to dout(1).
Upgraded inability to access FCM log from dout to derr.
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Adam Kupczyk [Wed, 11 Feb 2026 09:32:31 +0000 (09:32 +0000)]
extblkdev/fcm: Create perf counters with fcm stats
Created "extblkdev" section.
Each time plugin is asked to `get_stats()` also write to perf counters.
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Adam Kupczyk [Wed, 11 Feb 2026 09:30:45 +0000 (09:30 +0000)]
fixup warning of fcm plugin core
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Adam Kupczyk [Thu, 25 Sep 2025 09:13:28 +0000 (05:13 -0400)]
extblkdev/fcm: derr when FCM and no block device discard
Add derr message when FCM is in use but discard is not enabled.
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Adam Kupczyk [Thu, 25 Sep 2025 07:03:12 +0000 (03:03 -0400)]
extblkdev/fcm: Refuse to operate on multimedia lvm block devices
BlueStore is selecting were data is put to the device.
Merging 2 FCM devices together means that BlueStore will see free space
on one of the devices, but not know the other is full and asking to put
data there. It will cause -ENOSPC while free space is reported.
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Adam Kupczyk [Wed, 24 Sep 2025 14:03:47 +0000 (10:03 -0400)]
extblkdev/fcm: Adapt FCM plugin to RHCS9
Device /sys content is different from what original plugin expected.
Adapted to it.
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Martin Ohmacht [Thu, 11 Aug 2022 14:37:03 +0000 (10:37 -0400)]
added FCM plugin
Signed-off-by: Martin Ohmacht <mohmacht@us.ibm.com>
Adam Kupczyk [Wed, 25 Mar 2026 19:22:42 +0000 (20:22 +0100)]
Merge pull request #67289 from aclamk/aclamk-extblkdev-mandatory
os/bluestore: Make extblkdev mandatory
Casey Bodley [Wed, 25 Mar 2026 18:46:37 +0000 (14:46 -0400)]
Merge pull request #65847 from pritha-srivastava/wip-rgw-sts-expired-creds
rgw/sts: correct error code to 400 (from 403)
Reviewed-by: Casey Bodley <cbodley@redhat.com>
John Mulligan [Wed, 25 Mar 2026 17:57:59 +0000 (13:57 -0400)]
Merge pull request #64641 from phlogistonjohn/jjm-smb-keybridge
smb: add keybridge support and fscrypt configuration
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Adam King <adking@redhat.com>
pujaoshahu [Wed, 25 Mar 2026 14:20:57 +0000 (19:50 +0530)]
mgr/dashboard: [Dashboard] Not able to open "About" window
Fixes: https://tracker.ceph.com/issues/75702
Signed-off-by: pujaoshahu <pshahu@redhat.com>
John Mulligan [Thu, 15 Jan 2026 15:17:06 +0000 (10:17 -0500)]
mgr/smb: update fs.py to request all caps for the cephfs volume
Update the authorizer class in fs.py to request all caps (*) for our
volume. This is necessary in order to make use of the fscrypt feature
from smbd.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Mon, 10 Nov 2025 21:15:29 +0000 (16:15 -0500)]
cephadm: add pid file directory option to cfg watch sidecar
This will enable the config watch sidecar to signal processes
with a SIGHUP to tell them to reload configuration when config
watch has detected a configuration change. Currently only used
by keybridge.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Mon, 10 Nov 2025 21:15:19 +0000 (16:15 -0500)]
cephadm: add pidfile option to smb keybridge sidecar
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Mon, 22 Sep 2025 15:15:37 +0000 (11:15 -0400)]
mgr/smb: fix unit test assertion
The unit test was looking for the wrong string (but the right
condition). This fixes the string to check.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Wed, 23 Jul 2025 12:42:33 +0000 (08:42 -0400)]
doc: add documentation for keybridge and fscrypt options
Add docs for the keybrige configuration and cephfs fscrypt options
added to the smb mgr module resource definitions.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Fri, 18 Jul 2025 14:24:56 +0000 (10:24 -0400)]
mgr/smb: add some keybridge related unit test cases
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Fri, 18 Jul 2025 15:13:32 +0000 (11:13 -0400)]
mgr/smb: add support for generating keybridge configuration
Add support for generating the sambacc configuration section for
keybridge. Add support for configuring smb shares for keybridge access.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Fri, 18 Jul 2025 14:24:45 +0000 (10:24 -0400)]
mgr/smb: add cross-check validation for keybridge scopes
Validate that scope names are not re-used, etc. Check on things that
can't be done in single object validation.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Tue, 22 Jul 2025 23:24:11 +0000 (19:24 -0400)]
mgr/smb: add new cephfs parameter for getting fscrypt keys
Add a new field to the cephfs configuration section for shares. This
section selects the keybridge scope and key name to use when acquiring
the key to use for fscrypt.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Tue, 22 Jul 2025 23:22:15 +0000 (19:22 -0400)]
mgr/smb: add keybridge configuration to cluster resource
Add keybridge service configuration classes and parameters to the
resources module. This supports enabling the keybridge, setting up
scopes for the keybridge and it's access control.
A helper class is added that parses and helps validate the scope names.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Wed, 16 Jul 2025 21:55:44 +0000 (17:55 -0400)]
mgr/smb: add enums that will be used for configuring keybridge
Add a pair of enum types that will be used for configuring the
keybridge. The scope type identifies what kind of scope is being
used. The peer policy can be used to allow a dev or other user
more access to the keybridge api for development purposes.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Fri, 18 Jul 2025 14:23:12 +0000 (10:23 -0400)]
mgr/smb: add raw data methods to MemConfigStore
Add the set_data/get_data methods to the MemConfigStore so that future
test updates will not fail to save tls credential objects.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Fri, 18 Jul 2025 14:23:31 +0000 (10:23 -0400)]
mgr/smb: fix a resource error unpacking str instead of list
Add special handling for the case where a string is passed instead of a
list. Without this fix a string will be converted into a list of single
letter items, something pretty much no one ever wants. Raise an
exception instead.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Fri, 18 Jul 2025 16:20:17 +0000 (12:20 -0400)]
cephadm: add keybridge sidecar to smb daemon module
The keybridge uses the sambacc configuration but can also be passed
CLI options. Since cephadm writes the cert files, cephadm must also
pass the file names to use to the container args.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Fri, 18 Jul 2025 16:20:29 +0000 (12:20 -0400)]
mgr/cephadm: enable setting up SSL/TLS files for keybridge sidecar
Signed-off-by: John Mulligan <jmulligan@redhat.com>
John Mulligan [Wed, 16 Jul 2025 21:08:49 +0000 (17:08 -0400)]
python-common/deployment: add keybridge feature to smb service spec
The keybridge sidecar is enabled by the keybridge feature flag.
This sidecar will be used to help fetch keys over various protocols
for the ceph module to use to set up fs encryption.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
Alex Ainscow [Wed, 25 Mar 2026 12:00:36 +0000 (12:00 +0000)]
Merge pull request #67314 from aainscow/block_non_4k_chunks
mon: Deny EC optimizations (fast EC) for non-4k-aligned chunk-sizes.
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Bill Scales <bill_scales@uk.ibm.com>
Jose Juan Palacios-Perez [Wed, 25 Mar 2026 11:04:32 +0000 (11:04 +0000)]
Merge pull request #67723 from perezjosibm/wip-perezjos-tracker75202
qa/workunits: add crimson/test_crimson_dump_metrics.sh
Shraddha Agrawal [Wed, 25 Mar 2026 10:41:37 +0000 (16:11 +0530)]
Merge pull request #67936 from shraddhaag/wip-shraddhaag-fix-crimson-qa
qa/distros/crimson-supported-all-distro: reinstate centos
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Adam Kupczyk [Mon, 16 Feb 2026 13:50:26 +0000 (13:50 +0000)]
os/bluestore: Make extblkdev missing a warning
When mounting BlueStore for OSD problem with extblkdev meta are fatal error.
When mounting BlueStore in other cases extblkdev are just derr messages.
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Adam Kupczyk [Tue, 10 Feb 2026 12:16:46 +0000 (12:16 +0000)]
extblkdev: Make preload one-time function
Subsequent calls to extblkdev::preload() do not do anything.
It is assumed that first call already loads all plugins that could be
loaded.
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Adam Kupczyk [Thu, 22 Jan 2026 15:23:56 +0000 (15:23 +0000)]
os/bluestore: Add config bluestore_use_ebd
When EBD(extblkdev) plugin is in use usually it needs to present all the time.
For bluestore deployed with EBD plugin it makes it an error if bluestore tries
to mount and EBD plugin is not present.
Preload of extblkdev plugins was misplaced.
Moved loading plugins into BlueStore.
This way both OSD and tools can load plugins.
Plugins are now loaded only:
- before mkfs
- when extblkdev plugin is signalled in label meta
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Adam Kupczyk [Thu, 22 Jan 2026 13:55:51 +0000 (13:55 +0000)]
extblkdev: Expand interface, add plugin id retrieval
Plugin identification is a tool to implement two features:
1) Check the plugin is initialized
2) Verify that the plugin initialzied is the proper one
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Pritha Srivastava [Thu, 9 Oct 2025 06:05:13 +0000 (11:35 +0530)]
rgw/sts: correct error code to 400 (from 403)
for expires sts credentials.
Fixes: https://tracker.ceph.com/issues/73441
Signed-off-by: Pritha Srivastava <prsrivas@redhat.com>
Radoslaw Zarzynski [Tue, 24 Mar 2026 20:54:54 +0000 (21:54 +0100)]
Merge pull request #57395 from rzarzynski/wip-wip-crimson-ec-with-recovery
crimson/osd: bring support for EC, including recovery
Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Shraddha Agrawal [Sun, 22 Mar 2026 11:08:00 +0000 (16:38 +0530)]
qa/distros/crimson-supported-all-distro: reinstate centos
Signed-off-by: Shraddha Agrawal <shraddha.agrawal000@gmail.com>
Radoslaw Zarzynski [Sun, 22 Mar 2026 08:26:19 +0000 (08:26 +0000)]
Revert "crimson/osd, test: turn the EC tests on for crimson"
This reverts commit
36fc26b2b803fcf425de674a578c4aba20a5d9ea .
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 18 Mar 2026 19:34:50 +0000 (19:34 +0000)]
crimson/osd: fixes after crimson::os::with_store<>()
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 18 Mar 2026 19:33:37 +0000 (19:33 +0000)]
crimson/osd: Avoid pwlc spanning intervals
This is a crimson port of `
dc0a195b937eb175cf663d48a856f486435e987f `.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Sat, 14 Mar 2026 19:53:50 +0000 (19:53 +0000)]
crimson/osd: improve !is_omap() logging
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Tue, 27 Jan 2026 00:27:13 +0000 (00:27 +0000)]
crimon/osd: drop present_shards from PGLog handler's partial_write()
In correspondence with classical's
880a17e39626d99a0b6cc8259523daa83c72802c .
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Mon, 1 Dec 2025 14:39:08 +0000 (14:39 +0000)]
crimson/osd: improve debugs in ECTransaction::Generate::Generate()
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Mon, 1 Dec 2025 14:35:48 +0000 (14:35 +0000)]
crimon/osd: implement PG::PGLogEntryHandler::partial_write() for FastEC
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Fri, 28 Nov 2025 12:55:10 +0000 (12:55 +0000)]
crimson/osd: port changes from classial FastEC
This commit ports changes from
c116b8615d68a3926dc78a4965cc0a28ff85d4f2 .
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Thu, 27 Nov 2025 15:57:40 +0000 (15:57 +0000)]
tests: LibRadosIoEC allows for overwrites / unalligned writes on crimson
1. crimson-osd does support solely the FastEC flavor of EC pools;
SlowEC isn't now and won't be implemented.
2. FastEC imposes the EC overwrites support.
3. When run against crimson's EC implementation, the tests shall
not enforce e.g. ENOTSUPP on overwrite.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Thu, 27 Nov 2025 15:28:58 +0000 (15:28 +0000)]
crimson/osd: implement handling of RADOS' extended attirbutes in FastEC
Support for `attr_cache` in replicated backend is planned for later.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 19 Nov 2025 13:26:50 +0000 (13:26 +0000)]
crimson/osd: drop unused variable from PGBackend::getxattr()
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Tue, 18 Nov 2025 15:15:34 +0000 (15:15 +0000)]
crimson/osd: drop unneccessary variant of PGBackend::getxattr()
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Fri, 17 Oct 2025 14:39:49 +0000 (14:39 +0000)]
crimson/osd: don't decode EC only attrs are needed
This a crimson coutnerpart of
417fb71c9b5628726d3217909ba1b6d3e7bf251a .
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 3 Sep 2025 12:06:56 +0000 (12:06 +0000)]
rmw_pipeline in RMWPipeline::Op
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 16 Jul 2025 12:24:26 +0000 (12:24 +0000)]
fixup: crimson/osd: settle ECRecoveryBackend -- local MOSDPGPush
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 16 Jul 2025 12:17:54 +0000 (12:17 +0000)]
fixup: crimson/osd: settle RMWPipeline and RMWPipeline within ECBackend
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 16 Jul 2025 12:16:16 +0000 (12:16 +0000)]
fixup: crimson/osd: wire MOSDECSubOpWriteReply up with ECBackend
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 16 Jul 2025 12:15:43 +0000 (12:15 +0000)]
fixup: crimson/osd: route EC messages over PG
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 16 Jul 2025 12:04:00 +0000 (12:04 +0000)]
crimson/osd: fix unused variable warnings pg.cc and seastore
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 16 Jul 2025 12:02:13 +0000 (12:02 +0000)]
ECCommon: fixups for crimson's FastEC support
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 16 Jul 2025 11:57:12 +0000 (11:57 +0000)]
fixup: crimson/osd: bring ECRecoveryBackend, phase 0.1
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 16 Jul 2025 11:48:36 +0000 (11:48 +0000)]
fixup: crimson/osd: translate for os::Transaction into ECTransaction
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 16 Jul 2025 08:56:25 +0000 (08:56 +0000)]
fixup: crimson/osd: switch return type of PG::get_dpp to unify with ECListener
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 21 May 2025 14:42:20 +0000 (14:42 +0000)]
crimson/osd: switch return type of PG::get_dpp to unify with ECListener
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 21 May 2025 14:38:40 +0000 (14:38 +0000)]
crimson/osd: settle ECExtentCache within ShardService
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 21 May 2025 14:31:36 +0000 (14:31 +0000)]
crimson/osd: PGBackend::_read() takes object_size for the sake of FastEC
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 21 May 2025 14:01:32 +0000 (14:01 +0000)]
fixup: fixup: crimson/osd: add support for MOSDECSubOpRead
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 21 May 2025 13:44:06 +0000 (13:44 +0000)]
fixup: crimson/osd: wire MOSDECSubOpWriteReply up with ECBackend
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 21 May 2025 13:40:38 +0000 (13:40 +0000)]
fixup: crimson/osd: implement ECBackend::handle_rep_read_reply()
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 21 May 2025 13:35:34 +0000 (13:35 +0000)]
fixup: crimson/osd: translate for os::Transaction into ECTransaction
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Mon, 19 May 2025 17:43:39 +0000 (17:43 +0000)]
fixup: crimson/osd: implement ECBackend::objects_read_and_reconstruc
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 21 May 2025 16:05:13 +0000 (16:05 +0000)]
fixup: crimson/osd: settle RMWPipeline and RMWPipeline within ECBacken
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 21 May 2025 14:02:34 +0000 (14:02 +0000)]
fixup: crimson/osd: settle RMWPipeline and RMWPipeline within ECBackend
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Mon, 19 May 2025 17:43:02 +0000 (17:43 +0000)]
crimson/osd: settle RMWPipeline and RMWPipeline within ECBackend
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Sun, 11 May 2025 11:29:18 +0000 (11:29 +0000)]
crimson/osd: tackle the get_write_plan() problem of ECBackend
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 23 Apr 2025 09:57:07 +0000 (09:57 +0000)]
fixup: crimson/osd: settle ECRecoveryBackend -- misc small bits of ECListener
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 12 Feb 2025 00:14:36 +0000 (00:14 +0000)]
fixup: crimson/osd: bring ECRecoveryBackend, phase 0.1
Per
ecda6780c93db66865533a27dab5b0beb052f5fa .
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Mon, 20 Jan 2025 19:31:27 +0000 (19:31 +0000)]
crimson/osd, test: turn the EC tests on for crimson
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Mon, 16 Dec 2024 17:24:03 +0000 (17:24 +0000)]
Revert "crimson/.../object_context: drop recovery_read_marker"
This reverts commit
c1b7435d6c3a598ee13dd57ba8b83014c4cca893 .
EC support needs `wait_for_recovery()`.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Thu, 9 May 2024 21:51:11 +0000 (21:51 +0000)]
osd: ECCommon respects crimson non-null obc for new objects
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Thu, 9 May 2024 18:22:13 +0000 (18:22 +0000)]
crimson/osd: bring get_temp_recovery_object() to PGRecovery for EC
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Thu, 9 May 2024 18:21:10 +0000 (18:21 +0000)]
crimson/osd: settle ECRecoveryBackend -- misc small bits of ECListener
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Thu, 9 May 2024 17:37:51 +0000 (17:37 +0000)]
crimson/osd: settle ECRecoveryBackend -- local MOSDPGPush
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Thu, 9 May 2024 18:12:55 +0000 (18:12 +0000)]
crimson/osd: settle ECRecoveryBackend -- bring maybe_load_obc()
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Mon, 19 Jan 2026 22:29:07 +0000 (22:29 +0000)]
crimson/osd: make objctx loading agnostic about source of attrs
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Mon, 19 Jan 2026 22:27:19 +0000 (22:27 +0000)]
crimson/errorator: helpers for tl::expected
`ErrorHelper` is supposed to facilitate transformation of `std::error_code`
(and similar) into an immediately failed errorated `future` with extra error
checking.
The main idea is to let something like:
```cpp
my_ertr_t::future<my_value_t> foo() {
// ...
// `maybe_decoded` here is an instance of `tl::expected` carrying `std::error_code`
// in its error part
if (!maybe_decoded) {
// `std::error_code` can convey errors `my_ertr_t` does not allow – in that case,
// it would be helpful to get at least a run-time assert.
return ErrorHelper<my_ertr_t>::from_error<my_value_t>(maybe_decoded.error());
}
// ...
}
```
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit
a7ffc18eb40b9145fca5f064c4b3d097bffeb8d0 )
Radoslaw Zarzynski [Tue, 20 Jan 2026 15:23:22 +0000 (15:23 +0000)]
crimson/*: rename errorator-loop.h into errorator-utils.h
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit
682e4ff4322a895a0bdb6c9cc0d00a516499baad )
Radoslaw Zarzynski [Thu, 9 May 2024 10:25:08 +0000 (10:25 +0000)]
crimson/osd: delegate md loading outside of ObjectContextLoader::load_obc()
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Thu, 9 May 2024 10:20:33 +0000 (10:20 +0000)]
crimson/osd: dissect metadata decoding from PGBackend::load_metadata()
This loosens the coupling between loading and decoding making
the latter reusable with metadata coming from other source than
local object store.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Thu, 9 May 2024 09:44:56 +0000 (09:44 +0000)]
crimson/osd: make OSD::osd_stat compliant with multi-core
The EC recovery backend needs `inc_osd_stat_repaired()`.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Thu, 2 May 2024 13:29:52 +0000 (13:29 +0000)]
crimson/osd: add support for reads over EC pool
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 1 May 2024 17:04:12 +0000 (17:04 +0000)]
crimson/osd: fix compiler warnings on copy elision being prevented
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Tue, 23 Apr 2024 13:54:23 +0000 (13:54 +0000)]
crimson/osd: on the cloning path bump obj version closer to its usage
My understanding at the time of writing is this change is a pure
refactoring.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Wed, 3 Apr 2024 14:37:20 +0000 (14:37 +0000)]
crimson/osd: fix std::moving in ShardServices
```
/home/rzarzynski/ceph2/src/crimson/osd/shard_services.cc:595:9: required from here
/home/rzarzynski/ceph2/src/crimson/osd/shard_services.cc:596:10: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
596 | auto [pool, name, ec_profile] = std::move(std::get<0>(ret).get0());
| ^~~~~~~~~~~~~~~~~~~~~~~~
/home/rzarzynski/ceph2/src/crimson/osd/shard_services.cc:596:10: note: remove ‘std::move’ call
/home/rzarzynski/ceph2/src/crimson/osd/shard_services.cc:597:10: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
597 | auto coll = std::move(std::get<1>(ret).get0());
| ^~~~
/home/rzarzynski/ceph2/src/crimson/osd/shard_services.cc:597:10: note: remove ‘std::move’ call
```
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Tue, 26 Mar 2024 14:25:18 +0000 (14:25 +0000)]
crimson/osd: implement ECRecoveryBackend::commit_txn_send_replies()
This bypasses the crimson-msgr for local ops.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Tue, 26 Mar 2024 14:24:59 +0000 (14:24 +0000)]
crimson/osd: implement ECRecoveryBackend::recover_object()
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Tue, 26 Mar 2024 12:18:04 +0000 (12:18 +0000)]
crimson/osd: wire up MOSDPGPush and MOSDPGPushReply in ECRecoveryBackend
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Radoslaw Zarzynski [Tue, 26 Mar 2024 11:47:38 +0000 (11:47 +0000)]
crimson/osd: ECReplicatedBackend embraces ECCommon::RecoveryBackend
The idea is to compose the latter into the former (thus the private
inheritance) to easily build a class that fulfills the crimon iface
called `crimson::ReplicatedBackend`.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>