]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
4 months agomake-debs.sh: Optionally take debian version bwc-debs
Zack Cerza [Fri, 7 Mar 2025 20:53:23 +0000 (13:53 -0700)]
make-debs.sh: Optionally take debian version

Our existing CI builds have names like:
  ceph-base_20.0.0-194-g6efaea33-1jammy_amd64.deb
Before this change, they are like:
  ceph-base_20.0.0-158-gb0de3a42-1_amd64.deb
This way we can pass e.g. "jammy" to end up with names compatible with our CI
builds.

Signed-off-by: Zack Cerza <zack@cerza.org>
4 months agofixup! make-debs.sh: Optionally avoid make-dist
Zack Cerza [Fri, 7 Mar 2025 20:52:41 +0000 (13:52 -0700)]
fixup! make-debs.sh: Optionally avoid make-dist

4 months agodebian/rules: Optionally enable sccache
Zack Cerza [Thu, 6 Mar 2025 19:36:42 +0000 (12:36 -0700)]
debian/rules: Optionally enable sccache

Signed-off-by: Zack Cerza <zack@cerza.org>
4 months agodebian/rules: Disable dh_dwz if DWZ=false
Zack Cerza [Wed, 20 Nov 2024 00:45:25 +0000 (17:45 -0700)]
debian/rules: Disable dh_dwz if DWZ=false

Signed-off-by: Zack Cerza <zack@redhat.com>
4 months agomake-debs.sh: Don't use ccache if using sccache
Zack Cerza [Thu, 6 Mar 2025 18:28:07 +0000 (11:28 -0700)]
make-debs.sh: Don't use ccache if using sccache

Signed-off-by: Zack Cerza <zack@cerza.org>
4 months agobuild-with-container.py: Pass version to make-debs
Zack Cerza [Wed, 5 Mar 2025 21:47:26 +0000 (14:47 -0700)]
build-with-container.py: Pass version to make-debs

Signed-off-by: Zack Cerza <zack@cerza.org>
4 months agomake-debs.sh: Optionally avoid make-dist
Zack Cerza [Wed, 5 Mar 2025 21:40:55 +0000 (14:40 -0700)]
make-debs.sh: Optionally avoid make-dist

Signed-off-by: Zack Cerza <zack@cerza.org>
4 months agoMerge pull request #62016 from zmc/bwc-for-pipeline
Zack Cerza [Wed, 5 Mar 2025 21:28:15 +0000 (14:28 -0700)]
Merge pull request #62016 from zmc/bwc-for-pipeline

build-with-container: Updates to support ceph-dev-pipeline

4 months agobuild-with-container.py: Add --rpmbuild-extra-args 62016/head
Zack Cerza [Tue, 25 Feb 2025 16:15:32 +0000 (09:15 -0700)]
build-with-container.py: Add --rpmbuild-extra-args

Signed-off-by: Zack Cerza <zack@cerza.org>
4 months agoDockerfile.build: Install sccache
Zack Cerza [Mon, 24 Feb 2025 19:30:13 +0000 (12:30 -0700)]
Dockerfile.build: Install sccache

Note that it is not used automatically.

Signed-off-by: Zack Cerza <zack@cerza.org>
4 months agobuild-with-container.py: Add --ceph-version
Zack Cerza [Thu, 13 Feb 2025 00:10:23 +0000 (17:10 -0700)]
build-with-container.py: Add --ceph-version

So that we can build from an extracted tarball, as opposed to a git repo.

Signed-off-by: Zack Cerza <zack@cerza.org>
4 months agomake-srpm.sh: Skip make-dist if tarball is present
Zack Cerza [Thu, 13 Feb 2025 00:10:01 +0000 (17:10 -0700)]
make-srpm.sh: Skip make-dist if tarball is present

Signed-off-by: Zack Cerza <zack@cerza.org>
4 months agobuild-with-container.py: Add --env-file
Zack Cerza [Sat, 8 Feb 2025 00:16:20 +0000 (17:16 -0700)]
build-with-container.py: Add --env-file

Signed-off-by: Zack Cerza <zack@cerza.org>
4 months agoMerge pull request #61939 from phlogistonjohn/jjm-bwc-updates-20250219
Zack Cerza [Wed, 5 Mar 2025 20:13:02 +0000 (13:13 -0700)]
Merge pull request #61939 from phlogistonjohn/jjm-bwc-updates-20250219

build-with-container: fixes and enhancements

4 months agoMerge pull request #61771 from aainscow/new_io_sequencer_sequences
Alex Ainscow [Wed, 5 Mar 2025 15:45:35 +0000 (15:45 +0000)]
Merge pull request #61771 from aainscow/new_io_sequencer_sequences

test: Add new sequences to the IO sequencer.

4 months agoMerge pull request #61263 from aainscow/legacy_ec
SrinivasaBharathKanta [Wed, 5 Mar 2025 14:04:49 +0000 (19:34 +0530)]
Merge pull request #61263 from aainscow/legacy_ec

OSD: Refactor EC to have two versions: Legacy and New EC

4 months agoMerge pull request #62075 from ronen-fr/wip-rf-more5-keys
Ronen Friedman [Wed, 5 Mar 2025 13:48:19 +0000 (15:48 +0200)]
Merge pull request #62075 from ronen-fr/wip-rf-more5-keys

