]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
4 years agocrimson/onode-staged-tree: cleanup tree_utils.h
Yingxin Cheng [Mon, 19 Apr 2021 05:16:24 +0000 (13:16 +0800)]
crimson/onode-staged-tree: cleanup tree_utils.h

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: test fix_index() in internal node
Yingxin Cheng [Mon, 19 Apr 2021 03:13:36 +0000 (11:13 +0800)]
crimson/onode-staged-tree: test fix_index() in internal node

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: test merge in internal node
Yingxin Cheng [Fri, 16 Apr 2021 05:46:27 +0000 (13:46 +0800)]
crimson/onode-staged-tree: test merge in internal node

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement staged::get_prev_slot()
Yingxin Cheng [Fri, 16 Apr 2021 05:45:09 +0000 (13:45 +0800)]
crimson/onode-staged-tree: implement staged::get_prev_slot()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: test merge in leaf node
Yingxin Cheng [Thu, 15 Apr 2021 06:53:51 +0000 (14:53 +0800)]
crimson/onode-staged-tree: test merge in leaf node

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement layout-level merge
Yingxin Cheng [Wed, 14 Apr 2021 01:39:50 +0000 (09:39 +0800)]
crimson/onode-staged-tree: implement layout-level merge

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: test erase in leaf node
Yingxin Cheng [Thu, 8 Apr 2021 07:46:28 +0000 (15:46 +0800)]
crimson/onode-staged-tree: test erase in leaf node

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement staged::erase()
Yingxin Cheng [Mon, 12 Apr 2021 03:59:31 +0000 (11:59 +0800)]
crimson/onode-staged-tree: implement staged::erase()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: fix container_t::update_size() to accept negative value
Yingxin Cheng [Wed, 7 Apr 2021 08:09:41 +0000 (16:09 +0800)]
crimson/onode-staged-tree: fix container_t::update_size() to accept negative value

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement staged::is_keys_one()
Yingxin Cheng [Wed, 7 Apr 2021 07:34:19 +0000 (15:34 +0800)]
crimson/onode-staged-tree: implement staged::is_keys_one()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement node-level erase/merge logic
Yingxin Cheng [Fri, 23 Apr 2021 03:07:12 +0000 (11:07 +0800)]
crimson/onode-staged-tree: implement node-level erase/merge logic

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement delta encode/decode for erase ops
Yingxin Cheng [Fri, 23 Apr 2021 03:00:34 +0000 (11:00 +0800)]
crimson/onode-staged-tree: implement delta encode/decode for erase ops

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: improve logs
Yingxin Cheng [Sun, 11 Apr 2021 15:58:02 +0000 (23:58 +0800)]
crimson/onode-staged-tree: improve logs

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement fast Node::get_name()
Yingxin Cheng [Sun, 11 Apr 2021 15:49:33 +0000 (23:49 +0800)]
crimson/onode-staged-tree: implement fast Node::get_name()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: fix get_pivot_index() for leaf node
Yingxin Cheng [Sun, 11 Apr 2021 15:22:37 +0000 (23:22 +0800)]
crimson/onode-staged-tree: fix get_pivot_index() for leaf node

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: be explicit about node num-key/value invariants
Yingxin Cheng [Fri, 2 Apr 2021 07:27:45 +0000 (15:27 +0800)]
crimson/onode-staged-tree: be explicit about node num-key/value invariants

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: cleanup node interfaces
Yingxin Cheng [Thu, 1 Apr 2021 06:01:42 +0000 (14:01 +0800)]
crimson/onode-staged-tree: cleanup node interfaces

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement states for NodeExtentAccessorT
Yingxin Cheng [Mon, 22 Mar 2021 03:34:31 +0000 (11:34 +0800)]
crimson/onode-staged-tree: implement states for NodeExtentAccessorT

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement NodeExtentManager::retire_extent()
Yingxin Cheng [Thu, 18 Mar 2021 08:35:21 +0000 (16:35 +0800)]
crimson/onode-staged-tree: implement NodeExtentManager::retire_extent()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: fix log
Yingxin Cheng [Thu, 18 Mar 2021 08:22:08 +0000 (16:22 +0800)]
crimson/onode-staged-tree: fix log

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: remove implemented TODO
Yingxin Cheng [Wed, 3 Mar 2021 08:48:59 +0000 (16:48 +0800)]
crimson/onode-staged-tree: remove implemented TODO

Already implemented in c32c1032de1223169a1223d1b8995856e8763df5

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: implement tree-level erase interfaces
Yingxin Cheng [Wed, 3 Mar 2021 07:48:16 +0000 (15:48 +0800)]
crimson/onode-staged-tree: implement tree-level erase interfaces

