Commit Graph

122672 Commits

Author SHA1 Message Date
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 e80d3f7a89.

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 947b103eed

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
Sage Weil
f8e872ce2f Merge PR #40924 into master
* refs/pull/40924/head:
	mgr/cephadm: check hostname resolution before adding host
	cephadm: provide a way to checkhost connection without /etc/hosts passed the shell
	doc/cephadm: remove /etc/hosts from list of hostname resoltion methods

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Adam King <adking@redhat.com>
2021-04-28 14:27:07 -04:00
Josh Durgin
0e273e6760
Merge pull request #40593 from ideepika/wip-new-testing-params
qa/config/rados: add dispatch delay testing params

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Sam Just <sjust@redhat.com>
2021-04-28 11:26:58 -07:00
Sage Weil
75480f52e4 Merge PR #40941 into master
* refs/pull/40941/head:
	qa/suites/rados/cephadm/smoke-roleless: test client-keyring
	qa/tasks/cephadm.py: adjust client.admin key mode; place on all hosts
	cephadm: distribute client.admin keyring+conf to label:_admin on bootstrap
	doc/cephadm: document the default 'admin' label
	mgr/cephadm: 'ceph orch client-keyring ...' commands to manage keyring files
	mgr/cephadm: reimplement ceph.conf pushing
	mgr/cephadm: use _write_remote_file for ceph.conf
	mgr/cephadm: _write_remote_file helper
	mgr/cephadm: add placementspec for which hosts get ceph.conf

Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Adam King <adking@redhat.com>
2021-04-28 14:26:35 -04:00
Sage Weil
428d3df588 Merge PR #40943 into master
* refs/pull/40943/head:
	mgr/cephadm: skip ok-to-stop for mons in upgrade if < 3 mons
	mgr/cephadm: don't allow upgrade start with less than 2 mgrs

Reviewed-by: Michael Fritch <mfritch@suse.com>
2021-04-28 14:26:07 -04:00
Sage Weil
1b70eed088 Merge PR #41049 into master
* refs/pull/41049/head:
	cephadm: re-assimilate user provided conf after mgr created

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
2021-04-28 14:25:30 -04:00
Sage Weil
22f785e186 Merge PR #41055 into master
* refs/pull/41055/head:
	cephadm: allow several public networks be matched

Reviewed-by: Sebastian Wagner <swagner@suse.com>
2021-04-28 14:24:10 -04:00
Kefu Chai
e027864990
Merge pull request #41059 from tchaikov/wip-crimson-clang-cleanup
crimson: clean up issues spotted by the clang compiler

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2021-04-29 00:18:26 +08:00
Kefu Chai
c2b3f7f5e7 cmake: disable "variable tracking" when building rados python binding
to silence the warning like:

/home/jenkins-build/build/workspace/ceph-pull-requests/build/src/pybind/rados/rados.c: In function '__pyx_pymod_exec_rados':
/home/jenkins-build/build/workspace/ceph-pull-requests/build/src/pybind/rados/rados.c:78903:30: note: variable tracking size limit exceeded with '-fvar-tracking-assignments', retrying without
78903 | static CYTHON_SMALL_CODE int __pyx_pymod_exec_rados(PyObject *__pyx_pyinit_module)
      |                              ^~~~~~~~~~~~~~~~~~~~~~
cc: warning: /usr/bin/cc: linker input file unused because linking not done

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-04-29 00:11:33 +08:00
Kefu Chai
657fa4b700 cmake: do not pass ${PYTHON_VERSION} to distutils_add_cython_module()
the python2 support was dropped in
5fc657b40d, so no need to pass the python
version anymore.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-04-29 00:11:28 +08:00
Ilya Dryomov
9ff450340b doc/releases/nautilus: fix a braino in 14.2.20 release note
Setting auth_expose_insecure_global_id_reclaim to false disables the
"disconnect right after authentication" behavior, not the warning.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2021-04-28 18:02:53 +02:00