]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
4 years agospec: add nfs to spec file 40526/head
Varsha Rao [Mon, 19 Apr 2021 12:00:16 +0000 (17:30 +0530)]
spec: add nfs to spec file

Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agomgr/nfs: Don't enable nfs module by default
Varsha Rao [Mon, 19 Apr 2021 10:11:22 +0000 (15:41 +0530)]
mgr/nfs: Don't enable nfs module by default

Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agomgr/nfs: check for invalid chars in cluster id
Varsha Rao [Thu, 15 Apr 2021 11:12:35 +0000 (16:42 +0530)]
mgr/nfs: check for invalid chars in cluster id

Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agomgr/nfs: Use CLICommand wrapper
Varsha Rao [Sat, 10 Apr 2021 10:46:11 +0000 (16:16 +0530)]
mgr/nfs: Use CLICommand wrapper

Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agomgr/nfs: reorg nfs files
Varsha Rao [Sat, 10 Apr 2021 09:22:07 +0000 (14:52 +0530)]
mgr/nfs: reorg nfs files

This patch does the following:
- removed export dir and moved its files to nfs dir
- renamed nfs.py to export.py

Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agomgr/nfs: Check if transport or protocol are list instance
Varsha Rao [Sat, 10 Apr 2021 07:38:56 +0000 (13:08 +0530)]
mgr/nfs: Check if transport or protocol are list instance

This is to fix "int object is not iterable” error.

Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agomgr/nfs: reorg cluster class and common helper methods
Varsha Rao [Fri, 9 Apr 2021 19:30:31 +0000 (01:00 +0530)]
mgr/nfs: reorg cluster class and common helper methods

Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agomgr/nfs: move common export helper methods to ExportMgr class
Varsha Rao [Fri, 9 Apr 2021 18:37:44 +0000 (00:07 +0530)]
mgr/nfs: move common export helper methods to ExportMgr class

This reorganization is to support RGW exports in future PR.

Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agomgr/nfs: move validate methods into new ValidateExport class
Varsha Rao [Fri, 9 Apr 2021 16:59:19 +0000 (22:29 +0530)]
mgr/nfs: move validate methods into new ValidateExport class

Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agomgr/nfs: add custom exception module
Varsha Rao [Wed, 31 Mar 2021 10:48:09 +0000 (16:18 +0530)]
mgr/nfs: add custom exception module

Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agomgr/nfs: create new module for export utils
Varsha Rao [Wed, 31 Mar 2021 08:28:36 +0000 (13:58 +0530)]
mgr/nfs: create new module for export utils

Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agomgr/nfs: rename fs dir to export
Varsha Rao [Tue, 30 Mar 2021 12:01:34 +0000 (17:31 +0530)]
mgr/nfs: rename fs dir to export

Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agomgr/volumes/nfs: Move nfs code out of volumes plugin
Varsha Rao [Thu, 25 Mar 2021 11:43:05 +0000 (17:13 +0530)]
mgr/volumes/nfs: Move nfs code out of volumes plugin

This PR is to support integration of dashboard with volumes/nfs plugin.

Fixes: https://tracker.ceph.com/issues/50080
Signed-off-by: Varsha Rao <varao@redhat.com>
4 years agoMerge pull request #40968 from rzarzynski/wip-crimson-only-fix-fwd-in-interruptor
Kefu Chai [Thu, 22 Apr 2021 02:29:18 +0000 (10:29 +0800)]
Merge pull request #40968 from rzarzynski/wip-crimson-only-fix-fwd-in-interruptor

crimson/common: fix forwarding in non_futurized_call_with_interruption().

Reviewed-by: Xuehan Xu <xxhdx1985126@gmail.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #40904 from inspur-wyq/patch-3
Kefu Chai [Thu, 22 Apr 2021 02:19:16 +0000 (10:19 +0800)]
Merge pull request #40904 from inspur-wyq/patch-3

doc/radosgw/multisite.rst: fix typos

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #40932 from lyarwood/pybind_rados_connect_timeout
Kefu Chai [Thu, 22 Apr 2021 02:18:36 +0000 (10:18 +0800)]
Merge pull request #40932 from lyarwood/pybind_rados_connect_timeout

pybind/rados: Document that timeout arg is ignored by connect

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge PR #40938 into master
Sage Weil [Thu, 22 Apr 2021 02:12:32 +0000 (22:12 -0400)]
Merge PR #40938 into master

* refs/pull/40938/head:
mgr/cephadm: less noise about osd specs
mgr/cephadm: kick serve loop when adding/removing labels
mgr/cephadm: do not place osds on _no_schedule hosts
doc/cephadm: document _no_schedule label
mgr/cephadm: fix 'orch ls' count to reflect schedulable hosts
mgr/cephadm: do not schedule on _no_schedule hosts

Reviewed-by: Juan Miguel Olmo <jolmomar@redhat.com>
Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Michael Fritch <mfritch@suse.com>
4 years agomgr/cephadm: less noise about osd specs 40938/head
Sage Weil [Tue, 20 Apr 2021 14:27:40 +0000 (10:27 -0400)]
mgr/cephadm: less noise about osd specs

