]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/log
ceph.git
3 years agocrimson/.../replicated_request,logmissing_request: retain reference to req 48350/head
Samuel Just [Wed, 28 Sep 2022 23:36:46 +0000 (23:36 +0000)]
crimson/.../replicated_request,logmissing_request: retain reference to req

Otherwise, operator<< and dump_detail would need to accessing req after
the call to handle_rep_op.

Fixes: https://tracker.ceph.com/issues/57739
Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agoMerge pull request #48322 from zdover23/wip-doc-2022-10-01-rados-ops-ec-front-matter...
zdover23 [Sat, 1 Oct 2022 04:32:10 +0000 (14:32 +1000)]
Merge pull request #48322 from zdover23/wip-doc-2022-10-01-rados-ops-ec-front-matter-rewrite

doc/rados: rewrite EC intro

Reviewed-by: Cole Mitchell <cole.mitchell@gmail.com>
3 years agodoc/rados: rewrite EC intro 48322/head
Zac Dover [Thu, 1 Sep 2022 19:08:00 +0000 (05:08 +1000)]
doc/rados: rewrite EC intro

This PR rewrites the front matter in the "Erasure Code"
section of the RADOS documentation. Previously, the information
in this section was syntactically confused. I have also fleshed
out the distinction between erasure coding and replication.

Co-Author: Cole Mitchell <cole.mitchell@gmail.com>
Signed-off-by: Zac Dover <zac.dover@gmail.com>
Signed-off-by: Zac Dover <zac.dover@gmail.com>
3 years agoMerge pull request #43567 from jdurgin/wip-gov
Josh Durgin [Sat, 1 Oct 2022 03:05:29 +0000 (20:05 -0700)]
Merge pull request #43567 from jdurgin/wip-gov

doc/governance: add proposed structure

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Zac Dover <zac.dover@gmail.com>
3 years agodoc: merge new and old governance description 43567/head
Josh Durgin [Fri, 30 Sep 2022 23:34:04 +0000 (19:34 -0400)]
doc: merge new and old governance description

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
3 years agodoc/governance: updates based on review comments
Josh Durgin [Fri, 18 Mar 2022 23:20:43 +0000 (19:20 -0400)]
doc/governance: updates based on review comments

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
3 years agoMerge pull request #48072 from ceph/wip-yuriw-release-17.2.4-main
Laura Flores [Fri, 30 Sep 2022 20:22:50 +0000 (15:22 -0500)]
Merge pull request #48072 from ceph/wip-yuriw-release-17.2.4-main

doc: 17.2.4 Release Notes

3 years agodoc: 17.2.4 Release Notes 48072/head
Yuri Weinstein [Tue, 13 Sep 2022 17:21:10 +0000 (10:21 -0700)]
doc: 17.2.4 Release Notes

Fixes: https://tracker.ceph.com/issues/57472
Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
Signed-off-by: Laura Flores <lflores@redhat.com>
3 years agoMerge pull request #48259 from ktdreyer/build-win-fixes
Ken Dreyer [Fri, 30 Sep 2022 19:36:29 +0000 (15:36 -0400)]
Merge pull request #48259 from ktdreyer/build-win-fixes

win32: support building windows client on RHEL

Reviewed-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
Reviewed-by: Justin Caratzas <jcaratza@redhat.com>
3 years agodoc/governance: update based on review and CLT discussions
Josh Durgin [Fri, 11 Mar 2022 20:17:54 +0000 (15:17 -0500)]
doc/governance: update based on review and CLT discussions

Clarified some parts of council that were discussed previously,
specifying the number of members and a staggered term.

Added a bit more about the steering committee - thinking the meetings
could be split between tactical (3/4 weeks) and strategic (monthly),
and still open to anyone to join the discussion, but restricted to
only members voting.

Removed the meeting section since that belongs more in a separate
place, like the ceph.io website.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
3 years agodoc/governance: add proposed structure
Josh Durgin [Fri, 15 Oct 2021 15:36:07 +0000 (11:36 -0400)]
doc/governance: add proposed structure

This is Sage's summary of the Ceph leadership team discussions around
this topic. Still many details to be worked out, this is just one
concrete proposal as a basis for further discussion.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
3 years agoMerge pull request #47249 from nSedrickm/aria-labels-accessibility-update
Nizamudeen A [Fri, 30 Sep 2022 05:07:52 +0000 (10:37 +0530)]
Merge pull request #47249 from nSedrickm/aria-labels-accessibility-update

mgr/dashboard: Improve level A accessibility for missing aria labels in tabs and listitems