bluestore, librados, msg: replace obsolete get_tracked_conf_keys()

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 months agoMerge pull request #62009 from Jayaprakash-ibm/wip-bdev-skip-aio-zero-size
Adam Kupczyk [Wed, 5 Mar 2025 12:07:25 +0000 (13:07 +0100)]
Merge pull request #62009 from Jayaprakash-ibm/wip-bdev-skip-aio-zero-size

blk/kernel : skip AIO thread for zero-sized devices

4 months agoMerge pull request #59429 from rhcs-dashboard/carbon-forms-rgw
Nizamudeen A [Wed, 5 Mar 2025 11:03:18 +0000 (16:33 +0530)]
Merge pull request #59429 from rhcs-dashboard/carbon-forms-rgw

mgr/dashboard: carbonize rgw user and bucket form

4 months agotest: ceph_test_rados_io_sequence - seq 14 - write object filling gaps 61771/head
Bill Scales [Mon, 16 Dec 2024 13:03:51 +0000 (13:03 +0000)]
test: ceph_test_rados_io_sequence - seq 14 - write object filling gaps

New sequence - write object initially with gaps and fill in the holes
until the object is fully populated. Permutate the step (gap between
writes), start at randomized offsets to produce gaps at the start of
the object as well as between writes

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
4 months agotest: ceph_test_rados_io_sequence - scripting enhancements
Bill Scales [Wed, 11 Dec 2024 08:30:37 +0000 (08:30 +0000)]
test: ceph_test_rados_io_sequence - scripting enhancements

Scripting enhancements for interactive mode - ignore lines
begining with #, add a sleep command

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
4 months agotest: ceph_test_rados_io_sequence - add truncate
Bill Scales [Tue, 10 Dec 2024 10:51:16 +0000 (10:51 +0000)]
test: ceph_test_rados_io_sequence - add truncate

Add support for truncate I/O in interactive mode

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
4 months agotest: ceph_test_rados_io_sequence - add append with gaps sequence
Bill Scales [Fri, 29 Nov 2024 11:12:40 +0000 (11:12 +0000)]
test: ceph_test_rados_io_sequence - add append with gaps sequence

New I/O sequence - appends to objects by writing past the old
object length so there is a gap before the new written data.
Tests permutations of write length and gap length.

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
4 months agotest: ceph_test_rados_io_sequence append sequences
Bill Scales [Wed, 27 Nov 2024 13:07:14 +0000 (13:07 +0000)]
test: ceph_test_rados_io_sequence append sequences

Sequence 11 - sequential appends of fixed size
Sequence 12 - sequentiial overwrite+append of fixed size and different offsets

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
4 months agotest: ceph_test_rados_io_sequence support appends
Bill Scales [Wed, 27 Nov 2024 10:33:28 +0000 (10:33 +0000)]
test: ceph_test_rados_io_sequence support appends

1. Add append I/O to extend size of object
2. Allow write I/Os to extend size of object
3. Make interactive mode handle EOF gracefully

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
4 months agomgr/dashboard: carbonize rgw user and bucket form 59429/head
Nizamudeen A [Wed, 23 Oct 2024 15:12:21 +0000 (20:42 +0530)]
mgr/dashboard: carbonize rgw user and bucket form

Fixes: https://tracker.ceph.com/issues/70119
Signed-off-by: Nizamudeen A <nia@redhat.com>
4 months agoMerge pull request #61744 from rhcs-dashboard/mgr-api-test-fixes
Nizamudeen A [Wed, 5 Mar 2025 05:24:29 +0000 (10:54 +0530)]
Merge pull request #61744 from rhcs-dashboard/mgr-api-test-fixes

qa/tests: retry the api call after making the request

4 months agoMerge pull request #61533 from clwluvw/prepare-op-cleanup
J. Eric Ivancich [Wed, 5 Mar 2025 02:17:40 +0000 (21:17 -0500)]
Merge pull request #61533 from clwluvw/prepare-op-cleanup

rgw: remove unused log op info from prepare_op

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 months agoMerge pull request #61942 from 9401adarsh/wip-adashoka-51855
J. Eric Ivancich [Wed, 5 Mar 2025 02:17:13 +0000 (21:17 -0500)]
Merge pull request #61942 from 9401adarsh/wip-adashoka-51855

rgw: add parameter for clients to time out incase they hit wrong url

Reviewed-by: Yuval Lifshitz <ylifshit@ibm.com>
4 months agoMerge pull request #61944 from kchheda3/wip-fix-opslog-crash
J. Eric Ivancich [Wed, 5 Mar 2025 02:16:47 +0000 (21:16 -0500)]
Merge pull request #61944 from kchheda3/wip-fix-opslog-crash

rgw/log: Fix crash during shutdown with ops-log enable.

Reviewed-By: Oguzhan Ozmen <oozmen@bloomberg.net>
4 months agoMerge pull request #62018 from cbodley/wip-rgw-admin-threads
J. Eric Ivancich [Wed, 5 Mar 2025 02:16:29 +0000 (21:16 -0500)]
Merge pull request #62018 from cbodley/wip-rgw-admin-threads

radosgw-admin: lower default thread pool size

Reviewed-By: Oguzhan Ozmen <oozmen@bloomberg.net>
4 months agoMerge pull request #61907 from cbodley/wip-70084
J. Eric Ivancich [Wed, 5 Mar 2025 02:15:45 +0000 (21:15 -0500)]
Merge pull request #61907 from cbodley/wip-70084