We don't want this message every time around the serve() loop

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agomgr/cephadm: kick serve loop when adding/removing labels
Sage Weil [Tue, 20 Apr 2021 14:26:08 +0000 (10:26 -0400)]
mgr/cephadm: kick serve loop when adding/removing labels

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agomgr/cephadm: do not place osds on _no_schedule hosts
Sage Weil [Tue, 20 Apr 2021 14:08:56 +0000 (10:08 -0400)]
mgr/cephadm: do not place osds on _no_schedule hosts

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agodoc/cephadm: document _no_schedule label
Sage Weil [Tue, 20 Apr 2021 14:07:03 +0000 (10:07 -0400)]
doc/cephadm: document _no_schedule label

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agoMerge pull request #40969 from zdover23/wip-doc-cephadm-osd-filters-colons-2021-apr-21
zdover23 [Wed, 21 Apr 2021 19:23:07 +0000 (05:23 +1000)]
Merge pull request #40969 from zdover23/wip-doc-cephadm-osd-filters-colons-2021-apr-21

doc/cephadm: osd.rst -- removing colons

Reviewed-by: Sage Weil <sweil@redhat.com>
4 years agodoc/cephadm: osd.rst -- removing colons 40969/head
Zac Dover [Wed, 21 Apr 2021 18:14:24 +0000 (04:14 +1000)]
doc/cephadm: osd.rst -- removing colons

This PR removes colons that weren't necessary.
This is a companion PR to PR#40996.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
4 years agoMerge pull request #40705 from orozery/libcryptsetup-return-checks
Mykola Golub [Wed, 21 Apr 2021 18:10:32 +0000 (21:10 +0300)]
Merge pull request #40705 from orozery/libcryptsetup-return-checks

librbd/crypto: fix bad return checks from libcryptsetup

Reviewed-by: Mykola Golub <mgolub@suse.com>
4 years agoMerge PR #40966 into master
Sage Weil [Wed, 21 Apr 2021 17:35:40 +0000 (13:35 -0400)]
Merge PR #40966 into master

* refs/pull/40966/head:
doc/cephadm: osd: rewrite "additional opts"

Reviewed-by: Sage Weil <sage@redhat.com>
4 years agocrimson/common: fix forwarding in non_futurized_call_with_interruption(). 40968/head
Radoslaw Zarzynski [Wed, 21 Apr 2021 15:34:30 +0000 (15:34 +0000)]
crimson/common: fix forwarding in non_futurized_call_with_interruption().

This commit fixes a memory corruption problem found on the intersection
of `seastar::thread` and `interruptor` by a teuthology job [1].
It turns out to be caused by a use-after-free which happens due to
an issue with type deduction in `non_futurized_call_with_interruption`.
However, it might be beneficial to audit other members of the family too.

If `Result` is deduced to be a non-reference type (i.e. the `Func`
returns e.g. `ceph::bufferlist`), `std::forward<Result>` forwards
it as a r-value reference (`Result&&`). `decltype(auto)` makes this
reference the return type of the entire function which isn't what
we want.

Debugging
=========

Instrumentation
---------------
```diff
--- a/src/crimson/osd/ops_executer.cc
+++ b/src/crimson/osd/ops_executer.cc
@@ -28,6 +28,21 @@ namespace {

 namespace crimson::osd {

+struct scope_dbgr {
+  scope_dbgr() {
+    logger().debug("{}:{} on {}", __func__, __LINE__, (void*)this);
+  }
+  scope_dbgr(const scope_dbgr& src) {
+    logger().debug("{}:{} copy on {}; src {}", __func__, __LINE__, (void*)this, (void*)&src);
+  }
+  scope_dbgr(scope_dbgr&& src) noexcept {
+    logger().debug("{}:{} move on {}; src {}", __func__, __LINE__, (void*)this, (void*)&src);
+  }
+  ~scope_dbgr() {
+    logger().debug("{}:{} on {}", __func__, __LINE__, (void*)this);
+  }
+};
+
 OpsExecuter::call_ierrorator::future<> OpsExecuter::do_op_call(OSDOp& osd_op)
 {
   std::string cname, mname;
@@ -84,14 +99,16 @@ OpsExecuter::call_ierrorator::future<> OpsExecuter::do_op_call(OSDOp& osd_op)
       ceph::bufferlist outdata;
       auto cls_context = reinterpret_cast<cls_method_context_t>(this);
       const auto ret = method->exec(cls_context, indata, outdata);
-      return std::make_pair(ret, std::move(outdata));
+      logger().debug("do_ops_call: outdata just after exec: {}", outdata);
+      return std::make_tuple(ret, std::move(outdata), scope_dbgr{});
     }
   ).then_interruptible(
     [this, prev_rd, prev_wr, &osd_op, flags]
     (auto outcome) -> call_errorator::future<> {
-      auto& [ret, outdata] = outcome;
+      auto& [ret, outdata, dbgr] = outcome;
       osd_op.rval = ret;
-
+      logger().debug("do_ops_call: outdata just after then_interruptible: {}",
+                     outdata);
       logger().debug("do_op_call: method returned ret={}, outdata.length()={}"
                      " while num_read={}, num_write={}",
                      ret, outdata.length(), num_read, num_write);
```

