]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
6 years agocrimson: fix state machine operations in advance_pg_to and pg creation 28395/head
Samuel Just [Sat, 22 Jun 2019 00:46:01 +0000 (17:46 -0700)]
crimson: fix state machine operations in advance_pg_to and pg creation

Both pg creation and advance_pg_to process statemachine events and
therefore need to be under the pg process pipeline stage.

Signed-off-by: Samuel Just <sjust@redhat.com>
6 years agocrimson/osd/: restructure client and peering operation handling
Samuel Just [Tue, 11 Jun 2019 00:31:20 +0000 (17:31 -0700)]
crimson/osd/: restructure client and peering operation handling

This patch:
* Breaks pg map handling out into a separate module (pg_map.*)
* Breaks osdmap waiting into a separate module
  - Ops actually need to wait twice (potentially): once at
    the osd and a second time at the pg.  The same structure
    is used for both.
* Op ordering is enforced via OrderedExclusivePipelineStages
  defined in osd_operations.h.
  - Peering and client ops each define a pipeline section
    centered on the connection as well as one centered on the
    pg.

Signed-off-by: Samuel Just <sjust@redhat.com>
6 years agocrimson/osd: add osd_operation
Samuel Just [Tue, 11 Jun 2019 00:29:55 +0000 (17:29 -0700)]
crimson/osd: add osd_operation

Adds basic machinery for registering in progress operations along
with blocking conditions.

Signed-off-by: Samuel Just <sjust@redhat.com>
6 years agocrimson/osd: move OSD and PG into ceph::osd
Samuel Just [Tue, 11 Jun 2019 00:28:10 +0000 (17:28 -0700)]
crimson/osd: move OSD and PG into ceph::osd

Signed-off-by: Samuel Just <sjust@redhat.com>
6 years agocrimson/osd: advance_pg_to current epoch in handle_pg_create_info
Samuel Just [Tue, 11 Jun 2019 00:26:38 +0000 (17:26 -0700)]
crimson/osd: advance_pg_to current epoch in handle_pg_create_info

Signed-off-by: Samuel Just <sjust@redhat.com>
6 years agocrimson/net/Connection: add priv member for osd to use
Samuel Just [Tue, 11 Jun 2019 00:25:45 +0000 (17:25 -0700)]
crimson/net/Connection: add priv member for osd to use

Signed-off-by: Samuel Just <sjust@redhat.com>
6 years agocrimson/common: add type_helpers with a single Ref definition
Samuel Just [Tue, 11 Jun 2019 00:22:26 +0000 (17:22 -0700)]
crimson/common: add type_helpers with a single Ref definition

Signed-off-by: Samuel Just <sjust@redhat.com>
6 years agoosd/PGPeeringEvent: const as appropriate
Samuel Just [Sat, 1 Jun 2019 02:40:28 +0000 (19:40 -0700)]
osd/PGPeeringEvent: const as appropriate

Signed-off-by: Samuel Just <sjust@redhat.com>
6 years agoosd/PeeringState: make PeeringCtx inherit from BufferedRecoveryMessages
Samuel Just [Wed, 22 May 2019 09:57:03 +0000 (02:57 -0700)]
osd/PeeringState: make PeeringCtx inherit from BufferedRecoveryMessages

This'll be convenient in crimson for compound messages, don't want
to share an actual PeeringCtx, but want to combine the messages
to send.  Using inheritance here simply prevents another round of
changing all of the PeeringCtx member users.

Signed-off-by: Samuel Just <sjust@redhat.com>
6 years agoMerge pull request #28479 from yuriw/wip-yuriw-crontab-master
Yuri Weinstein [Mon, 10 Jun 2019 21:26:12 +0000 (14:26 -0700)]
Merge pull request #28479 from yuriw/wip-yuriw-crontab-master

qa.tests: added "smoke" suite to the schedule on "mimic","nautilus"

6 years agoqa.tests: added "smoke" suite to the schedule on "mimic","nautilus" 28479/head
Yuri Weinstein [Mon, 10 Jun 2019 19:40:30 +0000 (12:40 -0700)]
qa.tests: added "smoke" suite to the schedule on "mimic","nautilus"

Note: frequency can/will reduce later

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agoMerge pull request #28451 from linuxbox2/wip-rgwfile-dirinv
Matt Benjamin [Mon, 10 Jun 2019 17:41:37 +0000 (13:41 -0400)]
Merge pull request #28451 from linuxbox2/wip-rgwfile-dirinv