Reviewed-by: Pegonzal <NOT@FOUND>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Laura Flores <lflores@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
3 years agoMerge pull request #48299 from neha-ojha/wip-crimson-nightlies
Neha Ojha [Thu, 29 Sep 2022 23:44:22 +0000 (16:44 -0700)]
Merge pull request #48299 from neha-ojha/wip-crimson-nightlies

qa/crontab: run crimson-rados on the main branch

Reviewed-by: Sam Just <sjust@redhat.com>
Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
3 years agoMerge pull request #48215 from zmc/osd-containers-tasks
Zack Cerza [Thu, 29 Sep 2022 22:57:30 +0000 (16:57 -0600)]
Merge pull request #48215 from zmc/osd-containers-tasks

qa/tasks: Updates to enable containerized loop-backed OSDs

3 years agoMerge pull request #48300 from zmc/db-e2e-url-fix
Zack Cerza [Thu, 29 Sep 2022 22:54:48 +0000 (16:54 -0600)]
Merge pull request #48300 from zmc/db-e2e-url-fix

mgr/dashboard: Fix broken Fedora image URL

3 years agomgr/dashboard: Fix broken Fedora image URL 48300/head
Zack Cerza [Thu, 29 Sep 2022 19:44:46 +0000 (13:44 -0600)]
mgr/dashboard: Fix broken Fedora image URL

This mirror apparently stopped working, breaking jobs that use this
script.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoMerge pull request #47679 from cbodley/wip-rgw-sal-bootstrap
Casey Bodley [Thu, 29 Sep 2022 17:45:00 +0000 (13:45 -0400)]
Merge pull request #47679 from cbodley/wip-rgw-sal-bootstrap

rgw: start on a rgw::sal::ConfigStore for boostrapping other stores

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
3 years agoqa/crontab: run crimson-rados on the main branch 48299/head
Neha Ojha [Thu, 29 Sep 2022 17:44:56 +0000 (17:44 +0000)]
qa/crontab: run crimson-rados on the main branch

It isn't useful to run the crimson suite on Quincy because we don't
backport crimson fixes.

Signed-off-by: Neha Ojha <nojha@redhat.com>
3 years agoMerge pull request #48287 from andriytk/fix-rpmbuild
Casey Bodley [Thu, 29 Sep 2022 17:43:14 +0000 (13:43 -0400)]
Merge pull request #48287 from andriytk/fix-rpmbuild

compressor: fix rpmbuild on RHEL-8

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 years agoMerge pull request #48194 from zmc/python36-prettytable
Zack Cerza [Thu, 29 Sep 2022 15:46:18 +0000 (09:46 -0600)]
Merge pull request #48194 from zmc/python36-prettytable

3 years agoMerge pull request #48260 from phlogistonjohn/jjm-cephadm-import
Adam King [Thu, 29 Sep 2022 15:00:50 +0000 (11:00 -0400)]
Merge pull request #48260 from phlogistonjohn/jjm-cephadm-import

cephadm: Clean up how test files import/use cephadm as a module

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Michael Fritch <mfritch@suse.com>
3 years agoMerge pull request #47814 from vshankar/wip-57072
Rishabh Dave [Thu, 29 Sep 2022 14:20:47 +0000 (19:50 +0530)]
Merge pull request #47814 from vshankar/wip-57072

pybind/mgr: check for empty metadata mgr_module:get_metadata()

Reviewed-by: Rishabh Dave <ridave@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
Reviewed-by: Jos Collin <jcollin@redhat.com>
Reviewed-by: Kotresh HR <khiremat@redhat.com>
Reviewed-by: Neeraj Pratap Singh <neesingh@redhat.com>
3 years agoMerge pull request #48174 from batrick/i57597
Venky Shankar [Thu, 29 Sep 2022 12:44:23 +0000 (18:14 +0530)]
Merge pull request #48174 from batrick/i57597

qa: output debugging for cephfs-journal-tool/cephfs-data-scan

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
Reviewed-by: Kotresh HR <khiremat@redhat.com>
3 years agoMerge pull request #47991 from kotreshhr/qa-fix-57446
Rishabh Dave [Thu, 29 Sep 2022 12:26:35 +0000 (17:56 +0530)]
Merge pull request #47991 from kotreshhr/qa-fix-57446

qa: Fix test_subvolume_snapshot_info_if_orphan_clone

Reviewed-by: Rishabh Dave <ridave@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
3 years agoMerge pull request #47985 from kotreshhr/qa-fix-57205
Rishabh Dave [Thu, 29 Sep 2022 12:24:24 +0000 (17:54 +0530)]
Merge pull request #47985 from kotreshhr/qa-fix-57205