rgw: /admin/account APIs accept negative values

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
4 months agoMerge pull request #61158 from avanthakkar/fence-old-ranks-smb
Adam King [Tue, 4 Mar 2025 19:13:06 +0000 (14:13 -0500)]
Merge pull request #61158 from avanthakkar/fence-old-ranks-smb

cephadm: fence old ranks for SMB service

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
4 months agoMerge pull request #62103 from rhcs-dashboard/revert-pr-61089
Ernesto Puerta [Tue, 4 Mar 2025 19:10:13 +0000 (20:10 +0100)]
Merge pull request #62103 from rhcs-dashboard/revert-pr-61089

mgr/dashboard: Revert PR 61089

4 months agoMerge pull request #60844 from VinayBhaskar-V/main
Ilya Dryomov [Tue, 4 Mar 2025 18:53:54 +0000 (19:53 +0100)]
Merge pull request #60844 from VinayBhaskar-V/main

librbd: add rbd_diff_iterate3() API to take source snapshot by ID

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
4 months agoMerge pull request #62072 from idryomov/wip-70190
Ilya Dryomov [Tue, 4 Mar 2025 18:51:12 +0000 (19:51 +0100)]
Merge pull request #62072 from idryomov/wip-70190

librbd: fix a deadlock on image_lock caused by Mirror::image_disable()

Reviewed-by: Ramana Raja <rraja@redhat.com>
4 months agoMerge pull request #61930 from thotz/s3-tests-verify-restore
Soumya Koduri [Tue, 4 Mar 2025 16:39:04 +0000 (22:09 +0530)]
Merge pull request #61930 from thotz/s3-tests-verify-restore

qa/rgw: add new teuthology for cloud restore s3 tests

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Adam Emerson <aemerson@redhat.com>
Reviewed-by: Soumya Koduri <skoduri@redhat.com>
4 months agoMerge pull request #61364 from ifed01/wip-ifed-no-compression-plugin-reload
Jaya Prakash [Tue, 4 Mar 2025 15:03:31 +0000 (20:33 +0530)]
Merge pull request #61364 from ifed01/wip-ifed-no-compression-plugin-reload

os/bluestore: do cache locally compressor engines ever used.

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
4 months agoMerge pull request #61908 from Jayaprakash-ibm/wip-time-measure-fix
Jaya Prakash [Tue, 4 Mar 2025 15:01:37 +0000 (20:31 +0530)]
Merge pull request #61908 from Jayaprakash-ibm/wip-time-measure-fix

os/bluestore : Assigning a named variable to ceph::time_guard to prevent immediate destruction

Reviewed-by: Igor Fedotov <igor.fedotov@croit.io>
Reviewed-by: Radoslaw Zarzynski <rzarzynski@redhat.com>
4 months agoMerge pull request #61882 from liu-chunmei/fault_range
Jaya Prakash [Tue, 4 Mar 2025 15:00:06 +0000 (20:30 +0530)]
Merge pull request #61882 from liu-chunmei/fault_range

os/bluestore: fix fault_range for _do_write_v2

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
4 months agoMerge pull request #61843 from ifed01/wip-ifed-fix-expand
Jaya Prakash [Tue, 4 Mar 2025 14:59:36 +0000 (20:29 +0530)]
Merge pull request #61843 from ifed01/wip-ifed-fix-expand

os/bluestore: fix bdev expansion and more

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
4 months agoMerge pull request #61502 from Jayaprakash-ibm/wip-refactor-allocator-class
Jaya Prakash [Tue, 4 Mar 2025 14:57:54 +0000 (20:27 +0530)]
Merge pull request #61502 from Jayaprakash-ibm/wip-refactor-allocator-class

os/bluestore : Refactoring Allocator Class

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
Reviewed-by: Igor Fedotov <igor.fedotov@croit.io>
4 months agoRevert "pybind/mgr: Protobuffer file generation for grpc deps." 62103/head
Nizamudeen A [Tue, 4 Mar 2025 14:13:26 +0000 (19:43 +0530)]
Revert "pybind/mgr: Protobuffer file generation for grpc deps."

This reverts commit 0ff89b041dcdb1a3322294a714630859412631d5.

Signed-off-by: Nizamudeen A <nia@redhat.com>
4 months agoRevert "pybind/mgr: Generate pb2 file in src/pybind/mgr/dashboard/services/proto...
Nizamudeen A [Tue, 4 Mar 2025 14:13:15 +0000 (19:43 +0530)]
Revert "pybind/mgr: Generate pb2 file in src/pybind/mgr/dashboard/services/proto using the protobuf file from the gateway submodule."

This reverts commit 7f2e1910af05803e5d19c993344a5b7f13040259.

Signed-off-by: Nizamudeen A <nia@redhat.com>
4 months agoRevert "Move proto generation code block out of if(WITH_MGR_DASHBOARD_FRONTEND)."
Nizamudeen A [Tue, 4 Mar 2025 14:12:46 +0000 (19:42 +0530)]
Revert "Move proto generation code block out of if(WITH_MGR_DASHBOARD_FRONTEND)."

This reverts commit 37e633384b7c18893bc0e30a8f3967f6496da00b.

Signed-off-by: Nizamudeen A <nia@redhat.com>
4 months agoMerge pull request #61596 from cbodley/wip-69741
Casey Bodley [Tue, 4 Mar 2025 14:32:40 +0000 (09:32 -0500)]
Merge pull request #61596 from cbodley/wip-69741