rgw_file: all directories are virtual with respect to contents

6 years agoMerge pull request #28434 from dillaman/wip-40110
Mykola Golub [Mon, 10 Jun 2019 17:09:32 +0000 (20:09 +0300)]
Merge pull request #28434 from dillaman/wip-40110

rbd-mirror: link against the specified alloc library

Reviewed-by: Mykola Golub <mgolub@suse.com>
6 years agoMerge pull request #28414 from smithfarm/wip-40175
Kefu Chai [Mon, 10 Jun 2019 16:11:14 +0000 (00:11 +0800)]
Merge pull request #28414 from smithfarm/wip-40175

build/ops: make "patch" build dependency explicit

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28388 from dillaman/wip-msg-async-1
Kefu Chai [Mon, 10 Jun 2019 13:05:15 +0000 (21:05 +0800)]
Merge pull request #28388 from dillaman/wip-msg-async-1

msg/async: avoid unnecessary costly wakeups for outbound messages

Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agobuild/ops: make "patch" build dependency explicit 28414/head
Nathan Cutler [Wed, 5 Jun 2019 15:30:30 +0000 (17:30 +0200)]
build/ops: make "patch" build dependency explicit

This commit adds "patch" as an explicit build dependency. Before, the RPM
build was installing it in the build environment via some mechanism that I
don't entirely understand.

The "patch" command is used by the BuildBoost cmake module.

Fixes: http://tracker.ceph.com/issues/40175
Signed-off-by: Nathan Cutler <ncutler@suse.com>
6 years agoMerge pull request #23312 from sylvia0409/master
Kefu Chai [Sun, 9 Jun 2019 13:26:38 +0000 (21:26 +0800)]
Merge pull request #23312 from sylvia0409/master

doc: Fixes OSD node labels which based on the osd_devices name

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28461 from tchaikov/wip-cmake-pg-meta-set
Kefu Chai [Sun, 9 Jun 2019 11:46:41 +0000 (19:46 +0800)]
Merge pull request #28461 from tchaikov/wip-cmake-pg-meta-set

crimson/osd/pg_meta: use initializer list for passing set<>

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
6 years agocrimson/osd/pg_meta: use initializer list for passing set<> 28461/head
Kefu Chai [Sun, 9 Jun 2019 10:10:02 +0000 (18:10 +0800)]
crimson/osd/pg_meta: use initializer list for passing set<>

we cannot assume that the data in string views are always nul
terminated.

this change partially reverts 82fedbd0089073cfe86640eaa7d73ed1e2545c31.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28397 from tchaikov/wip-38403
Kefu Chai [Sun, 9 Jun 2019 07:32:22 +0000 (15:32 +0800)]
Merge pull request #28397 from tchaikov/wip-38403

osdc/Objecter: use unique_ptr<OSDMap> for Objecter::osdmap

Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge pull request #28403 from xiexingguo/wip-unify-is-noup
Kefu Chai [Sat, 8 Jun 2019 15:36:34 +0000 (23:36 +0800)]
Merge pull request #28403 from xiexingguo/wip-unify-is-noup

osd: unify sources of no{up,down,in,out} flags into singleton helpers

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agoosdc/Objecter: move Objecter::Objecter() into .cc 28397/head
Kefu Chai [Wed, 5 Jun 2019 02:54:21 +0000 (10:54 +0800)]
osdc/Objecter: move Objecter::Objecter() into .cc

to speed up compilation.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoosdc/Objecter: use unique_ptr<OSDMap> for Objecter::osdmap
Kefu Chai [Wed, 5 Jun 2019 02:43:05 +0000 (10:43 +0800)]
osdc/Objecter: use unique_ptr<OSDMap> for Objecter::osdmap

Fixes: http://tracker.ceph.com/issues/38403
Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28379 from jtlayton/wip-jlayton-40114
Kefu Chai [Sat, 8 Jun 2019 15:31:58 +0000 (23:31 +0800)]
Merge pull request #28379 from jtlayton/wip-jlayton-40114

msg: fix addr2 encoding for sockaddrs

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28368 from kamoltat/wip-progress-module-pg-osdmap-comparison
Kefu Chai [Sat, 8 Jun 2019 15:28:35 +0000 (23:28 +0800)]
Merge pull request #28368 from kamoltat/wip-progress-module-pg-osdmap-comparison

