Commit Graph

122614 Commits

Author SHA1 Message Date
Kefu Chai
29a613bfe2
Merge pull request #40946 from ifed01/wip-ifed-dump-pool-statfs
osd: admin cmd to dump pools statfs for a specific OSD

Reviewed-by: Kefu Chai <kchai@redhat.com>
2021-04-30 19:43:18 +08:00
Kefu Chai
fee3028abc
Merge pull request #41014 from smithfarm/wip-mempool-cacheline-49781
qa: verify the benefits of mempool cacheline optimization

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2021-04-30 19:36:17 +08:00
Samuel Just
964acc6dd9
Merge pull request #40998 from cyx1231st/wip-seastore-onode-tree-delete
crimson/onode-staged-tree: implement/validate features to erase values from tree

Reviewed-by: Samuel Just <sjust@redhat.com>
2021-04-29 23:22:42 -07:00
Loïc Dachary
7fe0ac7c11 qa: verify the benefits of mempool cacheline optimization
There already is a test to verify the mempool sharding works, in the sense that
it uses at least half of the variables available to count the number of
allocated objects and their total size. This new test verifies that, with
sharding, object counting is at least twice faster than without sharding. It
also collects cacheline contention data with the perf c2c tool. The manual
analysis of this data shows the optimization gain is indeed related to cacheline
contention.

Fixes: https://tracker.ceph.com/issues/49896

Signed-off-by: Loïc Dachary <loic@dachary.org>
2021-04-30 12:11:13 +08:00
zdover23
462c121653
Merge pull request #40502 from zdover23/wip-doc-podman-version-octopus-note-2021-30-Mar
doc/cephadm: add podman version note to install

Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
2021-04-30 05:53:58 +10:00
Ernesto Puerta
381685f17f
Merge pull request #40072 from wornet-mwo/dashboard--grafana-hostname-corrections
mgr/dashboard: Fixed name clash when hostname similar to another

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: p-se <NOT@FOUND>
2021-04-29 19:40:57 +02:00
Kefu Chai
9e3aa76f4a
Merge pull request #41040 from tchaikov/wip-doc-mds-conf
doc/cephfs/mds-config-ref: render options using confval directive

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2021-04-30 00:33:41 +08:00
Mark Kogan
48ce5bb6c3
Merge pull request #41028 from mkogan1/wip-rgw-tracker-50467
rgw: fix segfault related to explicit object manifest handling
2021-04-29 18:48:54 +03:00
Ernesto Puerta
b0c0815e9d
Merge pull request #41083 from rhcs-dashboard/fix-50580-master
mgr/dashboard: OSDs placement text is unreadable

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
2021-04-29 17:42:38 +02:00
Kefu Chai
a64b623537
Merge pull request #41082 from tchaikov/wip-50558
os/bluestore: Revert" Optimizing the lock of bluestore writing process"

Reviewed-by: Mark Nelson <mnelson@redhat.com>
Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
2021-04-29 22:59:02 +08:00
Kefu Chai
4fa8b4aa53
Merge pull request #41064 from petrutlucian94/win_at_removedir
include: define AT_REMOVEDIR on Windows

Reviewed-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2021-04-29 22:58:16 +08:00
Kefu Chai
59624b0fd9
Merge pull request #41038 from tchaikov/wip-cmake-liburing
cmake: pass "CC" using configure when building liburing

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
2021-04-29 22:20:09 +08:00
Aashish Sharma
543b02436f mgr/dashboard:OSDs placement text is unreadable
While displaying the host pattern in the OSDs placement tab, it gets splited with semi-colons. Also adjusted the column size of Container Image ID and Placement columns.

Fixes: https://tracker.ceph.com/issues/50580
Signed-off-by: Aashish Sharma <aasharma@redhat.com>
2021-04-29 19:26:17 +05:30
Kefu Chai
2627f3204e os/bluestore: Revert" Optimizing the lock of bluestore writing process"
This reverts commit e80d3f7a891af99ba0d4cfe99e5530016ca867ac.