After the fix
-------------
```
DEBUG 2021-04-21 15:32:30,012 [shard 0] bluestore - get_attr
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - do_ops_call: outdata just after exec: buffer::list(len=18,
        buffer::ptr(0~18 0x6000000ef000 in raw 0x6000000ef000 len 4000 nref 1)
)
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - scope_dbgr:33 on 0x60000085feb3
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - scope_dbgr:39 move on 0x60000085ff00; src 0x60000085feb3
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - ~scope_dbgr:42 on 0x60000085feb3
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - scope_dbgr:39 move on 0x60000085fed0; src 0x60000085ff00
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - ~scope_dbgr:42 on 0x60000085ff00
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - scope_dbgr:39 move on 0x60000085ff40; src 0x60000085fed0
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - ~scope_dbgr:42 on 0x60000085fed0
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - scope_dbgr:39 move on 0x60000015a740; src 0x60000085ff40
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - ~scope_dbgr:42 on 0x60000085ff40
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - scope_dbgr:39 move on 0x7ffc4d018df0; src 0x60000015a740
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - ~scope_dbgr:42 on 0x60000015a740
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - scope_dbgr:39 move on 0x6000005196d8; src 0x7ffc4d018df0
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - ~scope_dbgr:42 on 0x7ffc4d018df0
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - scope_dbgr:39 move on 0x7ffc4d018df0; src 0x6000005196d8
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - ~scope_dbgr:42 on 0x6000005196d8
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - scope_dbgr:39 move on 0x7ffc4d018db0; src 0x7ffc4d018df0
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - ~scope_dbgr:42 on 0x7ffc4d018df0
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - scope_dbgr:39 move on 0x600000807b58; src 0x7ffc4d018db0
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - ~scope_dbgr:42 on 0x7ffc4d018db0
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - scope_dbgr:39 move on 0x7ffc4d018d30; src 0x600000807b58
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - do_ops_call: outdata just after then_interruptible: buffer::list(len=18,
        buffer::ptr(0~18 0x6000000ef000 in raw 0x6000000ef000 len 4000 nref 1)
)
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - do_op_call: method returned ret=0, outdata.length()=18 while num_read=1, num_write=0
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - ~scope_dbgr:42 on 0x7ffc4d018d30
DEBUG 2021-04-21 15:32:30,012 [shard 0] osd - ~scope_dbgr:42 on 0x600000807b58
```

Before
------
```
DEBUG 2021-04-21 16:06:24,354 [shard 0] bluestore - get_attr
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - do_ops_call: outdata just after exec: buffer::list(len=18,
        buffer::ptr(0~18 0x6000000f7000 in raw 0x6000000f7000 len 4000 nref 1)
)
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - scope_dbgr:33 on 0x60000085fe84
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - scope_dbgr:39 move on 0x60000085fed0; src 0x60000085fe84
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - ~scope_dbgr:42 on 0x60000085fe84
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - ~scope_dbgr:42 on 0x60000085fed0
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - scope_dbgr:39 move on 0x60000085fea0; src 0x60000085fed0
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - scope_dbgr:39 move on 0x60000085ff40; src 0x60000085fea0
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - ~scope_dbgr:42 on 0x60000085fea0
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - scope_dbgr:39 move on 0x6000008360b0; src 0x60000085ff40
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - ~scope_dbgr:42 on 0x60000085ff40
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - scope_dbgr:39 move on 0x7ffe48b3ee00; src 0x6000008360b0
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - ~scope_dbgr:42 on 0x6000008360b0
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - scope_dbgr:39 move on 0x600000801a38; src 0x7ffe48b3ee00
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - ~scope_dbgr:42 on 0x7ffe48b3ee00
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - scope_dbgr:39 move on 0x7ffe48b3ee00; src 0x600000801a38
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - ~scope_dbgr:42 on 0x600000801a38
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - scope_dbgr:39 move on 0x7ffe48b3edc0; src 0x7ffe48b3ee00
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - ~scope_dbgr:42 on 0x7ffe48b3ee00
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - scope_dbgr:39 move on 0x600000807bf8; src 0x7ffe48b3edc0
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - ~scope_dbgr:42 on 0x7ffe48b3edc0
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - scope_dbgr:39 move on 0x7ffe48b3ed40; src 0x600000807bf8
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - do_ops_call: outdata just after then_interruptible: buffer::list(len=18,
        buffer:ptr(0~18 no raw)
)
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - do_op_call: method returned ret=0, outdata.length()=18 while num_read=1, num_write=0
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - ~scope_dbgr:42 on 0x7ffe48b3ed40
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - ~scope_dbgr:42 on 0x600000807bf8
DEBUG 2021-04-21 16:06:24,354 [shard 0] osd - do_osd_ops: osd_op(client.4131.0:4 1.e 1:70fc7f5f:test-rados-api-o06-82166-2::foo:head {call lock.get_info in=31b out=18b}
 snapc 0={} ondisk+read+known_if_redirected e6) v8 - object 1:70fc7f5f:test-rados-api-o06-82166-2::foo:head all operations successful
Reactor stalled for 521 ms on shard 0.
Backtrace:
  0x00000000017101b8
  0x00000000016d7960
  0x00000000016d7edc
  0x00000000016d810f
  /lib64/libpthread.so.0+0x0000000000012b2f
  0x00000000016b563e
  0x00000000016b801c
  0x00000000016b8504
  0x0000000000d68120
```

