]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
4 years agomgr/cephadm: check version in upgrade check 41315/head
Adam King [Wed, 12 May 2021 14:03:34 +0000 (10:03 -0400)]
mgr/cephadm: check version in upgrade check

Fixes: https://tracker.ceph.com/issues/50784
Signed-off-by: Adam King <adking@redhat.com>
4 years agoMerge pull request #41272 from Aran85/fix-assert
Samuel Just [Tue, 11 May 2021 15:06:56 +0000 (08:06 -0700)]
Merge pull request #41272 from Aran85/fix-assert

crimson/os: cleanup wrongly assertion

Reviewed-by: Samuel Just <sjust@redhat.com>
4 years agoMerge pull request #41274 from tchaikov/wip-crimson-os-cleanups
Samuel Just [Tue, 11 May 2021 15:06:01 +0000 (08:06 -0700)]
Merge pull request #41274 from tchaikov/wip-crimson-os-cleanups

crimson/os/seastore: do not capture unused variables

Reviewed-by: Samuel Just <sjust@redhat.com>
4 years agoMerge pull request #41193 from sebastian-philipp/cephadm-cephfs-mirror-key-profile...
Sebastian Wagner [Tue, 11 May 2021 14:45:44 +0000 (16:45 +0200)]
Merge pull request #41193 from sebastian-philipp/cephadm-cephfs-mirror-key-profile-cephfs-mirror

mgr/cephadm: Use `cephfs-mirror` caps profile

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
4 years agoMerge pull request #41181 from adk3798/iscsi-timeout
Sebastian Wagner [Tue, 11 May 2021 14:44:17 +0000 (16:44 +0200)]
Merge pull request #41181 from adk3798/iscsi-timeout

mgr/cephadm: add timeout when removing iscsi gateway.conf

Reviewed-by: Daniel Pivonka <dpivonka@redhat.com>
Reviewed-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
4 years agoMerge pull request #41175 from mgfritch/cephadm-autopep8
Sebastian Wagner [Tue, 11 May 2021 14:43:14 +0000 (16:43 +0200)]
Merge pull request #41175 from mgfritch/cephadm-autopep8

cephadm: introduce autopep8

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
4 years agoMerge pull request #41250 from VasishtaShastry/tune_err_msg
Sebastian Wagner [Tue, 11 May 2021 13:03:49 +0000 (15:03 +0200)]
Merge pull request #41250 from VasishtaShastry/tune_err_msg

mgr: Fix orch osd rm stop help message

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
4 years agoMerge pull request #41240 from tchaikov/wip-debian-install-cleanup
Kefu Chai [Tue, 11 May 2021 13:02:53 +0000 (21:02 +0800)]
Merge pull request #41240 from tchaikov/wip-debian-install-cleanup

debian/ceph-common.postinst: fix indent and cleanups

Reviewed-by: Sage Weil <sage@redhat.com>
4 years agoMerge pull request #41276 from tchaikov/wip-docs-responsive-button
Kefu Chai [Tue, 11 May 2021 12:57:49 +0000 (20:57 +0800)]
Merge pull request #41276 from tchaikov/wip-docs-responsive-button

doc/_theme: show the menu button

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
4 years agoMerge pull request #41265 from zdover23/wip-doc-config-ssl-tls-for-grafana-2021-05-11
zdover23 [Tue, 11 May 2021 12:52:14 +0000 (22:52 +1000)]
Merge pull request #41265 from zdover23/wip-doc-config-ssl-tls-for-grafana-2021-05-11

doc/cephadm: rewrite "config ssl/tls f. grafana"

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
4 years agoMerge pull request #41194 from idryomov/wip-rbd-pwl-status
Ilya Dryomov [Tue, 11 May 2021 11:05:11 +0000 (13:05 +0200)]
Merge pull request #41194 from idryomov/wip-rbd-pwl-status

rbd: don't attempt to interpret image cache state json

Reviewed-by: Yin Congmin <congmin.yin@intel.com>
Reviewed-by: Mahati Chamarthy <mahati.chamarthy@intel.com>
4 years agodoc/_theme: show the menu button 41276/head
Kefu Chai [Tue, 11 May 2021 09:55:32 +0000 (17:55 +0800)]
doc/_theme: show the menu button

because we have a top-nav bar, which is setting on top of the bar
containing the menu button when the docs is displayed wit a device with
smaller width. in this change, the container of the menu button is moved
down a little bit, so it is visible again.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/os/seastore: do not capture unused variables 41274/head
Kefu Chai [Tue, 11 May 2021 08:55:57 +0000 (16:55 +0800)]
crimson/os/seastore: do not capture unused variables

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41100 from navinbarnwal/MinorIssueFeature
Ernesto Puerta [Tue, 11 May 2021 08:28:36 +0000 (10:28 +0200)]
Merge pull request #41100 from navinbarnwal/MinorIssueFeature