qa/rgw: fix user cleanup in s3tests task

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
4 months agoqa/suites/orch: add a test to verify ctdb_status doesn't include GONE node 61158/head
Avan Thakkar [Thu, 9 Jan 2025 15:40:16 +0000 (21:10 +0530)]
qa/suites/orch: add a test to verify ctdb_status doesn't include GONE node

Signed-off-by: Avan Thakkar <athakkar@redhat.com>
4 months agoMerge PR #60726 into main
Venky Shankar [Tue, 4 Mar 2025 12:52:34 +0000 (18:22 +0530)]
Merge PR #60726 into main

* refs/pull/60726/head:
qa: add test checking 'journal import' from empty dump file
cephfs-journal-tool: fix segfault during 'journal import' from invalid dump file

Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
4 months agoMerge pull request #60938 from joscollin/wip-fix-try-lock
Venky Shankar [Tue, 4 Mar 2025 12:51:23 +0000 (18:21 +0530)]
Merge pull request #60938 from joscollin/wip-fix-try-lock

cephfs_mirror: do not log the previous error

Reviewed-by: Venky Shankar <vshankar@redhat.com>
4 months agoMerge pull request #61073 from ljflores/tracker-69098
Venky Shankar [Tue, 4 Mar 2025 12:45:42 +0000 (18:15 +0530)]
Merge pull request #61073 from ljflores/tracker-69098

qa/suites/fs/upgrade/mds_upgrade_sequence/tasks: set require-osd-release

Reviewed-by: Venky Shankar <vshankar@redhat.com>
4 months agoMerge pull request #61076 from joscollin/wip-B69232-test_cephfs_mirror_stats_fail
Venky Shankar [Tue, 4 Mar 2025 12:44:33 +0000 (18:14 +0530)]
Merge pull request #61076 from joscollin/wip-B69232-test_cephfs_mirror_stats_fail

qa: fix test_cephfs_mirror_stats failure

Reviewed-by: Venky Shankar <vshankar@redhat.com>
4 months agoqa/rgw: add new teuthology for cloud restore s3 tests 61930/head
Jiffin Tony Thottan [Tue, 18 Feb 2025 07:34:00 +0000 (13:04 +0530)]
qa/rgw: add new teuthology for cloud restore s3 tests

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
4 months agotest/pybind/rbd: fix read offset in write zeroes tests 60844/head
Ilya Dryomov [Mon, 3 Mar 2025 16:59:35 +0000 (17:59 +0100)]
test/pybind/rbd: fix read offset in write zeroes tests

Random data is written and write zeroes is invoked on 0~256, but the
read is done on 256~256.  This means that if write zeroes malfunctions
the test wouldn't catch it (especially in the thick provision case).

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
4 months agolibrbd: add rbd_diff_iterate3() API to take source snapshot by ID
VinayBhaskar-V [Tue, 26 Nov 2024 11:18:51 +0000 (16:48 +0530)]
librbd: add rbd_diff_iterate3() API to take source snapshot by ID

Allow a diff to start from a non-user snapshot.  This would be used by
"rbd du" command to account for non-user snapshots which are currently
just skipped potentially resulting in underreported space usage and in
other places.

Fixes: https://tracker.ceph.com/issues/65720
Co-authored-by: Ilya Dryomov <idryomov@gmail.com>
Signed-off-by: Vinay Bhaskar Varada <vvarada@redhat.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
4 months agoMerge pull request #61433 from smanjara/wip-fix-tenant-replication
J. Eric Ivancich [Mon, 3 Mar 2025 19:02:19 +0000 (14:02 -0500)]
Merge pull request #61433 from smanjara/wip-fix-tenant-replication

rgw/multisite: fix forwarded requests for tenanted buckets

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 months agoMerge pull request #61421 from clwluvw/replication-conf
J. Eric Ivancich [Mon, 3 Mar 2025 19:01:12 +0000 (14:01 -0500)]
Merge pull request #61421 from clwluvw/replication-conf

rgw: handle destination bucket as an ARN in ReplicationConfiguration

Reviewed-by: Adam Emerson <aemerson@redhat.com>
4 months agoMerge pull request #60990 from umesh-mv/wip-umeshmv-67933
J. Eric Ivancich [Mon, 3 Mar 2025 18:58:07 +0000 (13:58 -0500)]
Merge pull request #60990 from umesh-mv/wip-umeshmv-67933

rgw/rgw_zone : fixing inline-data default value

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 months agoMerge pull request #61650 from cbodley/wip-rgw-delete-full-try
Casey Bodley [Mon, 3 Mar 2025 17:03:09 +0000 (12:03 -0500)]
Merge pull request #61650 from cbodley/wip-rgw-delete-full-try

rgw/rados: enable object deletion at rados pool quota

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Adam Emerson <aemerson@redhat.com>
4 months agoMerge PR #61321 into main
Patrick Donnelly [Mon, 3 Mar 2025 13:34:58 +0000 (08:34 -0500)]
Merge PR #61321 into main