qa: Fix test_subvolume_group_ls_filter_internal_directories

Reviewed-by: Rishabh Dave <ridave@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
3 years agoMerge pull request #47879 from lxbsz/wip-57344
Rishabh Dave [Thu, 29 Sep 2022 12:21:31 +0000 (17:51 +0530)]
Merge pull request #47879 from lxbsz/wip-57344

client: fix incorrectly showing the .snap size for stat

Reviewed-by: Rishabh Dave <ridave@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agoMerge pull request #48257 from batrick/i57657
Venky Shankar [Thu, 29 Sep 2022 11:55:10 +0000 (17:25 +0530)]
Merge pull request #48257 from batrick/i57657

qa: ignore expected scrub error

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
3 years agoMerge pull request #48264 from batrick/i57677
Venky Shankar [Thu, 29 Sep 2022 11:52:33 +0000 (17:22 +0530)]
Merge pull request #48264 from batrick/i57677

qa: ignore MDS_TRIM warnings when osd thrashing

Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
3 years agoMerge pull request #48282 from ljflores/wip-telemetry-perf-fix
Yuri Weinstein [Wed, 28 Sep 2022 22:37:11 +0000 (15:37 -0700)]
Merge pull request #48282 from ljflores/wip-telemetry-perf-fix

mgr/telemetry: handle daemons with complex ids

Reviewed-by: Yaarit Hatuka <yaarithatuka@gmail.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
3 years agoradosgw-admin: use ConfigStore and related zone APIs 47679/head
Casey Bodley [Wed, 7 Sep 2022 18:19:34 +0000 (14:19 -0400)]
radosgw-admin: use ConfigStore and related zone APIs

replaces all of rgw_admin.cc's use of the RGWSystemMetaObj subclasses
with calls to the ConfigStore

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agorgw: add higher-level functions to rgw_zone.*
Casey Bodley [Wed, 7 Sep 2022 18:17:52 +0000 (14:17 -0400)]
rgw: add higher-level functions to rgw_zone.*

duplicates some of the logic from member functions of
RGWRealm/Period/ZoneGroup/ZoneParams, but as free functions in terms
of the sal::ConfigStore APIs

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agoradosgw-admin: fix --tier-config for 'zonegroup add'
Casey Bodley [Fri, 2 Sep 2022 17:52:22 +0000 (13:52 -0400)]
radosgw-admin: fix --tier-config for 'zonegroup add'

ZONEGROUP_ADD applies changes to RGWZoneParams based on the
--tier-config option, but doesn't write those changes to rados

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agoradosgw-admin: create a ConfigStore
Casey Bodley [Thu, 1 Sep 2022 19:54:03 +0000 (15:54 -0400)]
radosgw-admin: create a ConfigStore

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agorgw: add create_config_store() factory
Casey Bodley [Wed, 31 Aug 2022 02:57:39 +0000 (22:57 -0400)]
rgw: add create_config_store() factory

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agorgw: add rgw::sal::ImmutableConfigStore for json-based config
Casey Bodley [Tue, 13 Sep 2022 15:47:46 +0000 (11:47 -0400)]
rgw: add rgw::sal::ImmutableConfigStore for json-based config

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agorgw: add rgw::sal::SQLiteConfigStore
Casey Bodley [Tue, 30 Aug 2022 21:58:09 +0000 (17:58 -0400)]
rgw: add rgw::sal::SQLiteConfigStore

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agorgw: add rgw::sal::RadosConfigStore
Casey Bodley [Mon, 29 Aug 2022 20:08:10 +0000 (16:08 -0400)]
rgw: add rgw::sal::RadosConfigStore

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agorgw: add rgw::sal::ConfigStore
Casey Bodley [Mon, 29 Aug 2022 17:35:52 +0000 (13:35 -0400)]
rgw: add rgw::sal::ConfigStore

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agorgw: RGWRealm/Period/ZoneGroup/ZoneParams are fully public
Casey Bodley [Wed, 7 Sep 2022 18:15:02 +0000 (14:15 -0400)]
rgw: RGWRealm/Period/ZoneGroup/ZoneParams are fully public

Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agocompressor: fix rpmbuild on RHEL-8 48287/head
Andriy Tkachuk [Wed, 28 Sep 2022 19:29:09 +0000 (20:29 +0100)]
compressor: fix rpmbuild on RHEL-8