[1]: http://pulpito.front.sepia.ceph.com/rzarzynski-2021-04-19_12:11:51-rados-master-distro-basic-smithi/6058778/

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agodoc/cephadm: osd: rewrite "additional opts" 40966/head
Zac Dover [Wed, 21 Apr 2021 15:01:01 +0000 (01:01 +1000)]
doc/cephadm: osd: rewrite "additional opts"

This PR rewrites the "Additional Options"
subsection of the OSD chapter of the cephadm
guide.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
4 years agoMerge pull request #40914 from zdover23/wip-doc-cephadm-osd-advanced-up-to-filters...
zdover23 [Wed, 21 Apr 2021 14:21:38 +0000 (00:21 +1000)]
Merge pull request #40914 from zdover23/wip-doc-cephadm-osd-advanced-up-to-filters-2021-apr-18

doc/cephadm: rewrite "advanced osd s. specs"

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
4 years agolibrbd/crypto: fix bad return checks from libcryptsetup 40705/head
Or Ozeri [Thu, 8 Apr 2021 17:13:49 +0000 (20:13 +0300)]
librbd/crypto: fix bad return checks from libcryptsetup

This commit fixes the return checks for libcryptsetup functions
that may return non-zero success codes.

Fixes: https://tracker.ceph.com/issues/50461
Signed-off-by: Or Ozeri <oro@il.ibm.com>
4 years agoMerge pull request #40935 from TRYTOBE8TME/wip-rgw-bootstrap-fix
Yuval Lifshitz [Wed, 21 Apr 2021 08:39:03 +0000 (11:39 +0300)]
Merge pull request #40935 from TRYTOBE8TME/wip-rgw-bootstrap-fix

test/rgw: Removing unrecognized option from bootstrap file

4 years agoMerge pull request #40953 from tchaikov/wip-doc-confval
Kefu Chai [Wed, 21 Apr 2021 06:12:57 +0000 (14:12 +0800)]
Merge pull request #40953 from tchaikov/wip-doc-confval

common/options,doc/rados/configuration: extract crimson options, use confval directive

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
4 years agodoc/conf.py: use glob.glob() to find .yaml.in files 40953/head
Kefu Chai [Wed, 21 Apr 2021 05:32:35 +0000 (13:32 +0800)]
doc/conf.py: use glob.glob() to find .yaml.in files

improve the maintainability of .yaml.in files.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocmake: use file(GLOB ..) to find .yaml.in files
Kefu Chai [Wed, 21 Apr 2021 05:28:52 +0000 (13:28 +0800)]
cmake: use file(GLOB ..) to find .yaml.in files

instead of hardcode the option file names, use file(GLOB ..) to find
and collect them instead, for better maintainability.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocommon/optinos: extract crimson options out
Kefu Chai [Wed, 21 Apr 2021 04:46:22 +0000 (12:46 +0800)]
common/optinos: extract crimson options out

prepare for the change to split the options by services

in future, osd will have its own osd.yaml.in, while crimson will consume
both osd.yaml.in and crimson.yaml.in.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/mon-config-ref: use confval directive
Kefu Chai [Wed, 21 Apr 2021 04:36:43 +0000 (12:36 +0800)]
doc/rados/configuration/mon-config-ref: use confval directive

for defining options

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/general-config-ref: use confval directive
Kefu Chai [Wed, 21 Apr 2021 04:22:53 +0000 (12:22 +0800)]
doc/rados/configuration/general-config-ref: use confval directive

for defining options

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/osd-config-ref: use confval directive
Kefu Chai [Wed, 21 Apr 2021 04:13:14 +0000 (12:13 +0800)]
doc/rados/configuration/osd-config-ref: use confval directive

for defining options

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #40915 from rzarzynski/wip-crimson-backtrace-3
Kefu Chai [Wed, 21 Apr 2021 03:54:32 +0000 (11:54 +0800)]
Merge pull request #40915 from rzarzynski/wip-crimson-backtrace-3

crimson: make backtraces more human-readable with boost::stacktrace and addr2line

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #40939 from tchaikov/wip-doc-confval
Kefu Chai [Wed, 21 Apr 2021 02:15:46 +0000 (10:15 +0800)]
Merge pull request #40939 from tchaikov/wip-doc-confval

doc/rados/configuration/osd-config-ref:  use confval directive

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
4 years agosrc/test: Removing unrecognized option from bootstrap file 40935/head
Kalpesh [Tue, 20 Apr 2021 11:07:29 +0000 (16:37 +0530)]
src/test: Removing unrecognized option from bootstrap file