* refs/pull/61321/head:
qa: update require-osd-release to tentacle
tools/monmaptool: bump new cluster version to X
doc/dev/release-checklists: remove ceph-container task
script/ceph-release-notes: add squid/tentacle
doc/dev/release-checklists:: mark task complete
doc/dev/release-checklist: add nightlies task
doc/dev/release-checklists: update ceph-build for tentacle
doc/dev/release-checklists: note redmine is done
qa: update to tentacle
doc/dev/release-checklist: question telemetry tentacle test
osd/OSDMap: update to tentacle
qa/workunits/cephtool/test: update to tentacle
mon/OSDMonitor: update to tentacle
common/options/global.yaml.in: update for tentacle
mon/MgrMonitor: update for tentacle
qa/standalone/mon/misc: update for tentacle
doc: update compatset for tentacle
doc: no deprecated features
include/ceph_features: add SERVER_TENTACLE feature bit
cephadm,ceph-volume: update to tentacle
doc/dev/release-checklist: add backport-create-issue
script: update backport-resolve-issue to tentacle
*: add constants and release names
ceph_release: update to tentacle
librbd: bump version
CMakeLists.txt: update VERSION
doc: remove obsolete checklist item
doc: reset for tentacle

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Bill Scales <bill_scales@uk.ibm.com>
Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
4 months agoMerge PR #60746 into main v20.0.0
Patrick Donnelly [Mon, 3 Mar 2025 13:31:36 +0000 (08:31 -0500)]
Merge PR #60746 into main

* refs/pull/60746/head:
client: skip unexpected command replies
mgr: indicate map message is acked instead of unhandled
osdc/Objecter: convert to ms_dispatch2 for ack
client: indicate maps are acked not processed
msg: add alternate statuses for ms_dispatch2 handling
tools/cephfs_mirror: do not process maps with fast dispatch
doc: add docs for volumes interface for charmap
qa: add tests for subvolume charmap settings
pybind/mgr/volumes: wire up charmap for subvol/subvolgroup
pybind/mgr: send MDS commands through cephfs client
pybind/cephfs: wire up mds_command2
mgr: add module method to send notifications
libcephfs: add mds_command2 for asynchronous commands
mgr: excise CephFS client from mgr C++ base
mgr: use std namespace
doc: add docs for CephFS charmap config
qa: add charmap tests
qa: add helpful exceptions for attr changes
qa: ignore libicu leaks
client: add wrappings for charmap manipuluation of dentry names
client: add dir_result_t::dentry::print
win32: add libicu Windows build
CMakeLists: add boost::locale dependency for client
install-deps: unconditionally install boost libraries
test/libcephfs: update root operation return values
client: refactor all path traversals through path_walk
test/libcephfs: test parallel creates
test/libcephfs: add test for lookup failure after readdir
client: init dentry shared_gen with invalid value
client: add _lookup debugging
client: remove redundant check
client: dump InodeStat from mds
mds: encode optmetadata in InodeStat sent to clients
mds: check client features for charmap
mds: add client feature bit for charmap
mds: wire up vxattr for changing charmap
mds: inherit charmap on mkdir
mds,include: add charmap optmetadata
mds,include: add inode_t optional metadata
client: hide alternate_name from API
client: move alternate_name once
client: optimize alternate_name passing to helper
client: relocate definition
client: print dentry with alternate_name on dump
client: move inode dump to print method
mds: add debugging for encoding lease stat
mds: make encode_lease a proper method
mds: add fscrypt metadata for inode stat size
client: use DentryRef for ref counting in MetaRequest
client: add DentryRef
client: add helper for determining if a perm check is necessary
client: cache client_permissions config
client: add debugging for conf changes
client: sort configs
client/UserPerm: add print method
client: note mount parameters in debug log
client: print stat mode in octal
common: add missing op string
include/filepath: add empty path check

Reviewed-by: Venky Shankar <vshankar@redhat.com>
4 months agoMerge pull request #61735 from Matan-B/wip-matanb-crimson-seastar-feb-25
Matan Breizman [Mon, 3 Mar 2025 12:55:00 +0000 (14:55 +0200)]
Merge pull request #61735 from Matan-B/wip-matanb-crimson-seastar-feb-25

seastar: bump up seastar submodule

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 months agoMerge pull request #61983 from adk3798/cephadm-fix-apply-same-nvmeof-service
Adam King [Mon, 3 Mar 2025 12:38:49 +0000 (07:38 -0500)]
Merge pull request #61983 from adk3798/cephadm-fix-apply-same-nvmeof-service

mgr/cephadm: don't block matching group for identical nvmeof services

Reviewed-by: Aviv Caro <133020857+caroav@users.noreply.github.com>
4 months agotest/crimson/seastore/CMakeLists: [arm64] disable omap manager 61735/head
Matan Breizman [Mon, 3 Mar 2025 09:31:56 +0000 (09:31 +0000)]
test/crimson/seastore/CMakeLists: [arm64] disable omap manager

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 months agocrimson: bump up seastar fixes
Matan Breizman [Sun, 9 Feb 2025 14:50:53 +0000 (14:50 +0000)]
crimson: bump up seastar fixes

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 months agoseastar: bump up seastar submodule
Matan Breizman [Sun, 9 Feb 2025 10:55:08 +0000 (10:55 +0000)]
seastar: bump up seastar submodule

Update branch to wip-matanb-seastar-feb-25

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 months agoMerge pull request #61494 from mohit84/seastar_configure
Matan Breizman [Mon, 3 Mar 2025 08:15:59 +0000 (10:15 +0200)]
Merge pull request #61494 from mohit84/seastar_configure

crimson: Provide an options to configure several seastar parameters

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
4 months agoMerge pull request #61874 from rhcs-dashboard/edit-storage-class
Nizamudeen A [Mon, 3 Mar 2025 05:23:42 +0000 (10:53 +0530)]
Merge pull request #61874 from rhcs-dashboard/edit-storage-class