mgr/progress: Look at PG state when PG epoch >= OSDMap epoch

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agoMerge pull request #28352 from smithfarm/wip-rpm-obsolete-python
Kefu Chai [Sat, 8 Jun 2019 15:27:39 +0000 (23:27 +0800)]
Merge pull request #28352 from smithfarm/wip-rpm-obsolete-python

rpm: have pybind RPMs provide/obsolete their python2 predecessors

Reviewed-by: Tim Serong <tserong@suse.com>
Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #27512 from jmolmo/tls_auth
Kefu Chai [Sat, 8 Jun 2019 15:24:53 +0000 (23:24 +0800)]
Merge pull request #27512 from jmolmo/tls_auth

mgr/ansible: TLS Mutual Authentication

Reviewed-by: Sebastian Wagner <swagner@suse.com>
6 years agoMerge PR #28171 into master
Patrick Donnelly [Sat, 8 Jun 2019 04:20:18 +0000 (21:20 -0700)]
Merge PR #28171 into master

* refs/pull/28171/head:
test_volume_client: simplify test_get_authorized_ids()

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge PR #28190 into master
Patrick Donnelly [Sat, 8 Jun 2019 04:18:48 +0000 (21:18 -0700)]
Merge PR #28190 into master

* refs/pull/28190/head:
mds: cleanup unneeded client_snap_caps when splitting snap inode

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge PR #28293 into master
Patrick Donnelly [Sat, 8 Jun 2019 04:16:14 +0000 (21:16 -0700)]
Merge PR #28293 into master

* refs/pull/28293/head:
mds: avoid passing null to SessionmMap::hit_session()
qa/cephfs: add test for blacklisted client eviction
mds: fix 'is session in blacklist' check in Server::apply_blacklist()

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge PR #28376 into master
Patrick Donnelly [Sat, 8 Jun 2019 04:14:40 +0000 (21:14 -0700)]
Merge PR #28376 into master

* refs/pull/28376/head:
mds: count purge queue items left in journal

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge PR #28406 into master
Patrick Donnelly [Sat, 8 Jun 2019 04:13:36 +0000 (21:13 -0700)]
Merge PR #28406 into master

* refs/pull/28406/head:
mds: reset heartbeat inside big loop

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge PR #28411 into master
Patrick Donnelly [Sat, 8 Jun 2019 04:12:38 +0000 (21:12 -0700)]
Merge PR #28411 into master

* refs/pull/28411/head:
qa/cephfs: fix test_evict_client

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge PR #28433 into master
Patrick Donnelly [Sat, 8 Jun 2019 04:10:52 +0000 (21:10 -0700)]
Merge PR #28433 into master

* refs/pull/28433/head:
cephfs-shell: Remove unnecessary empty line
cephfs-shell: Fix flake8 bare 'except' warnings
cephfs-shell: Remove unused variable 'e'
cephfs-shell: Fix flake8 use != to compare str literals warning
cephfs-shell: Fixe flake8 line too long error

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #28455 from yuriw/wip-yuriw-40208-master
Yuri Weinstein [Fri, 7 Jun 2019 23:27:40 +0000 (16:27 -0700)]
Merge pull request #28455 from yuriw/wip-yuriw-40208-master

qa/tests: removed `1node` and `systemd` tests as ceph-deploy is not actively developed

6 years agoqa/tests: removed `1node` and `systemd` tests as ceph-deploy is not actively developed 28455/head
Yuri Weinstein [Fri, 7 Jun 2019 21:34:35 +0000 (14:34 -0700)]
qa/tests: removed `1node` and `systemd` tests as ceph-deploy is not actively developed

Fixes: http://tracker.ceph.com/issues/40207
Fixes: http://tracker.ceph.com/issues/40208
Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agorgw_file: all directories are virtual with respect to contents 28451/head
Matt Benjamin [Fri, 7 Jun 2019 14:20:01 +0000 (10:20 -0400)]
rgw_file: all directories are virtual with respect to contents

This change causes directory handles to always report an mtime of
"now."  This is not an invalidate per se--it interacts with the
nfs implementation to produce that result when the implementation
updates its cached attributes.  Hence, it can be modulated by timers
or other rules governing attribute caching at the upper layer.

Fixes: http://tracker.ceph.com/issues/40204
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
6 years agoMerge pull request #28440 from linuxbox2/wip-rgwfile-invbckt
Matt Benjamin [Fri, 7 Jun 2019 18:25:48 +0000 (14:25 -0400)]
Merge pull request #28440 from linuxbox2/wip-rgwfile-invbckt