mgr/dashboard: fix rename inventory to disks

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
4 years agocrimson/os: cleanup wrongly assertion 41272/head
Aran85 [Tue, 11 May 2021 08:13:44 +0000 (16:13 +0800)]
crimson/os: cleanup wrongly assertion

Signed-off-by: Zengran Zhang <zhangzengran@sangfor.com.cn>
4 years agoMerge pull request #41269 from tchaikov/wip-mgr-max_misplaced
Kefu Chai [Tue, 11 May 2021 07:39:02 +0000 (15:39 +0800)]
Merge pull request #41269 from tchaikov/wip-mgr-max_misplaced

doc/rados/operations: s/max_misplaced/target_max_misplaced_ratio/

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
4 years agoMerge pull request #41075 from cyx1231st/wip-seastore-onode-mgr
Samuel Just [Tue, 11 May 2021 06:43:26 +0000 (23:43 -0700)]
Merge pull request #41075 from cyx1231st/wip-seastore-onode-mgr

crimson/seastore: integrate and test onode-erase/list features

Reviewed-by: Samuel Just <sjust@redhat.com>
4 years agodoc/rados/operations: s/max_misplaced/target_max_misplaced_ratio/ 41269/head
Kefu Chai [Tue, 11 May 2021 04:18:56 +0000 (12:18 +0800)]
doc/rados/operations: s/max_misplaced/target_max_misplaced_ratio/

max_misplaced with replaced by in target_max_misplaced_ratio
edbd592ee44e02a5328e1510879555c2f9dcfc9e, but the document was not
sync'ed. let's update it accordingly.

Fixes: https://tracker.ceph.com/issues/50745
Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41207 from paulreece42/wip-doc-balancer-options
Kefu Chai [Tue, 11 May 2021 04:04:49 +0000 (12:04 +0800)]
Merge pull request #41207 from paulreece42/wip-doc-balancer-options

doc: added doc on more throttling options for the PG balancer module

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agodoc/cephadm: rewrite "config ssl/tls f. grafana" 41265/head
Zac Dover [Mon, 10 May 2021 23:19:10 +0000 (09:19 +1000)]
doc/cephadm: rewrite "config ssl/tls f. grafana"

This PR streamlines the grammar in the subsection
called "Configuring SSL/TLS for Grafana" in the
monitoring.rst file. It also corrects the prompt
rst.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
4 years agoMerge PR #41128 into master
Patrick Donnelly [Mon, 10 May 2021 14:43:43 +0000 (07:43 -0700)]
Merge PR #41128 into master

* refs/pull/41128/head:
qa/crontab: reduce frequency of pacific nightlies

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
4 years agoMerge pull request #40563 from BryceCao/wip_add_check_for_sync_url
J. Eric Ivancich [Mon, 10 May 2021 14:32:39 +0000 (10:32 -0400)]
Merge pull request #40563 from BryceCao/wip_add_check_for_sync_url

rgw : add check empty for sync url

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #38729 from rosinL/fix-rgw-file-read
J. Eric Ivancich [Mon, 10 May 2021 14:32:11 +0000 (10:32 -0400)]
Merge pull request #38729 from rosinL/fix-rgw-file-read

rgw/rgw_file: Fix the return value of read() and readlink()

Reviewed-by: Matt Benjamin mbenjamin@redhat.com
4 years agoMerge pull request #36305 from ivancich/wip-ordered-list-map-efficiency
J. Eric Ivancich [Mon, 10 May 2021 14:31:42 +0000 (10:31 -0400)]
Merge pull request #36305 from ivancich/wip-ordered-list-map-efficiency

rgw: ordered list map efficiency

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #41108 from dang/wip-dang-zipper-link
Daniel Gryniewicz [Mon, 10 May 2021 14:15:57 +0000 (10:15 -0400)]
Merge pull request #41108 from dang/wip-dang-zipper-link

RGW Zipper - Remove link/unlink from API

4 years agoMerge pull request #37720 from ifed01/wip-ifed-alloc-tool-fixes
Kefu Chai [Mon, 10 May 2021 13:26:17 +0000 (21:26 +0800)]
Merge pull request #37720 from ifed01/wip-ifed-alloc-tool-fixes

os/bluestore: some minor fixes/improvements for allocator's stats inquiries

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
4 years agomgr: Fix orch osd rm stop help message 41250/head
VasishtaShastry [Mon, 10 May 2021 06:38:59 +0000 (12:08 +0530)]
mgr: Fix orch osd rm stop help message

Corrects help message of `ceph orch osd rm --help`
Doc link - https://docs.ceph.com/en/latest/cephadm/osd/#stopping-osd-removal