When building rpms on latest RHEL-8.6:

    [  0%] Building CXX object src/compressor/CMakeFiles/compressor_objs.dir/Compressor.cc.o
    In file included from /d/ceph-build/ceph-17.2.3-0-dff484dfc9e/src/common/config_values.h:59,
                     from /d/ceph-build/ceph-17.2.3-0-dff484dfc9e/src/common/config.h:27,
                     from /d/ceph-build/ceph-17.2.3-0-dff484dfc9e/src/common/config_proxy.h:6,
                     from /d/ceph-build/ceph-17.2.3-0-dff484dfc9e/src/common/ceph_context.h:41,
                     from /d/ceph-build/ceph-17.2.3-0-dff484dfc9e/src/compressor/Compressor.cc:23:
    /d/ceph-build/ceph-17.2.3-0-dff484dfc9e/src/common/options/legacy_config_opts.h:1:10: fatal error: global_legacy_options.h: No such file or directory
        1 | #include "global_legacy_options.h"
          |          ^~~~~~~~~~~~~~~~~~~~~~~~~
    compilation terminated.
    make[2]: *** [src/compressor/CMakeFiles/compressor_objs.dir/build.make:76: src/compressor/CMakeFiles/compressor_objs.dir/Compressor.cc.o] Error 1
    make[1]: *** [CMakeFiles/Makefile2:7964: src/compressor/CMakeFiles/compressor_objs.dir/all] Error 2
    make: *** [Makefile:146: all] Error 2
    error: Bad exit status from /var/tmp/rpm-tmp.1CBUsC (%build)

    RPM build errors:
        Bad exit status from /var/tmp/rpm-tmp.1CBUsC (%build)

Solution: add legacy-option-headers dependency to compressor_objs.

Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
3 years agomgr/telemetry: handle daemons with complex ids 48282/head
Laura Flores [Wed, 28 Sep 2022 17:17:17 +0000 (17:17 +0000)]
mgr/telemetry: handle daemons with complex ids

Treating daemons as `<daemon_type>.x` caused a crash
in the Telemetry module since the current method does not cover a case
where a daemon id is more complex, i.e. `<daemon_type>.x.y`.

When we parse the daemon type and daemon id, we should
split it into a maximum of two pieces rather than splitting
it by every `.` character. Specifying `1` in the Python
.split() function will limit the split to a maximum of two items.

Fixes: https://tracker.ceph.com/issues/57700
Signed-off-by: Laura Flores <lflores@redhat.com>
3 years agoMerge pull request #45379 from tobias-urdin/bump-openstack-versions
Casey Bodley [Wed, 28 Sep 2022 14:51:38 +0000 (10:51 -0400)]
Merge pull request #45379 from tobias-urdin/bump-openstack-versions

qa/suites/rgw: fix and update tempest and barbican tests

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 years agoMerge pull request #48267 from rhcs-dashboard/nfs-exports-fs-permission-error
Pedro Gonzalez Gomez [Wed, 28 Sep 2022 07:26:17 +0000 (09:26 +0200)]
Merge pull request #48267 from rhcs-dashboard/nfs-exports-fs-permission-error

mgr/dashboard: handle the cephfs permission issue in nfs exports

Reviewed-by: Pedro González Gómez <pegonzal@redhat.com>
Reviewed-by: Aashish Sharma <aasharma@redhat.com>
3 years agoMerge pull request #48114 from athanatos/sjust/wip-crimson-multicore-for-review
Samuel Just [Tue, 27 Sep 2022 23:03:23 +0000 (16:03 -0700)]
Merge pull request #48114 from athanatos/sjust/wip-crimson-multicore-for-review

crimson: multicore support for pgs in crimson-osd

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
3 years agocephadm: rename import from cephadm to _cephadm 48260/head
John Mulligan [Tue, 27 Sep 2022 18:51:00 +0000 (14:51 -0400)]
cephadm: rename import from cephadm to _cephadm

To be consistent with the other test_*.py files.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
3 years agocephadm: rename import from cd to _cephadm
John Mulligan [Tue, 27 Sep 2022 18:50:44 +0000 (14:50 -0400)]
cephadm: rename import from cd to _cephadm

The `cd` name is an abbreviation of an obsolete name for cephadm.
As this is not widely known it could be confusing or conflict with
other common terms like `cd` for "change dir" or "compact disc".
Therefore we rename it to something much clearer.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
3 years agocephadm: rename import from cd to _cephadm
John Mulligan [Tue, 27 Sep 2022 18:50:24 +0000 (14:50 -0400)]
cephadm: rename import from cd to _cephadm

The `cd` name is an abbreviation of an obsolete name for cephadm.
As this is not widely known it could be confusing or conflict with
other common terms like `cd` for "change dir" or "compact disc".
Therefore we rename it to something much clearer.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
3 years agocephadm: rename import from cd to _cephadm
John Mulligan [Tue, 27 Sep 2022 18:49:39 +0000 (14:49 -0400)]
cephadm: rename import from cd to _cephadm