mgr/dashboard: RGW - Edit Storage Class

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
4 months agoMerge pull request #61866 from xxhdx1985126/wip-seastore-omap-binary-search
Yingxin Cheng [Mon, 3 Mar 2025 02:25:32 +0000 (10:25 +0800)]
Merge pull request #61866 from xxhdx1985126/wip-seastore-omap-binary-search

crimson/os/seastore/omap_manager: do binary search on omap nodes

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 months agoMerge pull request #62076 from anthonyeleven/clarify-stretch-device-class
Zac Dover [Sun, 2 Mar 2025 20:51:34 +0000 (06:51 +1000)]
Merge pull request #62076 from anthonyeleven/clarify-stretch-device-class

doc/rados/operations: Clarify stretch mode vs device class

Reviewed-by: Zac Dover <zac.dover@proton.me>
4 months agoMerge pull request #61643 from rhcs-dashboard/nvmeof-img-trash
afreen23 [Sun, 2 Mar 2025 20:05:45 +0000 (01:35 +0530)]
Merge pull request #61643 from rhcs-dashboard/nvmeof-img-trash

mgr/dashboard: nvmeof trash rbd image on namespace rm

Reviewed-by: Afreen Misbah <afreen@ibm.com>
4 months agodoc/rados/operations: Clarify stretch mode vs device class 62076/head
Anthony D'Atri [Sun, 2 Mar 2025 15:43:18 +0000 (10:43 -0500)]
doc/rados/operations: Clarify stretch mode vs device class

Signed-off-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
4 months agobluestore: replace obsolete get_tracked_conf_keys() 62075/head
Ronen Friedman [Sun, 2 Mar 2025 13:02:09 +0000 (07:02 -0600)]
bluestore: replace obsolete get_tracked_conf_keys()

.. with get_tracked_keys().

Following https://github.com/ceph/ceph/pull/61394,
all uses of the deprecated interface will be updated,
and that old interface will be removed.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
4 months agolibrados,msg: replace obsolete get_tracked_conf_keys()
Ronen Friedman [Sun, 2 Mar 2025 12:53:05 +0000 (06:53 -0600)]
librados,msg: replace obsolete get_tracked_conf_keys()

.. with get_tracked_keys().

Following https://github.com/ceph/ceph/pull/61394,
all uses of the deprecated interface will be updated,
and that old interface will be removed.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
4 months agoMerge pull request #62073 from Matan-B/wip-matanb-arm64-gcc-build
Matan Breizman [Sun, 2 Mar 2025 12:58:00 +0000 (14:58 +0200)]
Merge pull request #62073 from Matan-B/wip-matanb-arm64-gcc-build

cmake/modules/BuildISAL.cmake: set no-integrated-as on clang only

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
4 months agocmake/modules/BuildISAL.cmake: set no-integrated-as on clang only 62073/head
Matan Breizman [Sun, 2 Mar 2025 08:42:45 +0000 (08:42 +0000)]
cmake/modules/BuildISAL.cmake: set no-integrated-as on clang only

this option is only relevant to clang, gcc will fail with:
```
CMake Error at ceph/build/src/erasure-code/isa/isal_ext-prefix/src/isal_ext-stamp/isal_ext-configure-Debug-impl.cmake:19 (message):
  Command failed (77):

   'env' 'CC=/usr/bin/gcc-11' './configure' '--prefix=ceph/build/src/isa-l/install' '--with-pic' '--enable-static' '--disable-shared' 'CFLAGS=-no-integrated-as'
```

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
4 months agolibrbd: fix a deadlock on image_lock caused by Mirror::image_disable() 62072/head
Ilya Dryomov [Sun, 2 Mar 2025 08:24:52 +0000 (09:24 +0100)]
librbd: fix a deadlock on image_lock caused by Mirror::image_disable()

With Mirror::image_disable() taking image_lock for write and calling
list_children() under it, the following deadlock is possible:

1. Mirror::image_disable() takes image_lock for write and calls
   list_children()
2. AbstractWriteLog::periodic_stats() timer fires (it runs every
   5 seconds) and ImageCacheState::write_image_cache_state() is called
   under a global timer_lock
3. ImageCacheState::write_image_cache_state() successfully takes
   owner_lock and blocks attempting to take image_lock for read because
   it's already held for write by Mirror::image_disable()
4. list_children() blocks inside of a call to ImageState::close() on
   a descendant image
5. The descendant image close can't proceed because TokenBucketThrottle
   requires a global timer_lock to complete QosImageDispatch shutdown
6. safe_timer thread which is holding timer_lock can't proceed because
   ImageCacheState::write_image_cache_state() is effectively blocked on
   the descendant image close through Mirror::image_disable()