Signed-off-by: VasishtaShastry <vipin.indiasmg@gmail.com>
4 years agoMerge pull request #40931 from AmnonHanuhov/wip-refactor_conn_send
Amnon Hanuhov [Mon, 10 May 2021 10:37:29 +0000 (13:37 +0300)]
Merge pull request #40931 from AmnonHanuhov/wip-refactor_conn_send

crimson/net: Refactor conn::send()

4 years agoMerge pull request #41218 from rhcs-dashboard/revert-base-href
Ernesto Puerta [Mon, 10 May 2021 08:28:41 +0000 (10:28 +0200)]
Merge pull request #41218 from rhcs-dashboard/revert-base-href

mgr/dashboard: fix base-href: revert it to previous approach

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
4 years agoMerge pull request #41185 from idryomov/wip-rbd-pwl-reopen
Ilya Dryomov [Sun, 9 May 2021 19:49:53 +0000 (21:49 +0200)]
Merge pull request #41185 from idryomov/wip-rbd-pwl-reopen

librbd/cache/pwl: fix parsing of cache_type in create_image_cache_state()

Reviewed-by: Mahati Chamarthy <mahati.chamarthy@intel.com>
Reviewed-by: Yin Congmin <congmin.yin@intel.com>
4 years agodebian/ceph-common.postinst: fix indent and cleanups 41240/head
Kefu Chai [Sat, 8 May 2021 15:14:54 +0000 (23:14 +0800)]
debian/ceph-common.postinst: fix indent and cleanups

* add editor variables for emacs
* replace tab with 8 spaces
* move "then" to previous line to be more consistent

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41141 from ivancich/wip-listing-initial-marker
J. Eric Ivancich [Sat, 8 May 2021 14:55:37 +0000 (10:55 -0400)]
Merge pull request #41141 from ivancich/wip-listing-initial-marker

rgw: fix bucket object listing when marker matches prefix

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
4 years agoMerge pull request #41140 from ivancich/wip-bucket-purge-paging
J. Eric Ivancich [Sat, 8 May 2021 14:54:58 +0000 (10:54 -0400)]
Merge pull request #41140 from ivancich/wip-bucket-purge-paging

rgw: radosgw_admin remove bucket not purging past 1,000 objects

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #40886 from pritha-srivastava/wip-rgw-mfa-pin-check
J. Eric Ivancich [Sat, 8 May 2021 14:54:08 +0000 (10:54 -0400)]
Merge pull request #40886 from pritha-srivastava/wip-rgw-mfa-pin-check

rgw: fix for mfa resync crash when supplied with only one totp_pin.

Reviewed-by: Matt Benjamin mbenjamin@redhat.com
4 years agoMerge pull request #41166 from tchaikov/wip-cmake-cython-cflags
Kefu Chai [Sat, 8 May 2021 13:17:19 +0000 (21:17 +0800)]
Merge pull request #41166 from tchaikov/wip-cmake-cython-cflags

cmake: remove cflags from CC

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
4 years agoMerge pull request #41234 from tchaikov/wip-crimson-common
Kefu Chai [Sat, 8 May 2021 12:00:37 +0000 (20:00 +0800)]
Merge pull request #41234 from tchaikov/wip-crimson-common

crimson/common: use string_view when appropriate

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
Reviewed-by: Xuehan Xu <xxhdx1985126@gmail.com>
4 years agocrimson/common: use string_view when appropriate 41234/head
Kefu Chai [Sat, 8 May 2021 08:43:55 +0000 (16:43 +0800)]
crimson/common: use string_view when appropriate

the typical use case of get_val() passes a literal string as the key,
in that case, there is no need to create a std::string. as
md_config_t::get_val() always accepts a string_view as the option name.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41080 from t-msn/readdir-fix2
Kefu Chai [Sat, 8 May 2021 08:36:51 +0000 (16:36 +0800)]
Merge pull request #41080 from t-msn/readdir-fix2

os/FileStore: fix to handle readdir error correctly

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Mykola Golub <mgolub@suse.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
4 years agoMerge pull request #40993 from neha-ojha/wip-50466
Kefu Chai [Sat, 8 May 2021 08:31:52 +0000 (16:31 +0800)]
Merge pull request #40993 from neha-ojha/wip-50466

osd/PG.cc: handle removal of pgmeta object

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
4 years agoMerge pull request #41143 from idryomov/wip-posix-memalign-fix
Kefu Chai [Sat, 8 May 2021 08:29:37 +0000 (16:29 +0800)]
Merge pull request #41143 from idryomov/wip-posix-memalign-fix