rgw_file: permit lookup_handle to lookup root_fh

6 years agoMerge pull request #28442 from neha-ojha/wip-40120-port
Neha Ojha [Fri, 7 Jun 2019 16:36:52 +0000 (09:36 -0700)]
Merge pull request #28442 from neha-ojha/wip-40120-port

qa/tasks/cbt.py: change port to work with client_endpoints

Reviewed-by: Mark Nelson <mnelson@redhat.com>
6 years agoMerge pull request #28435 from yuriw/wip-yuriw-smoke-master
Yuri Weinstein [Fri, 7 Jun 2019 16:13:49 +0000 (09:13 -0700)]
Merge pull request #28435 from yuriw/wip-yuriw-smoke-master

qa/tests: reduced distro to run to be random

6 years agoMerge pull request #28428 from tchaikov/wip-package-crimson-osd
Kefu Chai [Fri, 7 Jun 2019 16:03:22 +0000 (00:03 +0800)]
Merge pull request #28428 from tchaikov/wip-package-crimson-osd

rpm,debian,install-deps: package crimson-osd

Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Tim Serong <tserong@suse.com>
6 years agoceph.spec.in: align "Requires" of ceph-osd 28428/head
Kefu Chai [Fri, 7 Jun 2019 03:45:38 +0000 (11:45 +0800)]
ceph.spec.in: align "Requires" of ceph-osd

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoceph.spec.in: package crimson-osd
Kefu Chai [Thu, 6 Jun 2019 09:13:25 +0000 (17:13 +0800)]
ceph.spec.in: package crimson-osd

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agodebian/: add ceph-crimson-osd package
Kefu Chai [Thu, 6 Jun 2019 02:58:35 +0000 (10:58 +0800)]
debian/: add ceph-crimson-osd package

this package is commented out using `# Crimson`. and it will be enabled
only if we are building "crimson" flavor builds.

this package depends on ceph-osd, because it'll basically be a drop-in
replacement of ceph-osd. and it shares all the dependencies of ceph-osd.
so let's just reuse ceph-osd package for now.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocmake: install crimson-osd if WITH_SEASTAR
Kefu Chai [Thu, 6 Jun 2019 09:18:52 +0000 (17:18 +0800)]
cmake: install crimson-osd if WITH_SEASTAR

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoinstall-deps.sh: populate WITH_SEASTAR in the same way as for_make_check
Kefu Chai [Thu, 6 Jun 2019 03:10:41 +0000 (11:10 +0800)]
install-deps.sh: populate WITH_SEASTAR in the same way as for_make_check

because `install-deps.sh` is executed using `source`, we have to pass
these options using env variables. but before this change, `WITH_SEASTAR` is used directly,
while `FOR_MAKE_CHECK` is checked and translated to a local variable
`for_make_check`. which, in my opinion, has better readability.

so, in this change, `WITH_SEASTAR` is translated to `with_seastar`
variable in `install-deps.sh`.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoqa/tasks/cbt.py: change port to work with client_endpoints 28442/head
Neha Ojha [Fri, 7 Jun 2019 00:21:38 +0000 (17:21 -0700)]
qa/tasks/cbt.py: change port to work with client_endpoints

hack to work with https://github.com/ceph/cbt/pull/160/

Signed-off-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge pull request #28439 from yuriw/wip-yuriw-crontab-master
Yuri Weinstein [Thu, 6 Jun 2019 23:24:19 +0000 (16:24 -0700)]
Merge pull request #28439 from yuriw/wip-yuriw-crontab-master

qa/tests:  filtered in only "trusty"

6 years agoMerge PR #27731 into master
Patrick Donnelly [Thu, 6 Jun 2019 21:48:44 +0000 (14:48 -0700)]
Merge PR #27731 into master

* refs/pull/27731/head:
qa: use mimic-O upgrade process

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agoqa/tests: filtered in only "trusty" 28439/head
Yuri Weinstein [Thu, 6 Jun 2019 20:14:56 +0000 (13:14 -0700)]
qa/tests:  filtered in only "trusty"

Fixes: http://tracker.ceph.com/issues/40195
Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agorgw_file: permit lookup_handle to lookup root_fh 28440/head
Matt Benjamin [Thu, 6 Jun 2019 20:54:43 +0000 (16:54 -0400)]
rgw_file: permit lookup_handle to lookup root_fh