Removing '--distribute' option from a command in bootstrap file which seemed to be the reason of failure in:
http://qa-proxy.ceph.com/teuthology/dang-2021-04-19_12:28:43-rgw-wip-dang-zipper-sysobj-distro-basic-smithi/6059513/teuthology.log

Signed-off-by: Kalpesh Pandya <kapandya@redhat.com>
4 years agoMerge PR #39742 into master
Patrick Donnelly [Tue, 20 Apr 2021 21:01:32 +0000 (14:01 -0700)]
Merge PR #39742 into master

* refs/pull/39742/head:
client: make Inode to inherit from RefCountedObject
client: minor cleanup to Inode class to simplify the code
client: minor cleanup to Inode related code

Reviewed-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agoMerge pull request #40191 from dang/wip-dang-zipper-sysobj
Daniel Gryniewicz [Tue, 20 Apr 2021 18:19:47 +0000 (14:19 -0400)]
Merge pull request #40191 from dang/wip-dang-zipper-sysobj

RGW Zipper - Remove rgw_pool from API

4 years agomgr/cephadm: fix 'orch ls' count to reflect schedulable hosts
Sage Weil [Tue, 20 Apr 2021 14:01:33 +0000 (10:01 -0400)]
mgr/cephadm: fix 'orch ls' count to reflect schedulable hosts

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agomgr/cephadm: do not schedule on _no_schedule hosts
Sage Weil [Tue, 20 Apr 2021 14:01:22 +0000 (10:01 -0400)]
mgr/cephadm: do not schedule on _no_schedule hosts

Reuse and rename existing helper to return schedulable hosts.

Signed-off-by: Sage Weil <sage@newdream.net>
4 years agodoc/rados/configuration/osd-config-ref: use confval directive 40939/head
Kefu Chai [Mon, 19 Apr 2021 15:28:49 +0000 (23:28 +0800)]
doc/rados/configuration/osd-config-ref:  use confval directive

for defining options

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agopybind/rados: Document that timeout arg is ignored by connect 40932/head
Lee Yarwood [Tue, 20 Apr 2021 09:59:29 +0000 (10:59 +0100)]
pybind/rados: Document that timeout arg is ignored by connect

While this argument is accepted it has always been ignored. To avoid
confusion it should at least be called out in the documentation.

Signed-off-by: Lee Yarwood <lyarwood@redhat.com>
4 years agoMerge pull request #40928 from idryomov/wip-gid-reclaim-notes
Ilya Dryomov [Tue, 20 Apr 2021 08:46:29 +0000 (10:46 +0200)]
Merge pull request #40928 from idryomov/wip-gid-reclaim-notes

doc: 14.2.20, 15.2.11 and 16.2.1 releases and notes (CVE-2021-20288)

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
4 years agodoc/releases/index: update for 14.2.20, 15.2.11 and 16.2.1 40928/head
Ilya Dryomov [Tue, 20 Apr 2021 08:05:28 +0000 (10:05 +0200)]
doc/releases/index: update for 14.2.20, 15.2.11 and 16.2.1

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
4 years agoMerge pull request #40877 from mgfritch/doc-rgw-python3-print
Kefu Chai [Tue, 20 Apr 2021 07:02:49 +0000 (15:02 +0800)]
Merge pull request #40877 from mgfritch/doc-rgw-python3-print

doc/rgw: update to python3 print syntax

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #40846 from athanatos/sjust/wip-object-data
Samuel Just [Tue, 20 Apr 2021 06:50:22 +0000 (23:50 -0700)]
Merge pull request #40846 from athanatos/sjust/wip-object-data

seastore: initial object data support

Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
4 years agoMerge pull request #40911 from tchaikov/wip-doc-confval
Kefu Chai [Tue, 20 Apr 2021 00:03:48 +0000 (08:03 +0800)]
Merge pull request #40911 from tchaikov/wip-doc-confval

doc/rados/configuration/auth-config-ref: drop section of keyrings

Reviewed-by: Sage Weil <sage@redhat.com>
4 years agodoc/cephadm: rewrite "advanced osd s. specs" 40914/head
Zac Dover [Mon, 19 Apr 2021 14:38:44 +0000 (00:38 +1000)]
doc/cephadm: rewrite "advanced osd s. specs"

This PR improves the readbility and elegance of
the "Advanced OSD Service Specifications" section
of the OSD chapter of the cephadm guide.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
4 years agocrimson/common: do backtrace via boost::stackstrace and addr2line. 40915/head
Radoslaw Zarzynski [Mon, 19 Apr 2021 14:41:37 +0000 (14:41 +0000)]
crimson/common: do backtrace via boost::stackstrace and addr2line.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agocrimson/common: don't use Seastar's handle_signal() for fatal signals.
Radoslaw Zarzynski [Mon, 19 Apr 2021 14:32:05 +0000 (14:32 +0000)]
crimson/common: don't use Seastar's handle_signal() for fatal signals.