common/buffer: adjust align before calling posix_memalign()

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agoMerge pull request #41155 from rzarzynski/wip-global-backtrace-bug-50653
Kefu Chai [Sat, 8 May 2021 08:29:00 +0000 (16:29 +0800)]
Merge pull request #41155 from rzarzynski/wip-global-backtrace-bug-50653

log: fix the formatting when dumping thread IDs.

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/seastore: integrate and test remove/list to SeaStore 41075/head
Yingxin Cheng [Thu, 29 Apr 2021 06:24:52 +0000 (14:24 +0800)]
crimson/seastore: integrate and test remove/list to SeaStore

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/seastore: integrate and test oid list to OnodeManager
Yingxin Cheng [Thu, 29 Apr 2021 02:20:05 +0000 (10:20 +0800)]
crimson/seastore: integrate and test oid list to OnodeManager

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: make sure oids in tree are always valid
Yingxin Cheng [Thu, 29 Apr 2021 02:17:53 +0000 (10:17 +0800)]
crimson/onode-staged-tree: make sure oids in tree are always valid

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: use const reference in test_fltree_onode_manager
Yingxin Cheng [Thu, 29 Apr 2021 02:13:31 +0000 (10:13 +0800)]
crimson/onode-staged-tree: use const reference in test_fltree_onode_manager

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: define and use _MIN/_MAX_OID internally
Yingxin Cheng [Thu, 29 Apr 2021 02:08:17 +0000 (10:08 +0800)]
crimson/onode-staged-tree: define and use _MIN/_MAX_OID internally

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: declare and use max key indexes
Yingxin Cheng [Thu, 29 Apr 2021 01:59:16 +0000 (09:59 +0800)]
crimson/onode-staged-tree: declare and use max key indexes

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: print the signed shard_t
Yingxin Cheng [Thu, 29 Apr 2021 01:45:51 +0000 (09:45 +0800)]
crimson/onode-staged-tree: print the signed shard_t

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/onode-staged-tree: fix potential overflow in toMatchKindCMP()
Yingxin Cheng [Thu, 29 Apr 2021 01:44:05 +0000 (09:44 +0800)]
crimson/onode-staged-tree: fix potential overflow in toMatchKindCMP()

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/seastore: integrate and test onode erase to OnodeManager
Yingxin Cheng [Tue, 27 Apr 2021 02:54:29 +0000 (10:54 +0800)]
crimson/seastore: integrate and test onode erase to OnodeManager

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/seastore: cleanup OnodeManager curly braces
Yingxin Cheng [Mon, 26 Apr 2021 07:17:28 +0000 (15:17 +0800)]
crimson/seastore: cleanup OnodeManager curly braces

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/seastore: switch tab mode of OnodeManager files to nil
Yingxin Cheng [Mon, 26 Apr 2021 07:01:54 +0000 (15:01 +0800)]
crimson/seastore: switch tab mode of OnodeManager files to nil

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/seastore: make OnodeManager interfaces pure virtual
Yingxin Cheng [Mon, 26 Apr 2021 06:44:54 +0000 (14:44 +0800)]
crimson/seastore: make OnodeManager interfaces pure virtual

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agoMerge pull request #41220 from rzarzynski/wip-crimson-monc-honor-cancel
Kefu Chai [Fri, 7 May 2021 15:52:44 +0000 (23:52 +0800)]
Merge pull request #41220 from rzarzynski/wip-crimson-monc-honor-cancel

crimson/monc: honor auth_result_t::canceled as the result of do_auth().

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41222 from tchaikov/wip-crimson-cleanups
Kefu Chai [Fri, 7 May 2021 15:39:32 +0000 (23:39 +0800)]
Merge pull request #41222 from tchaikov/wip-crimson-cleanups

crimson/os: cleanups

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Xuehan Xu <xxhdx1985126@gmail.com>
4 years agoMerge pull request #41223 from rzarzynski/wip-crimson-alienstore-sighup
Kefu Chai [Fri, 7 May 2021 15:38:32 +0000 (23:38 +0800)]
Merge pull request #41223 from rzarzynski/wip-crimson-alienstore-sighup

crimson/alienstore: block SIGHUP to coexist with Seastar's signal handling

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41177 from dsavineau/cv_remove_legacy_release_check
Guillaume Abrioux [Fri, 7 May 2021 15:33:47 +0000 (17:33 +0200)]
Merge pull request #41177 from dsavineau/cv_remove_legacy_release_check

ceph-volume: remove legacy release check

4 years agoMerge pull request #41178 from dsavineau/cv_tox_py3
Guillaume Abrioux [Fri, 7 May 2021 15:31:55 +0000 (17:31 +0200)]
Merge pull request #41178 from dsavineau/cv_tox_py3

ceph-volume: remove duplicate py3 env