Originally, root_fh was reachable from RGWLibFS::fh_cache, but
this was problematic as it has infinite lifetime and so is not
present in RGWLibFS::fs_lru.

To fix the above, RGWLibFS::root_fh came to live unhooked from the
handle caches which works because nfs-ganesha/the application
always has an instance handle.  However, this silently breaks
READDIR event invalidation.

Fixes: https://tracker.ceph.com/issues/40196
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
6 years agoqa: use mimic-O upgrade process 27731/head
Patrick Donnelly [Tue, 23 Apr 2019 20:15:49 +0000 (13:15 -0700)]
qa: use mimic-O upgrade process

Fixes: https://tracker.ceph.com/issues/39436
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge PR #27015 into master
Sage Weil [Thu, 6 Jun 2019 17:15:50 +0000 (12:15 -0500)]
Merge PR #27015 into master

* refs/pull/27015/head:
OSD: rollforward may need to mark pglog dirty

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
6 years agoMerge PR #28242 into master
Sage Weil [Thu, 6 Jun 2019 17:15:06 +0000 (12:15 -0500)]
Merge PR #28242 into master

* refs/pull/28242/head:
osdc/Objecter: fix OSDMap leak in handle_osd_map

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
6 years agoMerge PR #28363 into master
Sage Weil [Thu, 6 Jun 2019 17:14:49 +0000 (12:14 -0500)]
Merge PR #28363 into master

* refs/pull/28363/head:
osd/ClassHandler: use std::variant for storing func
osd/ClassHandler: no need to add `struct` before struct type
osd/ClassHandler: use ceph::mutex instead of Mutex
osd/ClassHandler: remove unused function
osd/ClassHandler: s/string/std::string/ in header

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
6 years agoqa/tests: reduced distro to run to be random 28435/head
Yuri Weinstein [Thu, 6 Jun 2019 16:46:03 +0000 (09:46 -0700)]
qa/tests: reduced distro to run to be random

Signed-off-by: Yuri Weinstein <yweinste@redhat.com>
6 years agorbd-mirror: link against the specified alloc library 28434/head
Jason Dillaman [Thu, 6 Jun 2019 16:17:11 +0000 (12:17 -0400)]
rbd-mirror: link against the specified alloc library

As a daemon, use the build-time specified alloc library
(tcmalloc/jemalloc) when linking the application.

Fixes: http://tracker.ceph.com/issues/40110
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
6 years agocephfs-shell: Remove unnecessary empty line 28433/head
Varsha Rao [Thu, 6 Jun 2019 15:47:19 +0000 (21:17 +0530)]
cephfs-shell: Remove unnecessary empty line

This patch fixes flake8 too many blank lines error.

Fixes: https://tracker.ceph.com/issues/40191
Signed-off-by: Varsha Rao <varao@redhat.com>
6 years agocephfs-shell: Fix flake8 bare 'except' warnings
Varsha Rao [Thu, 6 Jun 2019 15:44:02 +0000 (21:14 +0530)]
cephfs-shell: Fix flake8 bare 'except' warnings

Instead of bare 'except', catch OSError and libcephfs exceptions.

Fixes: https://tracker.ceph.com/issues/40191
Signed-off-by: Varsha Rao <varao@redhat.com>
6 years agocephfs-shell: Remove unused variable 'e'
Varsha Rao [Thu, 6 Jun 2019 15:24:21 +0000 (20:54 +0530)]
cephfs-shell: Remove unused variable 'e'

Fixes: https://tracker.ceph.com/issues/40191
Signed-off-by: Varsha Rao <varao@redhat.com>
6 years agocephfs-shell: Fix flake8 use != to compare str literals warning
Varsha Rao [Thu, 6 Jun 2019 15:21:31 +0000 (20:51 +0530)]
cephfs-shell: Fix flake8 use != to compare str literals warning

Fixes: https://tracker.ceph.com/issues/40191
Signed-off-by: Varsha Rao <varao@redhat.com>
6 years agocephfs-shell: Fixe flake8 line too long error
Varsha Rao [Thu, 6 Jun 2019 15:08:15 +0000 (20:38 +0530)]
cephfs-shell: Fixe flake8 line too long error

Break the line into multiple lines and add new variable wherever necessary, to
fix the line too long error.

Fixes: https://tracker.ceph.com/issues/40191
Signed-off-by: Varsha Rao <varao@redhat.com>
6 years agoMerge pull request #28313 from Songweibin/wip-fix-get-args
Jason Dillaman [Thu, 6 Jun 2019 15:19:35 +0000 (11:19 -0400)]
Merge pull request #28313 from Songweibin/wip-fix-get-args