Until commit 281a64acf920 ("librbd: remove snapshot mirror image-meta
when disabling"), Mirror::image_disable() was taking image_lock only for
read meaning that this deadlock wasn't possible.  The only other change
that commit 281a64acf920 made to the code block protected by image_lock
was using child_mirror_image_internal for cls_client::mirror_image_get()
call on descendant images instead of mirror_image_internal to preserve
the value of mirror_image_internal for later.  Both are local variables
that have nothing to do with image_lock, so I'm going back and making
Mirror::image_disable() take image_lock only for read again.

Fixes: https://tracker.ceph.com/issues/70190
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
4 months agoMerge pull request #61441 from ivancich/wip-dynamic-resharding-min-shards
J. Eric Ivancich [Sat, 1 Mar 2025 15:41:01 +0000 (10:41 -0500)]
Merge pull request #61441 from ivancich/wip-dynamic-resharding-min-shards

rgw: allow per-bucket minimum number of shards

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 months agoMerge pull request #62010 from ronen-fr/wip-rf-monotime
Ronen Friedman [Sat, 1 Mar 2025 11:07:09 +0000 (13:07 +0200)]
Merge pull request #62010 from ronen-fr/wip-rf-monotime

osd/scrub: tolerate non-monotonic scrub queue cutoff updates

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 months agoMerge pull request #61541 from rishabh-d-dave/mgr-vol-comment
Rishabh Dave [Sat, 1 Mar 2025 06:51:01 +0000 (12:21 +0530)]
Merge pull request #61541 from rishabh-d-dave/mgr-vol-comment

mgr/vol: add a helpful comment in async_job.py

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 months agoMerge pull request #61993 from ronen-fr/wip-rf-nbq-sign
Ronen Friedman [Sat, 1 Mar 2025 05:51:01 +0000 (07:51 +0200)]
Merge pull request #61993 from ronen-fr/wip-rf-nbq-sign

test/test_not_before_queue: fix Signed-vs-Unsigned warnings

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 months agodoc/rgw: update dynamic resharding docs to reflect recent changes 61441/head
J. Eric Ivancich [Fri, 28 Feb 2025 19:22:53 +0000 (14:22 -0500)]
doc/rgw: update dynamic resharding docs to reflect recent changes

The documentation on dynamic resharding is updated to include a) a
description of reducing the number of shards, b) related configuration
options, and c) the radosgw-admin sub-command to set a minimum number
of shards for a specific bucket.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
4 months agodoc: document the new container build tool and link to it in README 61939/head
John Mulligan [Fri, 14 Feb 2025 19:51:03 +0000 (14:51 -0500)]
doc: document the new container build tool and link to it in README

Add a new markdown file in the root of the tree, ContainerBuild.md, that
can serve as a basic introduction to the new container build tools
recently merged to ceph.
Add a small 'breadcrumb' section to the project README.md to help find
this new document.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 months agoscript/build-with-container: add support for overlay dir
John Mulligan [Thu, 20 Feb 2025 00:17:30 +0000 (19:17 -0500)]
script/build-with-container: add support for overlay dir

The source dir (aka homedir, default /ceph) is mounted in the container
read-write. This is needed as the various ceph build scripts expect to
write things into the tree - often this is in the build directory - but
not always. This can lead to small messes and/or situations that are
confusing to debug, especially if one is jumping between distros often.
Add an option to use an overlay volume for the homedir - by default we
enable a persistent overlay with a supplied "upper dir" where files that
were written will appear. One can also enable a temporary overlay that
forgets the writes when the container exits - maybe useful when doing
experiments in 'interactive' mode.

To use this option run the command with the `--overlay=<dir>` option.
For example: `./src/script/build-with-container.py -b build.inner
--overlay-dir build.ovr`. This will create a directory
`build.ovr/content` automatically and all new files will appear there.
For example the build directory will appear at
`build.ovr/content/build.inner`.

To use the temporary overlay use a `-` as the directory name. For
example: `./src/script/build-with-container.py -b build.inner
--overlay-dir -`

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 months agoscript/build-with-container: skip dnf cache dir volume mounts on docker
John Mulligan [Thu, 20 Feb 2025 14:50:49 +0000 (09:50 -0500)]
script/build-with-container: skip dnf cache dir volume mounts on docker

When using docker the --volume option is not available during build
(docker [buildx] build), unlike podman. Since passing these volumes must
be conditional on them being set up I see no way to handle this short of
just disabling the option on docker. Log the fact that it's being
skipped - the only other issue is that we pointlessly set up some dirs
and the build may be a bit slower.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 months agoscript/build-with-container: remove default --volume arg from ctr build
John Mulligan [Wed, 19 Feb 2025 18:20:36 +0000 (13:20 -0500)]
script/build-with-container: remove default --volume arg from ctr build

On the original github pr #59841 user fayak kindly informed us that the
--volume option was not supported by docker build. Since this section
was a leftover from a previous way of constructing the builder image and
was no longer needed we simply removed it.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 months agoscript/build-with-container.py: build builder image with --pull=always
John Mulligan [Wed, 19 Feb 2025 18:20:01 +0000 (13:20 -0500)]
script/build-with-container.py: build builder image with --pull=always

Construct the builder image using the --pull=always flag to initiate a
pull of the base image (centos, ubuntu, etc) in order to avoid using a
stale base image. Since the script automatically (by default) avoids
building if a matching tag is in local container storage it is handy to
use a fresh base when it *is* time to build something. Otherwise, you
end up in a situation like I sometimes do - using a months old base
unintentionally.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 months agoscript/build-with-container: add a common packages target
John Mulligan [Fri, 14 Feb 2025 19:50:42 +0000 (14:50 -0500)]
script/build-with-container: add a common packages target

Add a `packages` target to build-with-container.py that requests a build
of packages, whatever package type is native to the distro selected.
For example `./src/script/build-with-container.py -d ubuntu22.04 -e
packages` will automatically select a deb packages build where
`./src/script/build-with-container.py -d centos9 -e packages` will
trigger rpm packages to be built. The underlying package-type specific
targets remain unchanged.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 months agoscript/build-with-container: support custom tag suffixes
John Mulligan [Fri, 14 Feb 2025 16:44:35 +0000 (11:44 -0500)]
script/build-with-container: support custom tag suffixes