Define and implement erase related interfaces from BTree, BTree::Cursor,
tree_cursor_t, Node to LeafNode.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: add invalid state to tree_cursor_t
Yingxin Cheng [Thu, 18 Mar 2021 09:17:22 +0000 (17:17 +0800)]
crimson/onode-staged-tree: add invalid state to tree_cursor_t

If a key-value pair is erased from the tree, the according tree_cursor_t
is untracked and becomes invalid.

From Cursor point-of-view, it becomes an end Cursor if the internal
cursor is invalidated.

From Value point-of-view, it becomes untracked if the value is erased.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: cleanup replace_track/track_split()
Yingxin Cheng [Thu, 18 Mar 2021 09:16:17 +0000 (17:16 +0800)]
crimson/onode-staged-tree: cleanup replace_track/track_split()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: disable concurrent gc
Yingxin Cheng [Fri, 2 Apr 2021 06:51:02 +0000 (14:51 +0800)]
crimson/onode-staged-tree: disable concurrent gc

Fix test/perf hang according to 947b103eed0720bc6276274b1b707b221b895a62

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agoMerge pull request #40493 from CongMinYin/fix-rwl-fragment
Ilya Dryomov [Thu, 29 Apr 2021 07:35:21 +0000 (09:35 +0200)]
Merge pull request #40493 from CongMinYin/fix-rwl-fragment

librbd/cache/pwl: Fix pmem cache fragment issue

Reviewed-by: Mykola Golub <mgolub@suse.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
4 years agolibrbd/cache/pwl: Fix pmem cache fragment issue 40493/head
Yin Congmin [Tue, 30 Mar 2021 14:47:33 +0000 (22:47 +0800)]
librbd/cache/pwl: Fix pmem cache fragment issue

I/O may hang due to pmem cache fragment issue when blocks are diffrent
in size. Call pmdk API(pmemobj_defrag) to solve.

Fixes: https://tracker.ceph.com/issues/49879
Signed-off-by: Yin Congmin <congmin.yin@intel.com>
4 years agoMerge PR #41072 into master
Sage Weil [Wed, 28 Apr 2021 22:42:49 +0000 (18:42 -0400)]
Merge PR #41072 into master

* refs/pull/41072/head:
doc/releases/nautilus: fix a braino in 14.2.20 release note

Reviewed-by: Sage Weil <sage@redhat.com>
4 years agoMerge PR #40924 into master
Sage Weil [Wed, 28 Apr 2021 18:27:07 +0000 (14:27 -0400)]
Merge PR #40924 into master

* refs/pull/40924/head:
mgr/cephadm: check hostname resolution before adding host
cephadm: provide a way to checkhost connection without /etc/hosts passed the shell
doc/cephadm: remove /etc/hosts from list of hostname resoltion methods

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Adam King <adking@redhat.com>
4 years agoMerge pull request #40593 from ideepika/wip-new-testing-params
Josh Durgin [Wed, 28 Apr 2021 18:26:58 +0000 (11:26 -0700)]
Merge pull request #40593 from ideepika/wip-new-testing-params

qa/config/rados: add dispatch delay testing params

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Sam Just <sjust@redhat.com>
4 years agoMerge PR #40941 into master
Sage Weil [Wed, 28 Apr 2021 18:26:35 +0000 (14:26 -0400)]
Merge PR #40941 into master

* refs/pull/40941/head:
qa/suites/rados/cephadm/smoke-roleless: test client-keyring
qa/tasks/cephadm.py: adjust client.admin key mode; place on all hosts
cephadm: distribute client.admin keyring+conf to label:_admin on bootstrap
doc/cephadm: document the default 'admin' label
mgr/cephadm: 'ceph orch client-keyring ...' commands to manage keyring files
mgr/cephadm: reimplement ceph.conf pushing
mgr/cephadm: use _write_remote_file for ceph.conf
mgr/cephadm: _write_remote_file helper
mgr/cephadm: add placementspec for which hosts get ceph.conf

Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Adam King <adking@redhat.com>
4 years agoMerge PR #40943 into master
Sage Weil [Wed, 28 Apr 2021 18:26:07 +0000 (14:26 -0400)]
Merge PR #40943 into master

* refs/pull/40943/head:
mgr/cephadm: skip ok-to-stop for mons in upgrade if < 3 mons
mgr/cephadm: don't allow upgrade start with less than 2 mgrs

Reviewed-by: Michael Fritch <mfritch@suse.com>
4 years agoMerge PR #41049 into master
Sage Weil [Wed, 28 Apr 2021 18:25:30 +0000 (14:25 -0400)]
Merge PR #41049 into master

* refs/pull/41049/head:
cephadm: re-assimilate user provided conf after mgr created

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
4 years agoMerge PR #41055 into master
Sage Weil [Wed, 28 Apr 2021 18:24:10 +0000 (14:24 -0400)]
Merge PR #41055 into master