The `handle_signal()` way requires going through the reactor, and
thus is unsuitable for situations when it's no longer operational.
SIGSEGV generated as a result of actual fault (not `kill()`) is
the intended audience of this change.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agocrimson/common: let's dump the core on fatal signal.
Radoslaw Zarzynski [Mon, 19 Apr 2021 13:59:25 +0000 (13:59 +0000)]
crimson/common: let's dump the core on fatal signal.

Removing the call to engine's `exit()` should allow the singnal
handler to exit. In the case of `SIGSEGV` this would return back
to the problematic instruction, and thus retrigger the fault.
As our handler already restores `SIG_DFL`, it's expected to get
a core dump.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agocrimson/osd: handle fatal signals
Kefu Chai [Tue, 8 Sep 2020 05:44:44 +0000 (13:44 +0800)]
crimson/osd: handle fatal signals

seastar sets the signal handler for SIGSEGV and SIGABRT, and its signal
handler prints the stacktrace, but the the stack frames are adresses,
which are not human readable without the help of addr2line.

since crimson is linked with -rdynamic option, we have the symbols added
to the dynamic symbol table already. let print out the symbolized
addresses instead using our own stacktrace utility.

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 6e26243b6db49bb9813f8b8aeade68da07dc6065)

 Conflicts:
src/crimson/osd/main.cc

4 years agodoc/man/8/ceph-authtool: fix the indent of option 40911/head
Kefu Chai [Mon, 19 Apr 2021 14:09:52 +0000 (22:09 +0800)]
doc/man/8/ceph-authtool: fix the indent of option

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #40899 from malcolmholmes/malcolmholmes/fix-json-dashboard-error
Ernesto Puerta [Mon, 19 Apr 2021 14:09:39 +0000 (16:09 +0200)]
Merge pull request #40899 from malcolmholmes/malcolmholmes/fix-json-dashboard-error

mgr/Dashboard: Remove erroneous elements in hosts-overview Grafana dashboard

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: p-se <NOT@FOUND>
4 years agoMerge pull request #40898 from rzarzynski/wip-crimson-only-mgrclt-noconn-report
Kefu Chai [Mon, 19 Apr 2021 14:06:27 +0000 (22:06 +0800)]
Merge pull request #40898 from rzarzynski/wip-crimson-only-mgrclt-noconn-report

crimson/mgr: don't report if there is no connection available.

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/mon-config-ref: use confval directive
Kefu Chai [Mon, 19 Apr 2021 13:56:14 +0000 (21:56 +0800)]
doc/rados/configuration/mon-config-ref:  use confval directive

for defining options

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/auth-config-ref: drop section of keyrings
Kefu Chai [Mon, 19 Apr 2021 13:45:05 +0000 (21:45 +0800)]
doc/rados/configuration/auth-config-ref: drop section of keyrings

as per Sage, the caps are out of date (should be based on profiles) and
the keyring locations aren't useful information

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #40897 from tchaikov/wip-doc-more-conf-vals
Kefu Chai [Mon, 19 Apr 2021 13:43:43 +0000 (21:43 +0800)]
Merge pull request #40897 from tchaikov/wip-doc-more-conf-vals

doc/rados/configuration: use confval directive to define options.

Reviewed-by: Reviewed-by: Sage Weil <sage@redhat.com>
4 years agoRGW Zipper - Remove rgw_pool/sysobj from API 40191/head
Daniel Gryniewicz [Wed, 17 Mar 2021 13:22:22 +0000 (09:22 -0400)]
RGW Zipper - Remove rgw_pool/sysobj from API

rgw_pool and sysobj are part of the RADOS backend, and do not belong in
the API.  Instead, pull the objects using them into the API.  These are:
RGWOIDCProvider, RGWRole, and a new object LuaScript.

Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
4 years agoMerge pull request #40905 from idryomov/wip-rbd-kms-config-map-doc
Ilya Dryomov [Mon, 19 Apr 2021 13:40:21 +0000 (15:40 +0200)]
Merge pull request #40905 from idryomov/wip-rbd-kms-config-map-doc

doc/rbd/rbd-kubernetes: update for recent ceph-csi versions

Reviewed-by: Madhu Rajanna <madhupr007@gmail.com>
Reviewed-by: Sage Weil <sage@redhat.com>
4 years agoMerge pull request #40378 from zdover23/wip-doc-cephadm-osd-declarative-state-rewrite...
zdover23 [Mon, 19 Apr 2021 13:03:21 +0000 (23:03 +1000)]
Merge pull request #40378 from zdover23/wip-doc-cephadm-osd-declarative-state-rewrite-2021-Mar-25

doc/cephadm: rewrite "delcarative state" in osd.rst

Reviewed-by: Sage Weil <sweil@redhat.com>
4 years agoMerge PR #40817 into master
Sage Weil [Mon, 19 Apr 2021 12:30:42 +0000 (08:30 -0400)]
Merge PR #40817 into master

* refs/pull/40817/head:
mgr/MgrStandby: fix config observer
mgr/MgrStandby: respawn if mgr_standby_modules changes
qa/tasks/mgr/test_dashboard: skip test_standby if mgr_standby_modules=false
qa/suites/rados/cephadm/smoke-*: use cephadm.wait_for_service
qa/suites/rados/cephadm/smoke-singlehost: test --single-host-defaults
cephadm: add --single-host-defaults option to bootstrap
mgr/cephadm: allow mgr colo if mgr_standby_modules=false
mgr/MgrStandby: add mgr_standby_modules option