The `cd` name is an abbreviation of an obsolete name for cephadm.
As this is not widely known it could be confusing or conflict with
other common terms like `cd` for "change dir" or "compact disc".
Therefore we rename it to something much clearer.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
3 years agocephadm: fix some nonstandard formatting in fixtures.py
John Mulligan [Mon, 26 Sep 2022 19:33:41 +0000 (15:33 -0400)]
cephadm: fix some nonstandard formatting in fixtures.py

Signed-off-by: John Mulligan <jmulligan@redhat.com>
3 years agocephadm: remove trailing whitespace
John Mulligan [Mon, 26 Sep 2022 19:30:47 +0000 (15:30 -0400)]
cephadm: remove trailing whitespace

Signed-off-by: John Mulligan <jmulligan@redhat.com>
3 years agocephadm: lazily import cephadm in fixtures.py
John Mulligan [Mon, 26 Sep 2022 19:30:25 +0000 (15:30 -0400)]
cephadm: lazily import cephadm in fixtures.py

We can avoid creating side-effects in the cephadm module by only importing
the module in the functions that are meant to generate side effects.
Simply importing fixtures and not calling any of the functions now can
not change cephadm by accident.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
3 years agocephadm: remove container_engine argument from test helper function
John Mulligan [Mon, 26 Sep 2022 19:20:25 +0000 (15:20 -0400)]
cephadm: remove container_engine argument from test helper function

The with_cephadm_ctx test helper function had an argument that *called*
mock_podman function, thus calling the function at import-time. This can
lead to confusing and unexpected side effects. Because the
container_engine argument is not used by any callers of with_cephadm_ctx
we remove the argument.
All other callers of with_cephadm_ctx that make use of container engine
are already setting `ctx.container_engine = <xyz>` so removing the
argument makes it harder to make the same mistake again in the future.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
3 years agocephadm: fix iscsi test_unit_run relying on how cephadm was being imported
John Mulligan [Mon, 26 Sep 2022 19:14:20 +0000 (15:14 -0400)]
cephadm: fix iscsi test_unit_run relying on how cephadm was being imported

The iscsi test_unit_run test case was relying upon a strange side-effect
of how the cephadm module was being imported in fixtures.py. In short,
it expected the podman container_engine not to be a subclass of Podman.

```
(Pdb) p ctx.container_engine
<Mock spec='Podman' id='140676342644256'>
(Pdb) p ctx.container_engine.__class__
<class 'cephadm.Podman'>
(Pdb) p isinstance(ctx.container_engine, Podman)
False
(Pdb) p id(ctx.container_engine.__class__)
94372514199712
(Pdb) p id(Podman)
94372516682112
```

In order to clean up fixtures.py and other imports of cephadm as a
module, we fix the test to expect a mock docker. We choose docker
because it only requires changes the path of the container engine. If we
changed it to a real podman subclass we'd have to change many arguments
in the expected CLI text.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
3 years agocephadm: use import_cephadm function in test_*.py files
John Mulligan [Mon, 26 Sep 2022 15:20:58 +0000 (11:20 -0400)]
cephadm: use import_cephadm function in test_*.py files

Any current or future chicanery needed to import cephadm is now isolated
in one place, and doesn't need to be repeated in every file.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
3 years agocephadm: use a function to encapsulate loading cephadm as a module
John Mulligan [Mon, 26 Sep 2022 15:19:48 +0000 (11:19 -0400)]
cephadm: use a function to encapsulate loading cephadm as a module

Instead of "open coding" all the cephadm imports let's do it in a
reusable function.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
3 years agomgr/dashboard: handle the cephfs permission issue in nfs exports 48267/head
Nizamudeen A [Tue, 27 Sep 2022 06:12:05 +0000 (11:42 +0530)]
mgr/dashboard: handle the cephfs permission issue in nfs exports

Fixes: https://tracker.ceph.com/issues/48686
Signed-off-by: Nizamudeen A <nia@redhat.com>
3 years agoMerge pull request #48256 from dang/wip-dang-zipper-admin-api
Daniel Gryniewicz [Tue, 27 Sep 2022 16:48:11 +0000 (12:48 -0400)]
Merge pull request #48256 from dang/wip-dang-zipper-admin-api

RGW - Re-do admin API split

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 years agoMerge pull request #48092 from rosinL/fix-57537
Igor Fedotov [Tue, 27 Sep 2022 16:17:41 +0000 (19:17 +0300)]
Merge pull request #48092 from rosinL/fix-57537

os/bluestore: use direct write in BlueStore::_write_bdev_label