4 years agoMerge pull request #40016 from neha-ojha/wip-default-mclock
Neha Ojha [Fri, 7 May 2021 15:08:39 +0000 (08:08 -0700)]
Merge pull request #40016 from neha-ojha/wip-default-mclock

use mclock_scheduler as the default scheduler

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Sridhar Seshasayee <sseshasa@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Sunny Kumar <sunkumar@redhat.com>
4 years agocrimson/monc: honor auth_result_t::canceled as the result of do_auth(). 41220/head
Radoslaw Zarzynski [Fri, 7 May 2021 00:08:19 +0000 (00:08 +0000)]
crimson/monc: honor auth_result_t::canceled as the result of do_auth().

An attempt to `Connection::do_auth()` may finish in one of three states:
_success_, _failure_ and _cancellation_. Unfortunately, its callers were
missing the third treating cancellation like a failure. This was the root
cause of the following failure at Sepia:

```
rzarzynski@teuthology:/home/teuthworker/archive/rzarzynski-2021-05-06_22:08:43-rados-master-distro-basic-smithi/6102605$ less ./remote/smithi204/log/ceph-osd.3.log.gz
...
WARN  2021-05-06 22:35:40,464 [shard 0] osd - ms_handle_reset
...
INFO  2021-05-06 22:35:40,465 [shard 0] monc - do_auth_single: connection closed
INFO  2021-05-06 22:35:40,465 [shard 0] ms - [osd.3(client) v2:172.21.15.204:6808/31418@57568 >> mon.? v2:172.21.15.204:3300/0] execute_connecting(): protocol aborted at CLOSING -- std::system_error (error crimson::net:6, protocol aborted)
...
ERROR 2021-05-06 22:35:40,465 [shard 0] osd - mon.osd.3 dispatch() ms_handle_reset caught exception: std::system_error (error crimson::net:3, negotiation failure)
ceph-osd: /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-3909-g81233a18/rpm/el8/BUILD/ceph-17.0.0-3909-g81233a18/src/crimson/common/gated.h:36: crimson::common::Gated::dispatch(const char*, T&, Func&&) [with Func = crimson::mon::Client::ms_handle_reset(crimson::net::ConnectionRef, bool)::<lambda()>&; T = crimson::mon::Client]::<lambda(std::__exception_ptr::exception_ptr)>: Assertion `*eptr.__cxa_exception_type() == typeid(seastar::gate_closed_exception)' failed.
Aborting on shard 0.
Backtrace:
 0# 0x00005618C973932F in ceph-osd
 1# FatalSignal::signaled(int, siginfo_t const*) in ceph-osd
 2# FatalSignal::install_oneshot_signal_handler<6>()::{lambda(int, siginfo_t*, void*)#1}::_FUN(int, siginfo_t*, void*) in ceph-osd
 3# 0x00007F7BB592EB20 in /lib64/libpthread.so.0
 4# gsignal in /lib64/libc.so.6
 5# abort in /lib64/libc.so.6
 6# 0x00007F7BB3F29B09 in /lib64/libc.so.6
 7# 0x00007F7BB3F37DE6 in /lib64/libc.so.6
 8# 0x00005618C9FF295C in ceph-osd
 9# 0x00005618C3907313 in ceph-osd
10# 0x00005618CCA2F84F in ceph-osd
11# 0x00005618CCA34D90 in ceph-osd
12# 0x00005618CCBEC9BB in ceph-osd
13# 0x00005618CC744E9A in ceph-osd
14# main in ceph-osd
15# __libc_start_main in /lib64/libc.so.6
16# _start in ceph-osd
daemon-helper: command crashed with signal 6
```

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agocrimson/alienstore: block SIGHUP to coexist with Seastar's signal handling. 41223/head
Radoslaw Zarzynski [Thu, 6 May 2021 17:21:28 +0000 (17:21 +0000)]
crimson/alienstore: block SIGHUP to coexist with Seastar's signal handling.

In `crimson/osd/main.cc` we instruct Seastar to handle `SIGHUP`.

```
        // just ignore SIGHUP, we don't reread settings
        seastar::engine().handle_signal(SIGHUP, [] {})
```

This happens using the Seastar's signal handling infrastructure
which is incompliant with the alien world.

```
void
reactor::signals::handle_signal(int signo, noncopyable_function<void ()>&& handler) {
    // ...
    struct sigaction sa;
    sa.sa_sigaction = [](int sig, siginfo_t *info, void *p) {
        engine()._backend->signal_received(sig, info, p);
    };
    // ...
}
```

```
 extern __thread reactor* local_engine;
extern __thread size_t task_quota;