Reviewed-by: Sebastian Wagner <swagner@suse.com>
4 years agoMerge PR #40893 into master
Sage Weil [Mon, 19 Apr 2021 12:30:11 +0000 (08:30 -0400)]
Merge PR #40893 into master

* refs/pull/40893/head:
mgr/cephadm: don't list non ceph daemons as needing upgrade in upgrade check

Reviewed-by: Sage Weil <sage@redhat.com>
4 years agoMerge pull request #37730 from thotz/rgwkmsvaultsslsupport
Matt Benjamin [Mon, 19 Apr 2021 11:37:29 +0000 (07:37 -0400)]
Merge pull request #37730 from thotz/rgwkmsvaultsslsupport

rgw: extending existing ssl support for vault KMS

4 years agoMerge pull request #40881 from tchaikov/wip-50393
Kefu Chai [Mon, 19 Apr 2021 10:54:40 +0000 (18:54 +0800)]
Merge pull request #40881 from tchaikov/wip-50393

qa/workunits/mon/test_mon_config_key: use subprocess.run() instead of…

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
4 years agodoc/rbd/rbd-kubernetes: expose volume expansion functionality 40905/head
Ilya Dryomov [Mon, 19 Apr 2021 09:08:22 +0000 (11:08 +0200)]
doc/rbd/rbd-kubernetes: expose volume expansion functionality

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
4 years agodoc/rbd/rbd-kubernetes: imageFeatures is required
Ilya Dryomov [Mon, 19 Apr 2021 07:37:01 +0000 (09:37 +0200)]
doc/rbd/rbd-kubernetes: imageFeatures is required

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
4 years agodoc/rbd/rbd-kubernetes: mention KMS config map
Ilya Dryomov [Mon, 19 Apr 2021 07:37:01 +0000 (09:37 +0200)]
doc/rbd/rbd-kubernetes: mention KMS config map

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
4 years agodoc/rados/configuration/mon-config-ref: use confval directive 40897/head
Kefu Chai [Mon, 19 Apr 2021 09:24:55 +0000 (17:24 +0800)]
doc/rados/configuration/mon-config-ref:  use confval directive

for defining options

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/msgr2: use confval directive
Kefu Chai [Mon, 19 Apr 2021 06:37:34 +0000 (14:37 +0800)]
doc/rados/configuration/msgr2: use confval directive

for defining options

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/auth-config-ref: use "describe" to define default keyrings
Kefu Chai [Mon, 19 Apr 2021 06:28:02 +0000 (14:28 +0800)]
doc/rados/configuration/auth-config-ref: use "describe" to define default keyrings

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/_ext: use iec_size() instead of filesizeformat()
Kefu Chai [Sun, 18 Apr 2021 00:41:53 +0000 (08:41 +0800)]
doc/_ext: use iec_size() instead of filesizeformat()

to format size options in the same format supported by our C++
strict_iec_cast() parser. so they are more consistent from user's
perspective.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration: merge ms-ref into network-conf-ref
Kefu Chai [Sun, 18 Apr 2021 00:17:31 +0000 (08:17 +0800)]
doc/rados/configuration: merge ms-ref into network-conf-ref

the latter provides more context, and "messenger" is how the networking
infra is implemented.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/ceph-conf: use "describe" to define option types
Kefu Chai [Sat, 17 Apr 2021 23:55:39 +0000 (07:55 +0800)]
doc/rados/configuration/ceph-conf: use "describe" to define option types

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration: fix formatting of code block
Kefu Chai [Sat, 17 Apr 2021 17:52:52 +0000 (01:52 +0800)]
doc/rados/configuration: fix formatting of code block

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc: use "confsec" role for configure section
Kefu Chai [Sat, 17 Apr 2021 16:40:15 +0000 (00:40 +0800)]
doc: use "confsec" role for configure section

and rename confval_section to confsec for shorter name

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/ceph-conf: use confval directive
Kefu Chai [Sat, 17 Apr 2021 16:40:01 +0000 (00:40 +0800)]
doc/rados/configuration/ceph-conf: use confval directive

for defining options

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc: use ":confval:" role to reference options defined using confval
Kefu Chai [Sat, 17 Apr 2021 16:11:14 +0000 (00:11 +0800)]
doc: use ":confval:" role to reference options defined using confval

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/osd-config-ref: use confval directive
Kefu Chai [Sat, 17 Apr 2021 15:27:15 +0000 (23:27 +0800)]
doc/rados/configuration/osd-config-ref: use confval directive

for defining options

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/_ext: render see_also field
Kefu Chai [Sat, 17 Apr 2021 16:39:41 +0000 (00:39 +0800)]
doc/_ext: render see_also field

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/_ext: render more fields in an option
Kefu Chai [Sat, 17 Apr 2021 14:28:57 +0000 (22:28 +0800)]
doc/_ext: render more fields in an option