* refs/pull/41055/head:
cephadm: allow several public networks be matched

Reviewed-by: Sebastian Wagner <swagner@suse.com>
4 years agoMerge pull request #41059 from tchaikov/wip-crimson-clang-cleanup
Kefu Chai [Wed, 28 Apr 2021 16:18:26 +0000 (00:18 +0800)]
Merge pull request #41059 from tchaikov/wip-crimson-clang-cleanup

crimson: clean up issues spotted by the clang compiler

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agodoc/releases/nautilus: fix a braino in 14.2.20 release note 41072/head
Ilya Dryomov [Wed, 28 Apr 2021 15:57:56 +0000 (17:57 +0200)]
doc/releases/nautilus: fix a braino in 14.2.20 release note

Setting auth_expose_insecure_global_id_reclaim to false disables the
"disconnect right after authentication" behavior, not the warning.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
4 years agoMerge pull request #41063 from tchaikov/wip-rgw-move
Kefu Chai [Wed, 28 Apr 2021 15:35:06 +0000 (23:35 +0800)]
Merge pull request #41063 from tchaikov/wip-rgw-move

rgw/rgw_rest_sts: return local variable w/o std::move()

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
4 years agoMerge pull request #41067 from zdover23/wip-doc-crismon-misspelling-fix-2021-Apr-28
zdover23 [Wed, 28 Apr 2021 14:11:55 +0000 (00:11 +1000)]
Merge pull request #41067 from zdover23/wip-doc-crismon-misspelling-fix-2021-Apr-28

doc/crimson: s/Crismon/Crimson/

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41048 from zdover23/wip-doc-rados-config-cluster-names-2021-Apr-27
zdover23 [Wed, 28 Apr 2021 13:28:15 +0000 (23:28 +1000)]
Merge pull request #41048 from zdover23/wip-doc-rados-config-cluster-names-2021-Apr-27

doc/rados: rename "Running Multiple Clusters"

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/crimson: s/Crismon/Crimson/ 41067/head
Zac Dover [Wed, 28 Apr 2021 13:26:09 +0000 (23:26 +1000)]
doc/crimson: s/Crismon/Crimson/

This misspelling occurred twice in this
document.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
4 years agocrimson/os/seastore: do not capture unused variable 41059/head
Kefu Chai [Wed, 28 Apr 2021 08:23:47 +0000 (16:23 +0800)]
crimson/os/seastore: do not capture unused variable

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/common: do not capture unused variable
Kefu Chai [Wed, 28 Apr 2021 08:21:51 +0000 (16:21 +0800)]
crimson/common: do not capture unused variable