inline reactor& engine() {
    return *local_engine;
}
```

The low-level signal handler above assumes `local_engine._backend`
is not null which stays true only for threads from the S*'s world.
Unfortunately, as we don't block the `SIGHUP` for alien threads,
kernel is perfectly authorized to pick up one them to run the handler
leading to weirdly-looking segfaults like this one:

```
INFO  2021-04-23 07:06:57,807 [shard 0] bluestore - stat
DEBUG 2021-04-23 07:06:58,753 [shard 0] ms - [osd.1(client) v2:172.21.15.100:6802/30478@51064 >> mgr.4105 v2:172.21.15.109:6800/29891] --> #7 === pg_stats(0 pgs seq 55834574872 v 0) v2 (87)
...
INFO  2021-04-23 07:06:58,813 [shard 0] bluestore - stat
DEBUG 2021-04-23 07:06:59,753 [shard 0] osd - AdminSocket::handle_client: incoming asok string: {"prefix": "get_command_descriptions"}
INFO  2021-04-23 07:06:59,753 [shard 0] osd - asok response length: 2947
INFO  2021-04-23 07:06:59,817 [shard 0] bluestore - stat
DEBUG 2021-04-23 07:06:59,865 [shard 0] osd - AdminSocket::handle_client: incoming asok string: {"prefix": "get_command_descriptions"}
INFO  2021-04-23 07:06:59,866 [shard 0] osd - asok response length: 2947
DEBUG 2021-04-23 07:07:00,020 [shard 0] osd - AdminSocket::handle_client: incoming asok string: {"prefix": "get_command_descriptions"}
INFO  2021-04-23 07:07:00,020 [shard 0] osd - asok response length: 2947
INFO  2021-04-23 07:07:00,820 [shard 0] bluestore - stat
...
Backtrace:
 0# 0x00005600CD0D6AAF in ceph-osd
 1# FatalSignal::signaled(int) in ceph-osd
 2# FatalSignal::install_oneshot_signal_handler<11>()::{lambda(int, siginfo_t*, void*)#1}::_FUN(int, siginfo_t*, void*) in ceph-osd
 3# 0x00007F5877C7EB20 in /lib64/libpthread.so.0
 4# 0x00005600CD830B81 in ceph-osd
 5# 0x00007F5877C7EB20 in /lib64/libpthread.so.0
 6# pthread_cond_timedwait in /lib64/libpthread.so.0
 7# crimson::os::ThreadPool::loop(std::chrono::duration<long, std::ratio<1l, 1000l> >, unsigned long) in ceph-osd
 8# 0x00007F5877999BA3 in /lib64/libstdc++.so.6
 9# 0x00007F5877C7414A in /lib64/libpthread.so.0