* print "enum_value" as a list
* print "note" and "warning"

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/mclock-config-ref: use confval directive
Kefu Chai [Sat, 17 Apr 2021 04:46:13 +0000 (12:46 +0800)]
doc/rados/configuration/mclock-config-ref: use confval directive

for defining options

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/pool-pg-config-ref: use confval directive
Kefu Chai [Sat, 17 Apr 2021 04:35:32 +0000 (12:35 +0800)]
doc/rados/configuration/pool-pg-config-ref: use confval directive

for defining options.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/rados/configuration/bluestore-config-ref: use confval directive
Kefu Chai [Sat, 17 Apr 2021 04:15:45 +0000 (12:15 +0800)]
doc/rados/configuration/bluestore-config-ref: use confval directive

for defining options.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #40906 from tchaikov/rzarzynski/wip-crimson-internal_client_reques...
Kefu Chai [Mon, 19 Apr 2021 08:45:46 +0000 (16:45 +0800)]
Merge pull request #40906 from tchaikov/rzarzynski/wip-crimson-internal_client_request-cleanup

crimson/osd: various cleanups

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agoMerge pull request #40874 from rhcs-dashboard/fix-cephfs-pool-size-stat
Kefu Chai [Mon, 19 Apr 2021 08:36:04 +0000 (16:36 +0800)]
Merge pull request #40874 from rhcs-dashboard/fix-cephfs-pool-size-stat

mgr/dashboard: filesystem pool size should use stored stat

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
4 years agoMerge pull request #40879 from myoungwon/wip-fix-50299
Kefu Chai [Mon, 19 Apr 2021 08:29:08 +0000 (16:29 +0800)]
Merge pull request #40879 from myoungwon/wip-fix-50299

osd: fix reference leak when ManifestOp is not used

Reviewed-by: Samuel Just <sjust@redhat.com>
4 years agoMerge pull request #40878 from tchaikov/wip-mop-cleanup
Kefu Chai [Mon, 19 Apr 2021 08:26:56 +0000 (16:26 +0800)]
Merge pull request #40878 from tchaikov/wip-mop-cleanup

osd: remove C_SetManifestRefCountDone::mop

Reviewed-by: Myoungwon Oh <myoungwon.oh@samsung.com>
Reviewed-by: Sam Just <sjust@redhat.com>
4 years agoMerge pull request #40896 from jdurgin/wip-yaml-options-fix
Kefu Chai [Mon, 19 Apr 2021 08:26:04 +0000 (16:26 +0800)]
Merge pull request #40896 from jdurgin/wip-yaml-options-fix

common/options: fix several out of date defaults and options added during yaml conversion

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #40884 from majianpeng/osd-watch-remove-unused-code
Kefu Chai [Mon, 19 Apr 2021 08:25:30 +0000 (16:25 +0800)]
Merge pull request #40884 from majianpeng/osd-watch-remove-unused-code

osd/Watch.h: remove unused code.

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoqa/workunits/mon/test_mon_config_key: use subprocess.run() instead of proc.communicate() 40881/head
Kefu Chai [Fri, 16 Apr 2021 04:09:14 +0000 (12:09 +0800)]
qa/workunits/mon/test_mon_config_key: use subprocess.run() instead of proc.communicate()

the loop of proc.communicate() on python3.6, where we always are able to
get something out of stdout and/or stderr PIPEs. and the `stdout` and
`stderr` keep growing until out of memory. and teuthology considers
the command crashed after a while.

Fixes: https://tracker.ceph.com/issues/50393
Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/osd: fix formatting around ClientRequest::do_process(). 40906/head
Radoslaw Zarzynski [Thu, 18 Mar 2021 09:39:58 +0000 (09:39 +0000)]
crimson/osd: fix formatting around ClientRequest::do_process().

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agocrimson/osd: fix header inclusion order in ops_executer.h.
Radoslaw Zarzynski [Thu, 18 Mar 2021 12:27:57 +0000 (12:27 +0000)]
crimson/osd: fix header inclusion order in ops_executer.h.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agocrimson/osd: PG::with_locked_obc() doesn't depend on Op anymore.
Radoslaw Zarzynski [Mon, 15 Mar 2021 19:22:03 +0000 (19:22 +0000)]
crimson/osd: PG::with_locked_obc() doesn't depend on Op anymore.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agocrimson/osd: drop namespace for arg in PG::with_locked_obc().
Radoslaw Zarzynski [Thu, 18 Mar 2021 09:54:40 +0000 (09:54 +0000)]
crimson/osd: drop namespace for arg in PG::with_locked_obc().

It's unnecessary.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agocrimson/osd: avoid unneeded obc catching in PG::do_osd_ops_execute().
Radoslaw Zarzynski [Mon, 22 Mar 2021 17:18:20 +0000 (17:18 +0000)]
crimson/osd: avoid unneeded obc catching in PG::do_osd_ops_execute().

Actually, `OpsExecuter` already holds `ObjectContextRef` and even
has a (private till now) getter for `hobject_t` extraction.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>