Fixes: https://tracker.ceph.com/issues/50571
Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-04-29 20:03:33 +08:00
Yingxin Cheng
cf9f1c80e6 crimson/onode-staged-tree: implement erase for perf-staged-tree
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:38 +08:00
Yingxin Cheng
80868b8359 crimson/onode-staged-tree: implement synthetic tests for value erase
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:38 +08:00
Yingxin Cheng
c6427de4db crimson/onode-staged-tree: fix ownership issues at node-level
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:38 +08:00
Yingxin Cheng
47b67ec417 crimson/onode-staged-tree: allow to insert item to an empty node
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:38 +08:00
Yingxin Cheng
04fbaa036a crimson/onode-staged-tree: move try_downgrade_root() into fix_index()
Specifically, apply_children_merge() doesn't know whether it will be
retired due to fix_parent_index().

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
e0a9bfbcfa crimson/onode-staged-tree: don't validate child when it's outdated
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
9f821d0ee2 crimson/onode-staged-tree: pass origin_left_addr to apply_children_merge()
rebuild_extent() may change the address of the left child, we need to
pass the origin_left_addr in order to validate if it is correct.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Samuel Just
86ad429d8d crimson/.../node_extent_manager: replay extents may be dirty
Signed-off-by: Samuel Just <sjust@redhat.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
fbf4d71d20 crimson/onode-staged-tree: cleanup tree_utils.h
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
d0998d3a75 crimson/onode-staged-tree: test fix_index() in internal node
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
6ece760c38 crimson/onode-staged-tree: test merge in internal node
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
6291154e4c crimson/onode-staged-tree: implement staged::get_prev_slot()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
8e0903378a crimson/onode-staged-tree: test merge in leaf node
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
7f73bbfe7d crimson/onode-staged-tree: implement layout-level merge
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
767306bf20 crimson/onode-staged-tree: test erase in leaf node
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
01873f48d0 crimson/onode-staged-tree: implement staged::erase()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
5818e786c4 crimson/onode-staged-tree: fix container_t::update_size() to accept negative value
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
c4b5e7fecd crimson/onode-staged-tree: implement staged::is_keys_one()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
eb4c03f4ef crimson/onode-staged-tree: implement node-level erase/merge logic
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
36b4610a2c crimson/onode-staged-tree: implement delta encode/decode for erase ops
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
ee29963503 crimson/onode-staged-tree: improve logs
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
630babc1b2 crimson/onode-staged-tree: implement fast Node::get_name()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
2cebba5646 crimson/onode-staged-tree: fix get_pivot_index() for leaf node
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
0150067491 crimson/onode-staged-tree: be explicit about node num-key/value invariants
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
71836adff5 crimson/onode-staged-tree: cleanup node interfaces
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
5e8ed3e880 crimson/onode-staged-tree: implement states for NodeExtentAccessorT
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
5d41bda16e crimson/onode-staged-tree: implement NodeExtentManager::retire_extent()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
776390d249 crimson/onode-staged-tree: fix log
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
f286afb8ee crimson/onode-staged-tree: remove implemented TODO
Already implemented in c32c1032de

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
c9360d414f crimson/onode-staged-tree: implement tree-level erase interfaces
Define and implement erase related interfaces from BTree, BTree::Cursor,
tree_cursor_t, Node to LeafNode.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
827fcde029 crimson/onode-staged-tree: add invalid state to tree_cursor_t
If a key-value pair is erased from the tree, the according tree_cursor_t
is untracked and becomes invalid.

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

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

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
72a0b6e9de crimson/onode-staged-tree: cleanup replace_track/track_split()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Yingxin Cheng
609eba2562 crimson/onode-staged-tree: disable concurrent gc
Fix test/perf hang according to 947b103eed0720bc6276274b1b707b221b895a62

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-04-29 16:03:37 +08:00
Ilya Dryomov
defea709f4
Merge pull request #40493 from CongMinYin/fix-rwl-fragment
librbd/cache/pwl: Fix pmem cache fragment issue

Reviewed-by: Mykola Golub <mgolub@suse.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2021-04-29 09:35:21 +02:00
Yin Congmin
b53392a153 librbd/cache/pwl: Fix pmem cache fragment issue
I/O may hang due to pmem cache fragment issue when blocks are diffrent
in size. Call pmdk API(pmemobj_defrag) to solve.

Fixes: https://tracker.ceph.com/issues/49879

Signed-off-by: Yin Congmin <congmin.yin@intel.com>
2021-04-29 22:12:31 +08:00
Sage Weil
e216c1ee11 Merge PR #41072 into master
* refs/pull/41072/head:
	doc/releases/nautilus: fix a braino in 14.2.20 release note

Reviewed-by: Sage Weil <sage@redhat.com>
2021-04-28 18:42:49 -04:00