Reviewed-by: Igor Fedotov <ifedotov@croit.io>
3 years agocmake: add -fstack-protector-strong on win32 48259/head
Ken Dreyer [Tue, 13 Sep 2022 20:18:36 +0000 (16:18 -0400)]
cmake: add -fstack-protector-strong on win32

mingw on RHEL 9 needs -fstack-protector (which adds -lssp), or it fails
with these errors:

  undefined reference to `__stack_chk_fail'
  undefined reference to `__stack_chk_guard'
  undefined reference to `__strcpy_chk'

Commit 8d35b2eceabafbe13458101f8701e3fc49f15d63 mentions that the build
fails with -fstack-protector-strong. Perhaps that only applied to
earlier Ubuntu versions, because Ubuntu Focal can build with
-fstack-protector-strong now.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
3 years agocmake: set empty CMAKE_DL_LIBS on MinGW
Ken Dreyer [Tue, 13 Sep 2022 17:34:35 +0000 (13:34 -0400)]
cmake: set empty CMAKE_DL_LIBS on MinGW

Upstream CMake sets CMAKE_DL_LIBS to an empty value on MINGW, but the
Fedora and RHEL packages override this and set "dl". Re-set it back to
an empty value.

We can revert this if https://bugzilla.redhat.com/2127529 is resolved
for CMake in Fedora and RHEL.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
3 years agowin32: add rhel option
Ken Dreyer [Fri, 9 Sep 2022 17:37:16 +0000 (17:37 +0000)]
win32: add rhel option

Add an option for building the Windows client on RHEL. I've tested this
on RHEL 9.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
3 years agowin32: parse /etc/os-release on all distros
Ken Dreyer [Fri, 9 Sep 2022 15:29:36 +0000 (15:29 +0000)]
win32: parse /etc/os-release on all distros

Standardize the way that we determine Ubuntu and SUSE.

This aligns with what we do in install-deps.sh and makes it simpler to
add more distributions later.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
3 years agomgr/dashboard: Improve level A accessibility for missing aria labels in tabs and... 47249/head
nsedrickm [Sat, 23 Jul 2022 11:18:46 +0000 (12:18 +0100)]
mgr/dashboard: Improve level A accessibility for missing aria labels in tabs and listitems

Replace tab component ul and li elements with navs and ng-containers

Fixes: https://tracker.ceph.com/issues/55872
Signed-off-by: nsedrickm <nsedrick101@gmail.com>
3 years agoMerge pull request #47876 from torchiaf/fix/43116-2
Nizamudeen A [Tue, 27 Sep 2022 05:29:40 +0000 (10:59 +0530)]
Merge pull request #47876 from torchiaf/fix/43116-2

mgr/dashboard: Add text to empty life expectancy column

Reviewed-by: Pegonzal <NOT@FOUND>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
3 years agocrimson/osd/main: call OSD::stop() 48114/head
Samuel Just [Thu, 22 Sep 2022 21:49:10 +0000 (14:49 -0700)]
crimson/osd/main: call OSD::stop()

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/os/FuturizedCollection: use thread_safe_counter
Samuel Just [Thu, 22 Sep 2022 20:15:29 +0000 (13:15 -0700)]
crimson/os/FuturizedCollection: use thread_safe_counter

This should work for now, long term we probably want to get
rid of FuturizedCollection entirely from the interface.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd/heartbeat: drop ownership of messenger instances
Samuel Just [Thu, 22 Sep 2022 04:08:24 +0000 (21:08 -0700)]
crimson/osd/heartbeat: drop ownership of messenger instances

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd/pg_shard_manager: add shard_id asserts
Samuel Just [Wed, 14 Sep 2022 02:06:35 +0000 (19:06 -0700)]
crimson/osd/pg_shard_manager: add shard_id asserts

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agosrc/vstart.sh: add vstart --crimson-smp option
Samuel Just [Fri, 9 Sep 2022 03:50:58 +0000 (03:50 +0000)]
src/vstart.sh: add vstart --crimson-smp option

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/net: Message::conn needs to be a foreign_ptr
Samuel Just [Thu, 8 Sep 2022 23:12:45 +0000 (23:12 +0000)]
crimson/net: Message::conn needs to be a foreign_ptr

There are two main consequences of this:
1. Messages can't be default copy constructed in crimson.  MMonCommand
   seems to be the only user, and we simply add a copy constructor that
   duplicates data portions of the message.
2. We can't casually copy-construct the conn into other structures.
   The main user here is watch/notify.  We use copy() explicitely
   to populate the object_context structures and avoid passing
   ConnectionFRef by value.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd/osd_operations/client_request: remove OSD reference
Samuel Just [Thu, 8 Sep 2022 19:43:42 +0000 (12:43 -0700)]
crimson/osd/osd_operations/client_request: remove OSD reference

Capture ShardServices reference for use in put_historic directly.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: move send_incremental_map to OSDSingletonState
Samuel Just [Fri, 9 Sep 2022 02:57:22 +0000 (19:57 -0700)]
crimson/osd: move send_incremental_map to OSDSingletonState

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/net/Connection: let send and keepalive be called from foreign cores
Samuel Just [Thu, 8 Sep 2022 18:40:43 +0000 (18:40 +0000)]
crimson/net/Connection: let send and keepalive be called from foreign cores

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd/shard_services: check core on each PerShardState method
Samuel Just [Thu, 8 Sep 2022 17:38:22 +0000 (10:38 -0700)]
crimson/osd/shard_services: check core on each PerShardState method

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd/osd_operations/client_request: fix whitespace on do_process
Samuel Just [Thu, 8 Sep 2022 17:37:18 +0000 (10:37 -0700)]
crimson/osd/osd_operations/client_request: fix whitespace on do_process

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: update_heartbeat_peers can iterate pgs syncronously
Samuel Just [Thu, 8 Sep 2022 17:36:20 +0000 (10:36 -0700)]
crimson/osd: update_heartbeat_peers can iterate pgs syncronously

OSDSingletonState has a local inventory of all pgids.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd/osd_operations: use foreign_ptr for conn
Samuel Just [Tue, 6 Sep 2022 23:45:32 +0000 (23:45 +0000)]
crimson/osd/osd_operations: use foreign_ptr for conn

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agovstart: echo osd arguments
Samuel Just [Tue, 6 Sep 2022 23:27:19 +0000 (16:27 -0700)]
vstart: echo osd arguments

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd/osd_operations/peering_event.cc: whitespace fix
Samuel Just [Tue, 6 Sep 2022 20:43:08 +0000 (13:43 -0700)]
crimson/osd/osd_operations/peering_event.cc: whitespace fix

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: remove compound_peering_request
Samuel Just [Fri, 2 Sep 2022 21:53:33 +0000 (21:53 +0000)]
crimson/osd: remove compound_peering_request

The state shared between sub events creates problems for multicore.  The
only user is MOSDPGCreate2, so the optimization isn't really worth
salvaging.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/common/operation: release pipeline stages on the core they are on
Samuel Just [Fri, 2 Sep 2022 21:10:40 +0000 (14:10 -0700)]
crimson/common/operation: release pipeline stages on the core they are on

Otherwise, tasks waiting on the stage will wake up on the wrong core.
Later, we may choose to statically enable this behavior only for stages
that can actually span cores, but this is ok for now.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: move perf counter ownership to OSDSingletonState
Samuel Just [Wed, 31 Aug 2022 22:20:25 +0000 (15:20 -0700)]
crimson/osd: move perf counter ownership to OSDSingletonState

Later, we'll want to create a properly sharded implentation that avoids
barriers.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: shard PerShardState across cores
Samuel Just [Wed, 14 Sep 2022 02:09:58 +0000 (19:09 -0700)]
crimson/osd: shard PerShardState across cores

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: move hb_stamps to PerShardState
Samuel Just [Tue, 30 Aug 2022 22:01:04 +0000 (22:01 +0000)]
crimson/osd: move hb_stamps to PerShardState

We may later need to syncronize this across cores, perhaps during tick.
This should work for now, however.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: replace global tid with unique core-local tids
Samuel Just [Tue, 30 Aug 2022 22:00:37 +0000 (15:00 -0700)]
crimson/osd: replace global tid with unique core-local tids

We don't really want a global counter here if we can avoid it.  Instead,
assign tids with core-local counters prefixed with the core id.  We
continue to ensure that tids are unique within an osd boot, but lose
the property that sucessive tids on different cores are ordered.  I
don't see anything relying on that property, however, so this should be
fine.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: remove explicit pg counter
Samuel Just [Tue, 30 Aug 2022 21:57:59 +0000 (14:57 -0700)]
crimson/osd: remove explicit pg counter

The main user of num_pgs was get_target_pg_log_entries(), but we
don't really want to be accessing a global counter there if we
can avoid it.  Instead, compute a core-local target and use the
core-local pg count.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: clean up PerShardState/OSDSingletonState ownership/access
Samuel Just [Thu, 25 Aug 2022 01:28:08 +0000 (01:28 +0000)]
crimson/osd: clean up PerShardState/OSDSingletonState ownership/access

- move heartbeat messenger ownership to OSD
- move OSDSingletonState/ShardServices initialization to
  PGShardManager::start() method
- add accessor OSD::get_shard_services(), remove OSD::shard_services
  reference
- accessor/forwarding cleanups within PGShardManager

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: move store responsiblity to PerShardState
Samuel Just [Wed, 24 Aug 2022 23:50:57 +0000 (23:50 +0000)]
crimson/osd: move store responsiblity to PerShardState

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/os: consolidate context handling in FuturizedStore
Samuel Just [Tue, 13 Sep 2022 05:14:16 +0000 (22:14 -0700)]
crimson/os: consolidate context handling in FuturizedStore

Context handling is pretty uniform accross all implementations,
may as well do it in the same place.

ShardedStoreProxy would need to handle it otherwise, since
callbacks need to be handled on the core do_transaction is
invoked on.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/os/futurized_store: create ShardedStoreProxy
Samuel Just [Wed, 24 Aug 2022 20:16:28 +0000 (13:16 -0700)]
crimson/os/futurized_store: create ShardedStoreProxy

For now, FuturizedStore implementations assume that methods are invoked
on core 0.  Later, we'll adapt each implementation to intelligently
support invocation on any pg core.  Until then, this wrapper converts
the existing implementations to a safe, if not particuarly performant,
proxy behavior.

AlienStore should be safe as is.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: adjust get_pg_stats() and for_each_pg() to return futures
Samuel Just [Tue, 23 Aug 2022 21:49:16 +0000 (21:49 +0000)]
crimson/osd: adjust get_pg_stats() and for_each_pg() to return futures

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: refactor pg management for multicore
Samuel Just [Thu, 1 Sep 2022 23:22:59 +0000 (23:22 +0000)]
crimson/osd: refactor pg management for multicore

OSDSingletonState will now only be responsible for the spg_t->core
mapping for pgs, the individual PerShardState's will hold local
PGMap's.  PG management operations are now proxied from PGShardManager
to PerShardState.  Subsequent patches will shard PerShardState.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd: modify start_pg_operation to return op_id
Samuel Just [Mon, 1 Aug 2022 23:20:02 +0000 (23:20 +0000)]
crimson/osd: modify start_pg_operation to return op_id

The op will actually be run generally on a different core, so we don't
want to be returning a reference to it.

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agocrimson/osd/pg_map: add PGShardMapping
Samuel Just [Tue, 26 Jul 2022 02:05:28 +0000 (19:05 -0700)]
crimson/osd/pg_map: add PGShardMapping

Signed-off-by: Samuel Just <sjust@redhat.com>
3 years agoqa: ignore MDS_TRIM warnings when osd thrashing 48264/head
Patrick Donnelly [Tue, 27 Sep 2022 02:20:57 +0000 (22:20 -0400)]
qa: ignore MDS_TRIM warnings when osd thrashing

Fixes: https://tracker.ceph.com/issues/57677
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
3 years agotasks/cephadm: Add 'osd_method' config item 48215/head
Zack Cerza [Thu, 4 Aug 2022 19:58:56 +0000 (13:58 -0600)]
tasks/cephadm: Add 'osd_method' config item

Since the default of None gets interpreted as 'lvm', the only useful
value would be 'raw'. This will enable us to use loop devices inside
containers for OSDs.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agocephadm: Avoid TypeError in download_cephadm()
Zack Cerza [Tue, 2 Aug 2022 05:01:06 +0000 (23:01 -0600)]
cephadm: Avoid TypeError in download_cephadm()

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoMerge PR #48147 into main
Ken Dreyer [Mon, 26 Sep 2022 18:44:51 +0000 (14:44 -0400)]
Merge PR #48147 into main

* refs/pull/48147/head:
win32: install wget when building on ubuntu
win32: install deps with DEBIAN_FRONTEND=noninteractive

Reviewed-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
Reviewed-by: Justin Caratzas <jcaratza@redhat.com>
3 years agoMerge PR #47153 into main
Ken Dreyer [Mon, 26 Sep 2022 17:44:36 +0000 (13:44 -0400)]
Merge PR #47153 into main

* refs/pull/47153/head:
build: fix atomic linking with LTO on s390x

Reviewed-by: Justin Caratzas <jcaratza@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
3 years agoqa: ignore expected scrub error 48257/head
Patrick Donnelly [Mon, 26 Sep 2022 17:27:57 +0000 (13:27 -0400)]
qa: ignore expected scrub error

The test_orphan_scan test deliberately removes a dentry which will cause
rstat damage. Ignore it.

Fixes: https://tracker.ceph.com/issues/57657
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>