Radoslaw Zarzynski
ddedc2e182
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>
2021-04-21 16:53:25 +00:00
Zac Dover
91de0becbd
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>
2021-04-22 01:01:01 +10:00
zdover23
06d18bc36a
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>
2021-04-22 00:21:38 +10:00
Kefu Chai
bb75ef228a
vstart.sh: disable "rook" mgr module by default
...
as we don't have "jsonpatch" installed for running "make check", "rook"
module always fails to load, and the error message when mgr is
unable to load is misleading and distracting. let's just disabled it.
Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-04-21 22:12:39 +08:00
Kefu Chai
7d2964bf78
mgr/PyModuleRegistry: use vector<> when appropriate
...
no need to use a set<string> for storing module name, they are
inherently unique.
Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-04-21 21:51:55 +08:00
Sridhar Seshasayee
f417ebf0ff
doc/dev: Add internal documentation for mclock scheduler
...
The document details the refinements to mclock scheduler and presents the
results of a comparison study performed between the mclock scheduler and
the WPQ scheduler.
Signed-off-by: Sridhar Seshasayee <sseshasa@redhat.com>
2021-04-21 19:04:28 +05:30
Rishabh Dave
0ea399c011
ceph-volume: move get_lvs_from_path() to api/lvm.py
...
This makes this method reusable across ceph-volume codebase.
Signed-off-by: Rishabh Dave <ridave@redhat.com>
2021-04-21 18:30:09 +05:30
Rishabh Dave
0792a396ce
ceph-volume: allow listing devices by OSD ID
...
Adds the ability to list devices by OSD IDs, i.e. "ceph-volume lvm list
3" would list all devices under OSD ID 3 (which can be up to 2 and 3
devices under filestore and bluestore OSDs respectively).
Fixes: https://tracker.ceph.com/issues/41294
Signed-off-by: Rishabh Dave <ridave@redhat.com>
2021-04-21 18:30:09 +05:30
Rishabh Dave
7bf4937a59
ceph-volume: add methods to get LV from OSD ID
...
Signed-off-by: Rishabh Dave <ridave@redhat.com>
2021-04-21 18:28:51 +05:30
Or Ozeri
c0e6c07ae0
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>
2021-04-21 14:16:28 +03:00
Radoslaw Zarzynski
32af87341b
ceph.spec.in: crimson depends on binutils b/c of addr2line.
...
This small utility is needed due to the backtrace processing.
See: d3dcf510c3
.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2021-04-21 09:39:02 +00:00
Yuval Lifshitz
a67d1cf2a7
Merge pull request #40935 from TRYTOBE8TME/wip-rgw-bootstrap-fix
...
test/rgw: Removing unrecognized option from bootstrap file
2021-04-21 11:39:03 +03:00
Nizamudeen A
273a776cad
mgr/dashboard: Remove username and password from request body
...
Fixes: https://tracker.ceph.com/issues/50451
Signed-off-by: Nizamudeen A <nia@redhat.com>
2021-04-21 13:40:39 +05:30
Kefu Chai
4e0d61cb45
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>
2021-04-21 14:12:57 +08:00
Kefu Chai
4b7fb6c453
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>
2021-04-21 13:35:12 +08:00
Kefu Chai
4e58b5899e
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>
2021-04-21 13:34:35 +08:00
Kefu Chai
aa50d14b61
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>
2021-04-21 13:17:17 +08:00
Kefu Chai
52a5655296
doc/rados/configuration/mon-config-ref: use confval directive
...
for defining options
Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-04-21 12:37:03 +08:00
Kefu Chai
4481f4ac75
doc/rados/configuration/general-config-ref: use confval directive
...
for defining options
Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-04-21 12:33:19 +08:00
Kefu Chai
4a4dc9f5a1
doc/rados/configuration/osd-config-ref: use confval directive
...
for defining options
Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-04-21 12:33:19 +08:00
Kefu Chai
c3c2da4e32
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>
2021-04-21 11:54:32 +08:00
Kefu Chai
f2851d62e7
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>
2021-04-21 10:15:46 +08:00
Kalpesh
75060d50c2
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>
2021-04-21 02:36:22 +05:30
Patrick Donnelly
fab5c0fe4f
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>
2021-04-20 14:01:32 -07:00
Adam King
eebb842d04
mgr/cephadm: don't remove daemons from hosts in maintenance or offline mode
...
Fixes: https://tracker.ceph.com/issues/50364
Signed-off-by: Adam King <adking@redhat.com>
2021-04-20 14:44:06 -04:00
Adam King
56641742a7
mgr/cephadm: default status for daemons on maintenance hosts to stopped
...
we do not refresh the daemons on maintenance hosts so our info
on them is always outdated. Therefore, the best option is to
assume maintenance mode is working correctly and the daemons
are stopped
Signed-off-by: Adam King <adking@redhat.com>
2021-04-20 14:43:55 -04:00
Daniel Gryniewicz
4836b06358
Merge pull request #40191 from dang/wip-dang-zipper-sysobj
...
RGW Zipper - Remove rgw_pool from API
2021-04-20 14:19:47 -04:00
Samuel Just
851dd14f75
crimson/os/seastore/cache: factor out remove_from_dirty
...
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-04-20 10:41:44 -07:00
Sage Weil
ba135842e3
mgr/cephadm: fix 'orch ls' count to reflect schedulable hosts
...
Signed-off-by: Sage Weil <sage@newdream.net>
2021-04-20 12:10:13 -04:00
Sage Weil
f260c48f72
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>
2021-04-20 12:10:06 -04:00
Kefu Chai
d72fb1f3e6
doc/rados/configuration/osd-config-ref: use confval directive
...
for defining options
Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-04-20 22:49:20 +08:00
Lee Yarwood
79fca7aaf1
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>
2021-04-20 11:02:57 +01:00
Ilya Dryomov
477b705fe7
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>
2021-04-20 10:46:29 +02:00
Ilya Dryomov
a2b1c69981
doc/releases/index: update for 14.2.20, 15.2.11 and 16.2.1
...
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2021-04-20 10:05:28 +02:00
Kefu Chai
0be78da368
Merge pull request #40877 from mgfritch/doc-rgw-python3-print
...
doc/rgw: update to python3 print syntax
Reviewed-by: Kefu Chai <kchai@redhat.com>
2021-04-20 15:02:49 +08:00
Samuel Just
9b5d2042ee
crimson/os/seastore/cache: swap dirty_from users to get_dirty_from()
...
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-04-19 23:51:18 -07:00
Samuel Just
2ce4484312
crimson/os/seastore: route all transaction creations through cache
...
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-04-19 23:51:18 -07:00
Samuel Just
5c1ae5bcd2
Merge pull request #40846 from athanatos/sjust/wip-object-data
...
seastore: initial object data support
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
2021-04-19 23:50:22 -07:00
Kefu Chai
20bab70a08
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>
2021-04-20 08:03:48 +08:00
Abutalib Aghayev
389d8dec5c
os/bluestore: Removed redundant logging.
...
Signed-off-by: Abutalib Aghayev <agayev@psu.edu>
2021-04-19 18:30:15 -04:00
Zac Dover
4106e331fb
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>
2021-04-20 02:03:30 +10:00
Radoslaw Zarzynski
d3dcf510c3
crimson/common: do backtrace via boost::stackstrace and addr2line.
...
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2021-04-19 15:24:04 +00:00
Radoslaw Zarzynski
33cc480d11
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>
2021-04-19 15:24:04 +00:00
Radoslaw Zarzynski
7dec410192
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>
2021-04-19 15:24:04 +00:00
Kefu Chai
5a6e58e162
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
2021-04-19 15:24:04 +00:00
Sage Weil
d51d80b323
msgr/async: fix unsafe access in unregister_conn()
...
We were looking at anon_conns and accepting_conns without holding
the lock (deleted_lock is not sufficient).
Drop this test, and move the decrements:
- inc when we add to conns or anon_conns (no changes there)
- dec when we remove from deleted_conns (several different paths!)
Fixes: https://tracker.ceph.com/issues/49237
Signed-off-by: Sage Weil <sage@newdream.net>
2021-04-19 09:26:30 -05:00
Deepika Upadhyay
ec2a402f55
qa/tasks/cephadm: fix ctx archive check for teuthology
...
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
2021-04-19 19:48:47 +05:30
Mykola Golub
936898b8ca
os/FileStore: don't propagate split/merge error to "create"/"remove"
...
Either ignore or terminate, otherwise it may confuse the
"create"/"remove" caller.
Fixes: https://tracker.ceph.com/issues/50395
Signed-off-by: Mykola Golub <mgolub@suse.com>
2021-04-19 15:17:42 +01:00
Kefu Chai
2041207674
doc/man/8/ceph-authtool: fix the indent of option
...
Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-04-19 22:09:52 +08:00
Ernesto Puerta
b9575dc757
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>
2021-04-19 16:09:39 +02:00