Previously, one could use the `--tag` option to completely override the
container tag generated by the script. However, there are cases where
one may want to add information to the tag rather than override it.
Allow the tag value to start with a plus (+) character that indicates
that the remainder of the string is to be suffixed to the generated tag.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 months agoscript/build-with-container: add --base-branch cli option
John Mulligan [Fri, 14 Feb 2025 16:37:04 +0000 (11:37 -0500)]
script/build-with-container: add --base-branch cli option

Add a command line option --base-branch that allows the user to supply a
custom base branch name. git doesn't make determining this easy so we
always assume a base branch of 'main' by default - but this option lets
one change that.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 months agosrc/script: rename CEPH_BRANCH to CEPH_BASE_BRANCH for build container
John Mulligan [Fri, 14 Feb 2025 16:24:29 +0000 (11:24 -0500)]
src/script: rename CEPH_BRANCH to CEPH_BASE_BRANCH for build container

Previously, we were passing build argument of CEPH_BRANCH, but that was
a bit misleading as we expect the current branch to vary a bit (as users
will be using branches to develop and test the code). What we actually
care about is the base branch ('main', 'squid', etc) as that is fed into
our bootstrap script and we want the option to simple variations based
on the name of said base branch.
Rename CEPH_BRANCH to CEPH_BASE_BRANCH for clarity.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 months agoscript/build-with-container: add --current-branch cli option
John Mulligan [Fri, 14 Feb 2025 16:24:06 +0000 (11:24 -0500)]
script/build-with-container: add --current-branch cli option

Add a new --current-branch argument that lets the user supply a name for
the current branch. This allows the automatic tag generation to avoid
calling git - something useful if the tree is not using a git checkout
(like a tarball). It also allows you to pull a temporary branch in git
but ignore it and act like the temporary branch is the base branch.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 months agoscript/build-with-container: add more distro aliases
John Mulligan [Tue, 11 Feb 2025 23:36:13 +0000 (18:36 -0500)]
script/build-with-container: add more distro aliases

Add a system to define distro name aliases and use that to define some
additional aliases, primarily to match ubuntu codenames rather than
version numbers. Requested by Zack.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 months agoscript/build-with-container: apply black formatting to file
John Mulligan [Thu, 20 Feb 2025 00:21:27 +0000 (19:21 -0500)]
script/build-with-container: apply black formatting to file

After the last set of fixes and enhancements I forgot to reformat the
file. This applies standard `black` formatting to the file.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
4 months agorgw: add radosgw-admin sub-command to set-min-shards for a bucket
J. Eric Ivancich [Tue, 4 Feb 2025 03:01:47 +0000 (22:01 -0500)]
rgw: add radosgw-admin sub-command to set-min-shards for a bucket

There is now a mechansim to set the minimum number of shards when a
bucket is created, and dynamic resharding adheres to that
setting. This adds the ability to modify that minimum shard count that
exists within the bucket layout of the bucket instance
object. Example:

    radosgw-admin bucket set-min-shards --bucket=<bucket> \
        --num-shards=<value>

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
4 months agorgw: allow per-bucket minimum number of shards
J. Eric Ivancich [Wed, 15 Jan 2025 16:26:59 +0000 (11:26 -0500)]
rgw: allow per-bucket minimum number of shards

Dynamic resharding can now reduce the number of shards. The code
currently has a hard-coded value of 11 as the minimum number of shards
dynamic resharding can reshard to. There may be cases where the user
wants to set an alternate minimum, such as when they have a sense of
how many objects the bucket will eventually hold.

This PR builds off of https://github.com/ceph/ceph/pull/61269 .

That PR allows the user to specify an initial number of shards during
bucket creation. This PR then takes that number to be the minimum and
saves it in the layout field of the bucket instance object
(RGWBucketInfo).

When dynamic resharding is triggered, it will use that stored value as
a minimum number of shards for resharing.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
4 months agoMerge pull request #62021 from dmick/container-rmi-tags
Dan Mick [Fri, 28 Feb 2025 19:31:13 +0000 (11:31 -0800)]
Merge pull request #62021 from dmick/container-rmi-tags

container/build.sh: remove local container images

4 months agoMerge pull request #61946 from cbodley/wip-70013
Casey Bodley [Fri, 28 Feb 2025 16:00:02 +0000 (11:00 -0500)]
Merge pull request #61946 from cbodley/wip-70013

rgw: PutObjectLockConfiguration can enable object lock on existing buckets

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
4 months agoqa/rgw: s3tests task adds --purge-data to 'account rm' 61596/head
Casey Bodley [Tue, 4 Feb 2025 16:12:43 +0000 (11:12 -0500)]
qa/rgw: s3tests task adds --purge-data to 'account rm'

Signed-off-by: Casey Bodley <cbodley@redhat.com>
4 months agoradosgw-admin: support 'account rm --purge-data'
Casey Bodley [Tue, 4 Feb 2025 16:09:12 +0000 (11:09 -0500)]
radosgw-admin: support 'account rm --purge-data'

analogous to 'user rm --purge-data'. instead of failing if the account
still owns buckets, remove the remaining buckets/objects

Signed-off-by: Casey Bodley <cbodley@redhat.com>
4 months agoMerge pull request #61901 from cbodley/wip-69936
Casey Bodley [Fri, 28 Feb 2025 14:35:31 +0000 (09:35 -0500)]
Merge pull request #61901 from cbodley/wip-69936

rgw/cksum: GetObject omits checksum headers for Range requests

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>