rbd/action: fix error getting positional argument

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
6 years agoMerge pull request #28253 from Songweibin/wip-39973-rbd
Jason Dillaman [Thu, 6 Jun 2019 15:18:43 +0000 (11:18 -0400)]
Merge pull request #28253 from Songweibin/wip-39973-rbd

osd/OSDCap: rbd profile permits use of rbd_info

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
6 years agoMerge pull request #27902 from mikechristie/rbd-nbd-netlink-support
Jason Dillaman [Thu, 6 Jun 2019 14:36:48 +0000 (10:36 -0400)]
Merge pull request #27902 from mikechristie/rbd-nbd-netlink-support

rbd-nbd: add netlink map/unmap support

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
6 years agoMerge pull request #28370 from linuxbox2/wip-rgw-tntbucket
Matt Benjamin [Thu, 6 Jun 2019 12:58:29 +0000 (08:58 -0400)]
Merge pull request #28370 from linuxbox2/wip-rgw-tntbucket

rgw_file: include tenant when hashing bucket names

6 years agod/control,install-deps: use d/control for installing seastar deps
Kefu Chai [Thu, 6 Jun 2019 02:57:53 +0000 (10:57 +0800)]
d/control,install-deps: use d/control for installing seastar deps

prepare for building ceph-crimson-osd deb package

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agomgr/dashboard: show degraded/misplaced/unfound objects. (#28104)
Lenz Grimmer [Thu, 6 Jun 2019 09:46:36 +0000 (11:46 +0200)]
mgr/dashboard: show degraded/misplaced/unfound objects. (#28104)

mgr/dashboard: show degraded/misplaced/unfound objects.

Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
6 years agoMerge pull request #28039 from majianpeng/make-tcmalloc/jemalloc-work-well
Kefu Chai [Thu, 6 Jun 2019 09:38:58 +0000 (17:38 +0800)]
Merge pull request #28039 from majianpeng/make-tcmalloc/jemalloc-work-well

make perf_async_msgr link jemalloc/tcmalloc

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28373 from xiexingguo/wip-40104
Xie Xingguo [Thu, 6 Jun 2019 09:37:15 +0000 (17:37 +0800)]
Merge pull request #28373 from xiexingguo/wip-40104

mon, osd: parallel clean_pg_upmaps

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agomds: count purge queue items left in journal 28376/head
Zhi Zhang [Thu, 6 Jun 2019 03:32:34 +0000 (11:32 +0800)]
mds: count purge queue items left in journal

MDS purge queue didn't have a perf counter to record how many items
still left in journal. Even when MDS restarted, there was no any hint to
know how many inodes haven't been really deleted from disks.

Fixes: http://tracker.ceph.com/issues/40121
Signed-off-by: Zhi Zhang <zhangz.david@outlook.com>
6 years agotest/crimson: make perf_async_msgr link tcmalloc/jemalloc. 28039/head
Jianpeng Ma [Thu, 6 Jun 2019 03:13:13 +0000 (11:13 +0800)]
test/crimson: make perf_async_msgr link tcmalloc/jemalloc.

For 1M performance, perf_async_msgr w/ tcmalloc/jemalloc is better than
libc.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
6 years agocmake: add crimson-osd as a dependency of "tests" target
Kefu Chai [Thu, 6 Jun 2019 02:18:21 +0000 (10:18 +0800)]
cmake: add crimson-osd as a dependency of "tests" target

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agotest: add parallel clean_pg_upmaps test 28373/head
xie xingguo [Mon, 3 Jun 2019 08:43:25 +0000 (16:43 +0800)]
test: add parallel clean_pg_upmaps test

With parallel clean_pg_upmaps feature on, the total time cost
of the performance test which now can utilize up to 8 threads for
parallel upmap validating decreased from:

maybe_remove_pg_upmaps (~10000 pg_upmap_items) latency:104s

to:

clean_pg_upmaps (~10000 pg_upmap_items) latency:7s

Note that by default the mon uses only 4 worker threads for
CPU intensive background work, you could further increase
the "mon_cpu_threads" option value if you decided the
time-consuming of clean_pg_upmaps still matters.

Fixes: http://tracker.ceph.com/issues/40104
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
6 years agomon/OSDMonitor: do clean_pg_upmaps the parallel way if necessary
xie xingguo [Mon, 3 Jun 2019 08:10:22 +0000 (16:10 +0800)]
mon/OSDMonitor: do clean_pg_upmaps the parallel way if necessary

There could definitely be some certain cases we could reliably
skip this kind of checking, but there is no easy way to separate
those out.
However, this is clearly the general way to do the massive pg
upmap clean-up job more efficiently and hence should make sense
in all cases.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
6 years agoosd/OSDMap: split clean_pg_upmaps into smaller helpers
xie xingguo [Sat, 1 Jun 2019 11:46:25 +0000 (19:46 +0800)]
osd/OSDMap: split clean_pg_upmaps into smaller helpers

- it's good to read.
- the updating pending_inc part should be made independent
  since it is going to be racy while running in parallel.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
6 years agoMerge pull request #28402 from tchaikov/wip-crimson-cleanup
Kefu Chai [Thu, 6 Jun 2019 01:52:34 +0000 (09:52 +0800)]
Merge pull request #28402 from tchaikov/wip-crimson-cleanup

crimson/osd: some cleanups

Reviewed-by: Samuel Just <sjust@redhat.com>
6 years agoMerge pull request #28302 from dzafman/wip-40078
David Zafman [Wed, 5 Jun 2019 21:43:30 +0000 (14:43 -0700)]
Merge pull request #28302 from dzafman/wip-40078

test: Make sure that extra scheduled scrubs don't confuse test

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
6 years agorgw_file: pretty-print fh_key 28370/head
Matt Benjamin [Wed, 5 Jun 2019 14:40:08 +0000 (10:40 -0400)]
rgw_file: pretty-print fh_key

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
6 years agorgw_file: include tenant in hashes of object
Matt Benjamin [Wed, 5 Jun 2019 11:25:35 +0000 (07:25 -0400)]
rgw_file: include tenant in hashes of object

Because bucket names are taken as object names in the top
of an export.  Make hashing by tenant general to avoid disjoint
hashing of bucket.

Fixes: http://tracker.ceph.com/issues/40118
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
6 years agorgw_file: include tenant when hashing bucket names
Matt Benjamin [Wed, 15 May 2019 19:53:32 +0000 (15:53 -0400)]
rgw_file: include tenant when hashing bucket names

Prevent identical paths from distinct tenants from colliding in
RGW NFS handle cache.

Fixes: http://tracker.ceph.com/issues/40118
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
6 years agoMerge PR #28353 into master
Sage Weil [Wed, 5 Jun 2019 15:22:26 +0000 (10:22 -0500)]
Merge PR #28353 into master

* refs/pull/28353/head:
qa/suites/rados/multimon: skew clocks 2s (< paxos lease)
qa/suites/rados/multimon: create_rbd_pool: false
qa/suites/rados/multimon: no osds when skewing clock

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
6 years agoMerge PR #28365 into master
Sage Weil [Wed, 5 Jun 2019 15:21:19 +0000 (10:21 -0500)]
Merge PR #28365 into master

* refs/pull/28365/head:
global/global_context: always add '\0' after strncpy()

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoqa/cephfs: fix test_evict_client 28411/head
Yan, Zheng [Wed, 5 Jun 2019 14:04:22 +0000 (22:04 +0800)]
qa/cephfs: fix test_evict_client

explictly kill stale session, otherwise session count check is racy.

Fixes: https://tracker.ceph.com/issues/40173
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
6 years agomsg: fix addr2 encoding for sockaddrs 28379/head
Jeff Layton [Mon, 3 Jun 2019 14:55:37 +0000 (10:55 -0400)]
msg: fix addr2 encoding for sockaddrs

Currently, the sockaddr sa_family field is being sent across the wire
without any sort of endianness conversion.

Redefine the new-style entity_addr_t encoding to encode the sa_family
field as little-endian. This will allow LE machines in the field to
keep limping along, but note that BE machines may break until they are
all fixed.

To do this, use the code that was initially written for BSD/Apple
machines to encode the different fields separately.

Fixes: http://tracker.ceph.com/issues/40114
Signed-off-by: Jeff Layton <jlayton@redhat.com>
6 years agomds: avoid passing null to SessionmMap::hit_session() 28293/head
Yan, Zheng [Wed, 29 May 2019 12:59:17 +0000 (20:59 +0800)]
mds: avoid passing null to SessionmMap::hit_session()

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
6 years agoMerge pull request #28391 from cbodley/wip-39984
Casey Bodley [Wed, 5 Jun 2019 13:06:06 +0000 (09:06 -0400)]
Merge pull request #28391 from cbodley/wip-39984

cls/rgw: test before accessing pkeys->rbegin()

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
6 years agoqa/cephfs: add test for blacklisted client eviction
Yan, Zheng [Wed, 29 May 2019 11:58:46 +0000 (19:58 +0800)]
qa/cephfs: add test for blacklisted client eviction

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
6 years agomds: reset heartbeat inside big loop 28406/head
Yan, Zheng [Wed, 5 Jun 2019 10:05:15 +0000 (18:05 +0800)]
mds: reset heartbeat inside big loop

Fixes: https://tracker.ceph.com/issues/40171
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
6 years agoosd: unify sources of no{up,down,in,out} flags into singleton helpers 28403/head
xie xingguo [Thu, 30 May 2019 06:42:23 +0000 (14:42 +0800)]
osd: unify sources of no{up,down,in,out} flags into singleton helpers

Currently there are various ways to set no{up,down,in,out} flags,
by osd, by crush node, or by device class.

Use traditional is_no{up,down,in,out} helper to catch-all,
and add special wrappers for certain internal consumers.

This way osd won't ignore the noup flag set by the new crush node,
device class, or any future sources.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
6 years agocrimson/osd/osd.cc: add editor variables/options 28402/head
Kefu Chai [Wed, 5 Jun 2019 07:18:07 +0000 (15:18 +0800)]
crimson/osd/osd.cc: add editor variables/options

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/osd: s/ostream/std::ostream/
Kefu Chai [Wed, 5 Jun 2019 07:04:15 +0000 (15:04 +0800)]
crimson/osd: s/ostream/std::ostream/

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/osd: mark one of PG::do_peering_event()s private
Kefu Chai [Wed, 5 Jun 2019 07:00:28 +0000 (15:00 +0800)]
crimson/osd: mark one of PG::do_peering_event()s private

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #27995 from richael02/fix_indent
Kefu Chai [Wed, 5 Jun 2019 07:11:43 +0000 (15:11 +0800)]
Merge pull request #27995 from richael02/fix_indent

vstart.sh: unify the indent

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28358 from liu-chunmei/ceph_seastar_futurized_store
Kefu Chai [Wed, 5 Jun 2019 06:33:57 +0000 (14:33 +0800)]
Merge pull request #28358 from liu-chunmei/ceph_seastar_futurized_store

crimson: add FuturizedStore to encapsulate CyanStore

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #27735 from xiexingguo/wip-device-class-noout
Xie Xingguo [Wed, 5 Jun 2019 06:17:06 +0000 (14:17 +0800)]
Merge pull request #27735 from xiexingguo/wip-device-class-noout

osd: revamp {noup,nodown,noin,noout} related commands

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agorbd nbd: always try to load module on map 27902/head
Mike Christie [Tue, 14 May 2019 03:58:41 +0000 (22:58 -0500)]
rbd nbd: always try to load module on map

nl and ioctl both need the module loaded so just always load it during
mapping.

Signed-off-by: Mike Christie <mchristi@redhat.com>
6 years agorbd nbd: add support for netlink interface
Mike Christie [Tue, 14 May 2019 03:57:41 +0000 (22:57 -0500)]
rbd nbd: add support for netlink interface

This adds support for mapping and unmapping using the netlink
interface. If the user passes in --try-netlink during mapping then we
will try to use the netlink interface and if that is not supported use
the ioctl interface. For unmap we will always try netlink and if that is
not supported drop down to the ioctl.

Signed-off-by: Mike Christie <mchristi@redhat.com>
6 years agocmake and build: add netlink lib requirement detection
Mike Christie [Wed, 5 Jun 2019 04:42:40 +0000 (23:42 -0500)]
cmake and build: add netlink lib requirement detection

The next patch adds netlink support to rbd-nbd. This patch just adds the
build related changes to bring in the netlink lib and test and build
against it.

Signed-off-by: Mike Christie <mchristi@redhat.com>
6 years agocmake: Move WITH_RBD option earlier
Mike Christie [Tue, 4 Jun 2019 18:32:09 +0000 (13:32 -0500)]
cmake: Move WITH_RBD option earlier

The next patch will add a WITH_RBD check to the LINUX check block so we
only check for the netlink libs when those 2 conditions are met, so this
moves the WIT_RBD option setup to before the LINUX check.

Signed-off-by: Mike Christie <mchristi@redhat.com>