this change silences the warning from clang, like:

 ../src/crimson/common/interruptible_future.h:276:8: warning: lambda capture 'this' is not used [-Wunused-lambda-capture]
       [this, func=std::move(func),
        ^

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/os/seastore: mark final class "final"
Kefu Chai [Wed, 28 Apr 2021 08:19:52 +0000 (16:19 +0800)]
crimson/os/seastore: mark final class "final"

this change silences warning like:

 ../src/crimson/os/seastore/onode_manager/staged-fltree/fltree_onode_manager.h:80:18: warning: class with destructor marked 'final' cannot be inherited from [-Wfinal-dtor-non-final-class]
   ~FLTreeOnode() final {}
                  ^
 ../src/crimson/os/seastore/onode_manager/staged-fltree/fltree_onode_manager.h:13:8: note: mark 'crimson::os::seastore::onode::FLTreeOnode' as 'final' to silence this warning
 struct FLTreeOnode : Onode, Value {
        ^

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agotest/crimson/seastore: do not put braces around scalar initializer
Kefu Chai [Wed, 28 Apr 2021 08:17:55 +0000 (16:17 +0800)]
test/crimson/seastore: do not put braces around scalar initializer

this change silences the warning from clang like:

src/test/crimson/seastore/onode_tree/test_value.h:152:12: warning: braces around scalar initializer [-Wbraced-scalar-init]
     return {static_cast<value_size_t>(size - sizeof(value_header_t))};
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/os/seastore: do not reference non-template with template
Kefu Chai [Wed, 28 Apr 2021 08:15:56 +0000 (16:15 +0800)]
crimson/os/seastore: do not reference non-template with template

this change addresses the build failure with clang:

src/crimson/os/seastore/onode_manager/staged-fltree/node_extent_accessor.h:352:29: error: 'encode_split' following the 'template' keyword does not refer to a template
    test_recorder->template encode_split(split_at, read().p_start());
                   ~~~~~~~~ ^

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/os/seastore: do not capture label using &
Kefu Chai [Wed, 28 Apr 2021 08:08:08 +0000 (16:08 +0800)]
crimson/os/seastore: do not capture label using &

structured binding does not define variables. unlike GCC, Clang does
not allow this. this change address following build failures with clang:

../src/crimson/os/seastore/omap_manager/btree/omap_btree_node_impl.cc:210:24:
note: 'result' declared here
      auto &[complete, result] = ret;
                       ^
../src/crimson/os/seastore/omap_manager/btree/omap_btree_node_impl.cc:214:6:
error: reference to local binding 'complete' declared in enclosing
lambda expression
            complete = biter == eiter;
            ^

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados: rename "Running Multiple Clusters" 41048/head
Zac Dover [Tue, 27 Apr 2021 18:07:50 +0000 (04:07 +1000)]
doc/rados: rename "Running Multiple Clusters"

This PR corrects a title so that the title
more accurately describes the content in the
section it names.

Fixes: https://tracker.ceph.com/issues/50517 (partially)
Signed-off-by: Zac Dover <zac.dover@gmail.com>
4 years agorgw/rgw_rest_sts: return local variable w/o std::move() 41063/head
Kefu Chai [Wed, 28 Apr 2021 12:13:48 +0000 (20:13 +0800)]
rgw/rgw_rest_sts: return local variable w/o std::move()

in C++17, the C++ standard ensures that the return value in this case
can be optimized with copy elision, adding std::move() is not necessary,
and prevents copy elision from happening.

this change also silences the warning of:

../src/rgw/rgw_rest_sts.cc: In member function 'std::unique_ptr<rgw::sal::RGWOIDCProvider> rgw::auth::sts::WebTokenEngine::get_provider(const DoutPrefixProvider*, const string&, const string&) const':
../src/rgw/rgw_rest_sts.cc:92:19: warning: moving a local object in a return statement prevents copy elision [-Wpessimizing-move]
   92 |   return std::move(provider);
      |          ~~~~~~~~~^~~~~~~~~~
../src/rgw/rgw_rest_sts.cc:92:19: note: remove 'std::move' call

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocephadm: allow several public networks be matched 41055/head
Stanislav Datskevych [Tue, 27 Apr 2021 06:16:33 +0000 (08:16 +0200)]
cephadm: allow several public networks be matched

Fixes: https://tracker.ceph.com/issues/50548
Signed-off-by: Stanislav Datskevych <me@nek0.net>
4 years agocmake: bump to PMDK v1.10
Yingxin Cheng [Fri, 29 Jan 2021 02:05:53 +0000 (10:05 +0800)]
cmake: bump to PMDK v1.10

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Signed-off-by: Yin Congmin <congmin.yin@intel.com>
4 years agoMerge pull request #41032 from leseb/raw-list-json
Sébastien Han [Wed, 28 Apr 2021 07:00:34 +0000 (09:00 +0200)]
Merge pull request #41032 from leseb/raw-list-json

ceph-volume: fix "device" output

4 years agoMerge pull request #41002 from strenuous-life/wip-cephadm-daemon-restart-mgr-loop
Kefu Chai [Wed, 28 Apr 2021 06:23:28 +0000 (14:23 +0800)]
Merge pull request #41002 from strenuous-life/wip-cephadm-daemon-restart-mgr-loop

mgr/cephadm: The command of 'ceph orch daemon restart mgr.xxx' may ca…

Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Adam King <adking@redhat.com>
4 years agoMerge pull request #41009 from tchaikov/wip-mon-cleanup
Kefu Chai [Wed, 28 Apr 2021 04:47:45 +0000 (12:47 +0800)]
Merge pull request #41009 from tchaikov/wip-mon-cleanup

mon/OSDMonitor: let OSDMonitor::_get_pending_crush() return

Reviewed-by: Sage Weil <sage@redhat.com>
4 years agoqa/suites/rados/cephadm/smoke-roleless: test client-keyring 40941/head
Sage Weil [Thu, 22 Apr 2021 17:43:49 +0000 (13:43 -0400)]
qa/suites/rados/cephadm/smoke-roleless: test client-keyring

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agoqa/tasks/cephadm.py: adjust client.admin key mode; place on all hosts
Sage Weil [Mon, 26 Apr 2021 13:00:11 +0000 (09:00 -0400)]
qa/tasks/cephadm.py: adjust client.admin key mode; place on all hosts

Except during upgrades, since it is not supported there.

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agocephadm: distribute client.admin keyring+conf to label:_admin on bootstrap
Sage Weil [Thu, 22 Apr 2021 12:12:49 +0000 (08:12 -0400)]
cephadm: distribute client.admin keyring+conf to label:_admin on bootstrap

If we are placing ceph.conf in /etc/ceph (the default), tell the cluster
to continue doing this going forward to hosts with the '_admin' label.

This doesn't induce the user to add the admin label to other hosts too,
unfortunately--e probably want them to add the admin label to other mons,
for instance--but it is a start.

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agocephadm: re-assimilate user provided conf after mgr created 41049/head
Adam King [Tue, 27 Apr 2021 18:32:05 +0000 (14:32 -0400)]
cephadm: re-assimilate user provided conf after mgr created

Fixes: https://tracker.ceph.com/issues/50544
Signed-off-by: Adam King <adking@redhat.com>
4 years agoMerge pull request #41046 from rzarzynski/wip-crimson-monc-auth_reply
Kefu Chai [Tue, 27 Apr 2021 18:02:32 +0000 (02:02 +0800)]
Merge pull request #41046 from rzarzynski/wip-crimson-monc-auth_reply

crimson/monc: fix use-after-free around Connection::do_auth_single().

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #40936 from rhcs-dashboard/support-ingress-service-creation-UI
Ernesto Puerta [Tue, 27 Apr 2021 17:05:04 +0000 (19:05 +0200)]
Merge pull request #40936 from rhcs-dashboard/support-ingress-service-creation-UI

mgr/dashboard: fix HAProxy (now called ingress)

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
4 years agoMerge pull request #40426 from rhcs-dashboard/host-maintenance-followups
Ernesto Puerta [Tue, 27 Apr 2021 17:03:09 +0000 (19:03 +0200)]
Merge pull request #40426 from rhcs-dashboard/host-maintenance-followups

mgr/dashboard: Host Maintenance Follow ups

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Juan Miguel Olmo <jolmomar@redhat.com>
4 years agocrimson/monc: fix use-after-free around Connection::do_auth_single(). 41046/head
Radoslaw Zarzynski [Tue, 27 Apr 2021 14:18:32 +0000 (14:18 +0000)]
crimson/monc: fix use-after-free around Connection::do_auth_single().

This bug caused following failure in teuthology testing [1]:

```
WARN  2021-04-23 07:08:29,449 [shard 0] osd - ms_handle_reset
WARN  2021-04-23 07:08:29,449 [shard 0] monc - active conn reset v2:172.21.15.100:3300/0
INFO  2021-04-23 07:08:29,449 [shard 0] monc - reopen_session to mon.-1
INFO  2021-04-23 07:08:29,449 [shard 0] monc - close
INFO  2021-04-23 07:08:29,449 [shard 0] monc - connecting to mon.0
...
ERROR 2021-04-23 07:08:29,450 [shard 0] none - /home/jenkins-build/build/workspace/ceph-dev-new-build/ARCH/x86_64/AVAILABLE_ARCH/x86_64/AVAILABLE_DIST/centos8/DIST/centos8/MACHINE_SIZE/gigantic/release/17.0.0-3454-gddedc2e1/rpm/el8/BUILD/ceph-17.0.0-3454-gddedc2e1/src/crimson/mon/MonClient.cc:228 : In function 'crimson::mon::Connection::do_auth_single(crimson::mon::Connection::request_t)::<lambda(Ref<MAuthReply>)>', ceph_assert(%s)
closed
```

[1]: http://pulpito.front.sepia.ceph.com/rzarzynski-2021-04-22_00:20:19-rados-master-distro-basic-smithi/6063316/

The root cause is in freeing the `active_con` in `Client::reopen_session()`
while there still could be the second, ongoing part of `do_auth_single()`.
This fix rectifies the issue by switching `std::unique_ptr` to `seastar::shared_ptr`
and extending the life-time with the help of `seastar::enable_shared_from_this<T>`.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agoMerge PR #40810 into master
Patrick Donnelly [Tue, 27 Apr 2021 14:40:15 +0000 (07:40 -0700)]
Merge PR #40810 into master

* refs/pull/40810/head:
test: tests for *at() libcephfs APIs
test: cleanup files/dirs before finishing test
client: non-at APIs call at-APIs with CEPHFS_AT_FDCWD as file descriptor
libcephfs: introduce basic *at() calls
client: remove redundant caps_issued_mask() call in Client::fstatx()

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agodoc/cephadm: document the default 'admin' label
Sage Weil [Thu, 22 Apr 2021 17:32:50 +0000 (13:32 -0400)]
doc/cephadm: document the default 'admin' label

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agomgr/cephadm: 'ceph orch client-keyring ...' commands to manage keyring files
Sage Weil [Wed, 21 Apr 2021 17:06:21 +0000 (13:06 -0400)]
mgr/cephadm: 'ceph orch client-keyring ...' commands to manage keyring files

Teach cephadm to manage keyring files on cluster hosts.  These keys must
already exist in the mon auth database--cephadm does not create them if
they don't exist (and will issue warnings to the log if they do not).

A ceph.conf is pushed implicitly along with the keyring file.

Each keyring added will be pushed to the hosts described by the placement
spec with the appropriate ownership and mode.  If the ownership, mode, or
path are modified, the files are rewritten or removed as need.

If the client-keyring entry is removed, the keyring files are removed.

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agomgr/cephadm: reimplement ceph.conf pushing
Sage Weil [Tue, 20 Apr 2021 22:19:26 +0000 (18:19 -0400)]
mgr/cephadm: reimplement ceph.conf pushing

Use a more generic inventory map of paths to digests to track what we've
pushed.

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agocrimson/monc: assert Connection::handle_auth_reply() is truly provided with a msg.
Radoslaw Zarzynski [Tue, 27 Apr 2021 13:25:40 +0000 (13:25 +0000)]
crimson/monc: assert Connection::handle_auth_reply() is truly provided with a msg.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agocrimson/monc: rename Connection::reply to auth_reply.
Radoslaw Zarzynski [Tue, 27 Apr 2021 13:23:40 +0000 (13:23 +0000)]
crimson/monc: rename Connection::reply to auth_reply.

Easier to distinguish from local variables with the same name
we have a few in `MonClient.cc`.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agoMerge pull request #40157 from leseb/do-not-fail-when-nosnap
Venky Shankar [Tue, 27 Apr 2021 13:21:57 +0000 (18:51 +0530)]
Merge pull request #40157 from leseb/do-not-fail-when-nosnap

mgr/pybind/snap_schedule: do not fail when no fs snapshots are available

Reviewed-by: Venky Shankar <vshankar@redhat.com>
4 years agomgr/dashboard: Host Maintenance Follow ups 40426/head
Nizamudeen A [Fri, 26 Mar 2021 07:57:40 +0000 (13:27 +0530)]
mgr/dashboard: Host Maintenance Follow ups

Added the ability to create a host in maintenance mode

Fixes: https://tracker.ceph.com/issues/49998
Signed-off-by: Nizamudeen A <nia@redhat.com>
4 years agoMerge pull request #41035 from ktdreyer/rbd-cache-err-spelling
Ilya Dryomov [Tue, 27 Apr 2021 09:37:33 +0000 (11:37 +0200)]
Merge pull request #41035 from ktdreyer/rbd-cache-err-spelling

librbd: fix spelling in immutable-object-cache conn error

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
4 years agoMerge pull request #41037 from tchaikov/wip-npm-audit
Ernesto Puerta [Tue, 27 Apr 2021 09:00:30 +0000 (11:00 +0200)]
Merge pull request #41037 from tchaikov/wip-npm-audit

mgr/dashboard: upgrade package-lock.json

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
4 years agoMerge pull request #40933 from vshankar/wip-50266
Venky Shankar [Tue, 27 Apr 2021 06:52:37 +0000 (12:22 +0530)]
Merge pull request #40933 from vshankar/wip-50266

cephfs-mirror: sanitize `daemons status` JSON

Reviewed-by: Venky Shankar <vshankar@redhat.com>
4 years agoMerge pull request #41013 from tchaikov/wip-doc-mds-confval
Kefu Chai [Tue, 27 Apr 2021 05:20:44 +0000 (13:20 +0800)]
Merge pull request #41013 from tchaikov/wip-doc-mds-confval

doc/cephfs/mds-config-ref: render options using confval directive

Reviewed-by: Sridhar Seshasayee <sseshasa@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agoMerge pull request #41022 from tchaikov/wip-cmake-findpmem
Kefu Chai [Tue, 27 Apr 2021 05:19:32 +0000 (13:19 +0800)]
Merge pull request #41022 from tchaikov/wip-cmake-findpmem

cmake/modules/Findpmem: always set pmem_VERSION_STRING

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agomgr/dashboard: upgrade package-lock.json 41037/head
Kefu Chai [Tue, 27 Apr 2021 04:23:25 +0000 (04:23 +0000)]
mgr/dashboard: upgrade package-lock.json

diminish "npm run fix:audit" divergences

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agomgr/cephadm: The command of 'ceph orch daemon restart mgr.xxx' may case mgr daemon... 41002/head
jianglong01 [Fri, 23 Apr 2021 10:10:30 +0000 (18:10 +0800)]
mgr/cephadm: The command of 'ceph orch daemon restart mgr.xxx' may case mgr daemon loop to restart
Scene:
The mgr daemon is active. After execing restart command, it may be save "scheduled_daemon_actions": {"mgr.xxx": "restart"}}" to config-key.
So the mgr daemon will restart before call rm_scheduled_daemon_action which case mgr daemon will load restart forever.

Fix mgr infinite restart issue refering to the same solution as 'ceph orch daemon redeploy'.

Signed-off-by: jianglong01 <jianglong01@qianxin.com>
4 years agoMerge pull request #41010 from rzarzynski/wip-crimson-backtrace-fix-assert
Kefu Chai [Tue, 27 Apr 2021 00:44:04 +0000 (08:44 +0800)]
Merge pull request #41010 from rzarzynski/wip-crimson-backtrace-fix-assert

crimson/common: fix broken assertion on FatalSignal setup.

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agolibrbd: fix spelling in immutable-object-cache conn error 41035/head
Ken Dreyer [Mon, 26 Apr 2021 21:01:41 +0000 (15:01 -0600)]
librbd: fix spelling in immutable-object-cache conn error

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
4 years agoMerge pull request #41030 from zdover23/wip-doc-adding-one-word-to-cephadm-nfs-2021...
zdover23 [Mon, 26 Apr 2021 17:41:03 +0000 (03:41 +1000)]
Merge pull request #41030 from zdover23/wip-doc-adding-one-word-to-cephadm-nfs-2021-Apr-26

doc/cephadm: add a single word

Reviewed-by: Sage Weil <sweil@redhat.com>
4 years agoceph-volume: fix "device" output 41032/head
Sébastien Han [Mon, 26 Apr 2021 16:01:19 +0000 (18:01 +0200)]
ceph-volume: fix "device" output

During
https://github.com/ceph/ceph/commit/ec0f5f3b22d24754c16131a1996e42b787e4255f
I changed "device" by "dev", let's revert that!

Fixes: https://tracker.ceph.com/issues/50478
Signed-off-by: Sébastien Han <seb@redhat.com>
4 years agoMerge pull request #38368 from rishabh-d-dave/cv-list-by-osd-id
Guillaume Abrioux [Mon, 26 Apr 2021 15:25:48 +0000 (17:25 +0200)]
Merge pull request #38368 from rishabh-d-dave/cv-list-by-osd-id

ceph-volume: allow listing devices by OSD ID

4 years agomgr/dashboard: fix HAProxy (now called ingress) 40936/head
Avan Thakkar [Tue, 20 Apr 2021 12:19:23 +0000 (17:49 +0530)]
mgr/dashboard: fix HAProxy (now called ingress)

Fixes: https://tracker.ceph.com/issues/50319
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
Support from Dashboard UI to create Ingress service type.

4 years agoMerge pull request #40992 from zdover23/wip-doc-cephadm-osd-advanced-adding-a-word...
zdover23 [Mon, 26 Apr 2021 14:34:26 +0000 (00:34 +1000)]
Merge pull request #40992 from zdover23/wip-doc-cephadm-osd-advanced-adding-a-word-2021-apr-22

doc/cephadm: adding "device" to a sentence

Reviewed-by: Sebastian Wagner <swagner@suse.com>
4 years agodoc/cephadm: add a single word 41030/head
Zac Dover [Mon, 26 Apr 2021 14:32:21 +0000 (00:32 +1000)]
doc/cephadm: add a single word

s/If the nfs-ganesha doesn't/If the
nfs-ganesha pool doesn't/

Signed-off-by: Zac Dover <zac.dover@gmail.com>
4 years agoMerge pull request #40724 from rhcs-dashboard/upgrade-caniuse-lite
Kefu Chai [Mon, 26 Apr 2021 14:26:58 +0000 (22:26 +0800)]
Merge pull request #40724 from rhcs-dashboard/upgrade-caniuse-lite

mgr/dashboard: upgrade Browserslist: caniuse-lite

Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
4 years agoMerge pull request #41029 from zdover23/wip-doc-cephadm-nfs-service-corrections-2021...
zdover23 [Mon, 26 Apr 2021 14:12:17 +0000 (00:12 +1000)]
Merge pull request #41029 from zdover23/wip-doc-cephadm-nfs-service-corrections-2021-Apr-26

doc/cephadm: rewrite "nfs.rst"

Reviewed-by: Sage Weil <sweil@redhat.com>
4 years agoMerge pull request #40594 from mkogan1/wip-rgw-multipart-complete
Casey Bodley [Mon, 26 Apr 2021 14:03:44 +0000 (10:03 -0400)]
Merge pull request #40594 from mkogan1/wip-rgw-multipart-complete

rgw: return OK on consecutive complete-multipart reqs

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agotest: tests for *at() libcephfs APIs 40810/head
Venky Shankar [Mon, 12 Apr 2021 09:26:03 +0000 (05:26 -0400)]
test: tests for *at() libcephfs APIs

Fixes: http://tracker.ceph.com/issues/50298
Signed-off-by: Venky Shankar <vshankar@redhat.com>
4 years agotest: cleanup files/dirs before finishing test
Venky Shankar [Tue, 20 Apr 2021 09:00:28 +0000 (14:30 +0530)]
test: cleanup files/dirs before finishing test

Other tests might use the same file names and expect libcephfs
calls to succeed.

Signed-off-by: Venky Shankar <vshankar@redhat.com>
4 years agoclient: non-at APIs call at-APIs with CEPHFS_AT_FDCWD as file descriptor
Venky Shankar [Wed, 21 Apr 2021 04:33:47 +0000 (10:03 +0530)]
client: non-at APIs call at-APIs with CEPHFS_AT_FDCWD as file descriptor

Signed-off-by: Venky Shankar <vshankar@redhat.com>
4 years agolibcephfs: introduce basic *at() calls
Venky Shankar [Mon, 12 Apr 2021 09:25:34 +0000 (05:25 -0400)]
libcephfs: introduce basic *at() calls

Signed-off-by: Venky Shankar <vshankar@redhat.com>
4 years agoclient: remove redundant caps_issued_mask() call in Client::fstatx()
Venky Shankar [Mon, 12 Apr 2021 10:36:12 +0000 (06:36 -0400)]
client: remove redundant caps_issued_mask() call in Client::fstatx()

No need to include this check since _getattr() checks this anyway.

Signed-off-by: Venky Shankar <vshankar@redhat.com>
4 years agodoc/cephadm: rewrite "nfs.rst" 41029/head
Zac Dover [Mon, 26 Apr 2021 13:04:04 +0000 (23:04 +1000)]
doc/cephadm: rewrite "nfs.rst"

This PR makes a few (very small) stylistic
corrections, mostly typographical, to the text.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
4 years agodoc/dev/osd_internals/mclock_wpq_cmp_study: fix a typo 41013/head
Kefu Chai [Mon, 26 Apr 2021 12:58:55 +0000 (20:58 +0800)]
doc/dev/osd_internals/mclock_wpq_cmp_study: fix a typo

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/cephfs/mds-config-ref: render options using confval directive
Kefu Chai [Sat, 24 Apr 2021 11:36:52 +0000 (19:36 +0800)]
doc/cephfs/mds-config-ref: render options using confval directive

less repeating, better maintanability this way

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/operations/pools: define pool settings using "describe"
Kefu Chai [Fri, 23 Apr 2021 08:28:37 +0000 (16:28 +0800)]
doc/rados/operations/pools: define pool settings using "describe"

better readability and more structured this way

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration: reference options using :confval:
Kefu Chai [Sat, 24 Apr 2021 11:22:39 +0000 (19:22 +0800)]
doc/rados/configuration: reference options using :confval:

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocmake/modules/Findpmem: always set pmem_VERSION_STRING 41022/head
Kefu Chai [Mon, 26 Apr 2021 03:26:11 +0000 (11:26 +0800)]
cmake/modules/Findpmem: always set pmem_VERSION_STRING

before this change, `pmem_VERSION_STRING` is not set if it is not able
to fulfill the specified version requirement. the intention was to check
if the version is able to satisfy the requirement. but actually, passing
an empty `pmem_VERSION_STRING` to `find_package_handle_standard_args()`
as the option of `VERSION_VAR` does not fail this check. on the
contrary, it prints

-- Found pmem: pmem_pmemobj_INCLUDE_DIR;pmem_pmem_INCLUDE_DIR (Required
is at least version "1.17")

if we requires pmem 1.17, while the found version is, for instance,
1.10.

if the required version is 1.7, and the found version is 1.10, the
output from cmake is:

-- Found pmem: pmem_pmemobj_INCLUDE_DIR;pmem_pmem_INCLUDE_DIR (found
suitable version "1.10", minimum required is "1.7")

in this change, the version spec is not specified when calling
`pkg_check_modules()`. so, `PKG_${component}_VERSION` is always set.
and we can always delegate the version checking to
`find_package_handle_standard_args()`. please note, we use the lower
version returned by pkg-config if multiple components are required and
both pkg-config settings return their versions.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoceph.spec.in: do not build with system pmdk by default
Kefu Chai [Mon, 26 Apr 2021 08:16:30 +0000 (16:16 +0800)]
ceph.spec.in: do not build with system pmdk by default

we need to use libpmem 1.10 in #40493.

without enabling the module stream offering libpmem 1.9.2, we can only
have access to libpmem 1.6.1. and fedora 33 only has libpmem 1.9
packaged. the same applies to openSUSE Tumbleweed and openSUSE Leap. so
let's stop using libpmem packaged by distro by default, until these
distros include libpmem 1.10.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #39929 from ceph/dependabot/npm_and_yarn/src/pybind/mgr/dashboard...
Ernesto Puerta [Mon, 26 Apr 2021 08:08:45 +0000 (10:08 +0200)]
Merge pull request #39929 from ceph/dependabot/npm_and_yarn/src/pybind/mgr/dashboard/frontend/elliptic-6.5.4

build(deps): bump elliptic from 6.5.3 to 6.5.4 in /src/pybind/mgr/dashboard/frontend

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>