10# clone in /lib64/libc.so.6
daemon-helper: command crashed with signal 11
```

Ultimately, it turned out the thread came out from a syscall (`futex`)
and started crunching the `SIGHUP` handler's code in which a nullptr
dereference happened.

This patch blocks `SIGHUP` for all threads spawned by `AlienStore`.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
4 years agocrimson/os: use this explicitly 41222/head
Kefu Chai [Fri, 7 May 2021 13:39:36 +0000 (21:39 +0800)]
crimson/os: use this explicitly

to silence the warning from clang. it fails to figure out that this is
actually used, and complains that this is captured but not used.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/os/seastore: use map::merge() to merge maps
Kefu Chai [Fri, 7 May 2021 13:36:48 +0000 (21:36 +0800)]
crimson/os/seastore: use map::merge() to merge maps

C++17's std::map allows us to merge two maps, and in this case, we can
even consume `child_result`. so map::merge() is used instead of insert()
in hope to avoid the memcpy and allocation of pair<> nodes.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson.os/seastore: do not capture unused variables
Kefu Chai [Fri, 7 May 2021 13:36:10 +0000 (21:36 +0800)]
crimson.os/seastore: do not capture unused variables

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/os/seastore: do not start identifier with "__"
Kefu Chai [Fri, 7 May 2021 13:14:30 +0000 (21:14 +0800)]
crimson/os/seastore: do not start identifier with "__"

avoid starting identifiers with two underscores, these names are
reserved for C/C++ compiler and standard library.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41217 from petrutlucian94/boost_url
Kefu Chai [Fri, 7 May 2021 12:22:42 +0000 (20:22 +0800)]
Merge pull request #41217 from petrutlucian94/boost_url

win*.sh,cmake: Fix Windows build

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41129 from athanatos/sjust/wip-seastore-osd
Kefu Chai [Fri, 7 May 2021 11:51:33 +0000 (19:51 +0800)]
Merge pull request #41129 from athanatos/sjust/wip-seastore-osd

crimson: add initial osd support for seastore

Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #41215 from CloudFerro/new_boost_url
Kefu Chai [Fri, 7 May 2021 10:48:05 +0000 (18:48 +0800)]
Merge pull request #41215 from CloudFerro/new_boost_url

cmake: Replace boost download url

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agomgr/dashboard: fix base-href: revert it to previous approach 41218/head
Avan Thakkar [Fri, 7 May 2021 09:38:11 +0000 (15:08 +0530)]
mgr/dashboard: fix base-href: revert it to previous approach

Fixes: https://tracker.ceph.com/issues/50684
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
4 years agowin*.sh,cmake: Fix Windows linking errors 41217/head
Lucian Petrut [Fri, 7 May 2021 09:23:30 +0000 (09:23 +0000)]
win*.sh,cmake: Fix Windows linking errors

The Windows build is hitting linking errors after
bumping the Boost version to 1.75. The issue is that Boost
is now setting the zlib dependecy using INTERFACE_LINK_LIBRARIES,
which means that it's no longer located using the standard
"find_package" mechanism.

In order for the linker to locate zlib, we'll add it to the
linker search path.

[1] https://github.com/boostorg/boost_install/issues/47

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
4 years agocmake: Replace boost download url 41215/head
Rafał Wądołowski [Fri, 7 May 2021 08:12:43 +0000 (10:12 +0200)]
cmake: Replace boost download url

Boost has moved downloads to JFrog Artifactory
https://www.boost.org/users/news/boost_has_moved_downloads_to_jfr.html

Signed-off-by: Rafał Wądołowski <rwadolowski@cloudferro.com>
4 years agomgr/dashboard: fix rename inventory to disks 41100/head
Navin Barnwal [Fri, 7 May 2021 07:47:39 +0000 (13:17 +0530)]
mgr/dashboard: fix rename inventory to disks

Fix Inventory breadcrumbs

Fixes: https://tracker.ceph.com/issues/50314
Signed-off-by: Navin Barnwal <knbarnwal@gmail.com>
4 years agocrimson/tools/store-nbd: fix help message for path 41129/head
Samuel Just [Thu, 6 May 2021 07:13:54 +0000 (00:13 -0700)]
crimson/tools/store-nbd: fix help message for path

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agoseastore: add comment to do_transaction outlining ordering TODO
Samuel Just [Wed, 5 May 2021 05:22:18 +0000 (22:22 -0700)]
seastore: add comment to do_transaction outlining ordering TODO

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/segment_manager/block: create block device during mkfs
Samuel Just [Mon, 3 May 2021 21:26:09 +0000 (14:26 -0700)]
crimson/os/seastore/segment_manager/block: create block device during mkfs

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore: refactor segment_cleaner to init segment_manager params after...
Samuel Just [Tue, 27 Apr 2021 22:00:11 +0000 (15:00 -0700)]
crimson/os/seastore: refactor segment_cleaner to init segment_manager params after mount

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agovstart.sh: add --seastore
Samuel Just [Mon, 26 Apr 2021 20:52:46 +0000 (13:52 -0700)]
vstart.sh: add --seastore

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore: add seastore to FuturizedStore::create
Samuel Just [Thu, 22 Apr 2021 23:57:19 +0000 (16:57 -0700)]
crimson/os/seastore: add seastore to FuturizedStore::create

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/segment_manager/block: DSYNC not needed
Samuel Just [Mon, 26 Apr 2021 20:49:54 +0000 (13:49 -0700)]
crimson/os/seastore/segment_manager/block: DSYNC not needed

We are expressly flushing, so this shouldn't be needed.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore: refactor SegmentManager reference ownership
Samuel Just [Thu, 22 Apr 2021 23:56:08 +0000 (16:56 -0700)]
crimson/os/seastore: refactor SegmentManager reference ownership

Gives SeaStore ownership over SegmentManager and rearranges mkfs/mount.
Replaces mkfs_config_t/mount_config_t with config params.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agotest/crimson/seastore/transaction_manager_test_state: remove duplicate setup
Samuel Just [Thu, 22 Apr 2021 23:53:56 +0000 (16:53 -0700)]
test/crimson/seastore/transaction_manager_test_state: remove duplicate setup

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agotest/crimson/gtest_seastar: init config and perf counters for crimson tests
Samuel Just [Thu, 22 Apr 2021 22:11:28 +0000 (15:11 -0700)]
test/crimson/gtest_seastar: init config and perf counters for crimson tests

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/tools/store-nbd: don't use detailed space tracker
Samuel Just [Tue, 27 Apr 2021 21:56:00 +0000 (14:56 -0700)]
crimson/tools/store-nbd: don't use detailed space tracker

Intended for debugging rather than performance testing.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/journal: close open segment and reset soft state in close()
Samuel Just [Wed, 28 Apr 2021 07:22:16 +0000 (00:22 -0700)]
crimson/os/seastore/journal: close open segment and reset soft state in close()

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/journal: use SegmentManager methods for block size, etc
Samuel Just [Wed, 28 Apr 2021 07:21:19 +0000 (00:21 -0700)]
crimson/os/journal: use SegmentManager methods for block size, etc

Otherwise, initing those values needs to be done after the SegmentManager
instance is mounted.  This is simpler for now.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore: only create handle in create_new_collection
Samuel Just [Wed, 28 Apr 2021 07:25:02 +0000 (00:25 -0700)]
crimson/os/seastore: only create handle in create_new_collection

FuturizedStore::create_new_collection isn't supposed to actually
create the collection.  See OSD::mkfs for a usage example.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore: clean up meta implementation
Samuel Just [Wed, 28 Apr 2021 07:24:00 +0000 (00:24 -0700)]
crimson/os/seastore: clean up meta implementation

There's really no reason to cache the decoded representation here since
the meta keys are only accessed during startup, mkfs.  This approach is
much simpler.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/.../transaction_manager: skip zero mappings in mount
Samuel Just [Wed, 28 Apr 2021 08:43:02 +0000 (01:43 -0700)]
crimson/.../transaction_manager: skip zero mappings in mount

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore: fix read() to use onode.size for len=0
Samuel Just [Wed, 28 Apr 2021 08:42:35 +0000 (01:42 -0700)]
crimson/os/seastore: fix read() to use onode.size for len=0

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore: fix do_transaction -- transactions may be empty
Samuel Just [Fri, 30 Apr 2021 21:12:27 +0000 (14:12 -0700)]
crimson/os/seastore: fix do_transaction -- transactions may be empty

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore: wire up get_fsid
Samuel Just [Fri, 30 Apr 2021 21:11:43 +0000 (14:11 -0700)]
crimson/os/seastore: wire up get_fsid

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore: wire up stat
Samuel Just [Fri, 30 Apr 2021 21:10:57 +0000 (14:10 -0700)]
crimson/os/seastore: wire up stat

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore/seastore.cc: update to use new debug macros
Samuel Just [Fri, 30 Apr 2021 07:31:45 +0000 (07:31 +0000)]
crimson/os/seastore/seastore.cc: update to use new debug macros

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agocrimson/os/seastore: convert cache and transaction_manager to use new debugging macros
Samuel Just [Thu, 29 Apr 2021 22:15:40 +0000 (15:15 -0700)]
crimson/os/seastore: convert cache and transaction_manager to use new debugging macros

The goal here is to capture the transaction address and to standardize the
prefix format.

Signed-off-by: Samuel Just <sjust@redhat.com>
4 years agowin32*.sh: ensure that the build dir exists
Lucian Petrut [Fri, 7 May 2021 07:18:39 +0000 (07:18 +0000)]
win32*.sh: ensure that the build dir exists

The Windows build scripts try to use the build dir before
actually creating it.

We'll have to move up the "mkdir" command a few lines.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
4 years agoMerge pull request #41214 from tchaikov/wip-crimson-clang-cleanups
Kefu Chai [Fri, 7 May 2021 06:59:41 +0000 (14:59 +0800)]
Merge pull request #41214 from tchaikov/wip-crimson-clang-cleanups

crimson: clang related cleanups

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
4 years agocrimson/common/config_proxy: add a helper for get_val<>() 41214/head
Kefu Chai [Fri, 7 May 2021 05:14:33 +0000 (13:14 +0800)]
crimson/common/config_proxy: add a helper for get_val<>()

otherwise we have to put something like

local_conf().template get_val<T>(name)

which is not quite convenient or readable.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/os/seastore: do not redefine default argument
Kefu Chai [Fri, 7 May 2021 05:03:24 +0000 (13:03 +0800)]
crimson/os/seastore: do not redefine default argument

we should not redefine a default argument of a method of templated class.

this change also address following error from clang:

../src/crimson/os/seastore/onode_manager/staged-fltree/node.cc:621:30: error: template parameter redefines default argument
template <bool FORCE_MERGE = false>
                             ^
../src/crimson/os/seastore/onode_manager/staged-fltree/node.h:438:32: note: previous default template argument defined here
  template <bool FORCE_MERGE = false>
                               ^

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/os/seastore: do not capture non-variables
Kefu Chai [Fri, 7 May 2021 04:59:36 +0000 (12:59 +0800)]
crimson/os/seastore: do not capture non-variables

merge_stage and merge_size are structured bindings, they are not
variables. so cannot be captured without defining variables in
capture list.

Signed-off-by: Kefu Chai <kchai@redhat.com>
4 years agocrimson/os/seastore: do not capture unused variable
Kefu Chai [Fri, 7 May 2021 04:59:14 +0000 (12:59 +0800)]
crimson/os/seastore: do not capture unused variable

Signed-off-by: Kefu Chai <kchai@redhat.com>