]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
5 years agomsg/async/rdma: use different strategy to reset read/write chunk
Changcheng Liu [Mon, 1 Jul 2019 02:27:45 +0000 (10:27 +0800)]
msg/async/rdma: use different strategy to reset read/write chunk

When releasing read chunk to pool, the chunk::offset & chunk::bound
should be reset to zero. For write chunk, it's better to reset
chunk::offset to zero and chunk::bound to chunk length which means that
[offset, bound) is writable.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: cosmetics initialize ibv_send_wr* var
Changcheng Liu [Thu, 27 Jun 2019 05:19:58 +0000 (13:19 +0800)]
msg/async/rdma: cosmetics initialize ibv_send_wr* var

API usage:
int ibv_post_send(struct ibv_qp *qp, struct ibv_send_wr *wr, struct ibv_send_wr **bad_wr)
Input Parameters:
   qp struct ibv_qp from ibv_create_qp
   wr first work request (WR)
Output Parameters:
   bad_wr pointer to first rejected WR
Return Value:
   0 on success, -1 on error.
   If the call fails, errno will be set to indicate the reason for the failure.
To avoid wrong checking return value, it's better to initialize the
value to be nullptr.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: cosmetics RDMAWorker listen & connect & get_reged_mem
Changcheng Liu [Fri, 21 Jun 2019 02:57:08 +0000 (10:57 +0800)]
msg/async/rdma: cosmetics RDMAWorker listen & connect & get_reged_mem

1. There's no need to get stack & dispatcher from RDMAStack again
since RDMAWorker has stored the value.
2. cache the Infiniband object to be used in local scope.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: cosmetics RDMAConnectedSocketImpl::read_buffers
Changcheng Liu [Thu, 13 Jun 2019 11:20:28 +0000 (19:20 +0800)]
msg/async/rdma: cosmetics RDMAConnectedSocketImpl::read_buffers

After refactoring, there's no need to do below judgement
    -  if (c != buffers.end() && (*c)->over())
    -    ++c;

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: cosmetics post_chunks_to_rq implementation
Changcheng Liu [Wed, 5 Jun 2019 02:33:20 +0000 (10:33 +0800)]
msg/async/rdma: cosmetics post_chunks_to_rq implementation

1. It's not proper to allocate large space in stack. e.g. rx_queue_len is 4096.
The patch changes to allocate rx_work_request and isge in heap.

2. Set rx_work_request and isge array whole space into zero which could avoid
setting the space into zero one by one in the while loop.

3. Change parameter name "num" to be "rq_wr_num" to improve readiness
rq_wr_num i.e. receive-queue_work-request_number

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: refine Chunk construction function
Changcheng Liu [Thu, 27 Jun 2019 03:03:44 +0000 (11:03 +0800)]
msg/async/rdma: refine Chunk construction function

1. all values are initialized in construction function
   In this way, it's easy to construct Chunk object in
   PoolAllocator::malloc function.
2. For read chunk, member bound is initialized to be 0.
3. For send chunk, member bound is initialzied to be full space size.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: avoid long lambda function for readability
Changcheng Liu [Wed, 26 Jun 2019 06:31:29 +0000 (14:31 +0800)]
msg/async/rdma: avoid long lambda function for readability

Extract the long lambda function to improve readability.
There's no advantage since "this" pointer is also needed
in original lambad function.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: define handle_rx_event to handle recv-comple-queue
Changcheng Liu [Thu, 20 Jun 2019 08:16:29 +0000 (16:16 +0800)]
msg/async/rdma: define handle_rx_event to handle recv-comple-queue

1. define handle_rx_event to let dispatch handle
recvive-completion-queue
2. simplify RDMADispatcher::polling implementation

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: deal with all RDMA device async event
Changcheng Liu [Thu, 20 Jun 2019 03:20:27 +0000 (11:20 +0800)]
msg/async/rdma: deal with all RDMA device async event

1. List all asynchronous event of the RDMA device
2. Output the fatal error events to check RDMA device status

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/Event: simplify EventCenter::process_events implementation
Changcheng Liu [Wed, 31 Jul 2019 08:54:26 +0000 (16:54 +0800)]
msg/async/Event: simplify EventCenter::process_events implementation

The original implementation makes it's hard to understand:
1) Whether timer event should be executed.
2) How long should epoll wait for timeout.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/Event: simplfy logical implementation
Changcheng Liu [Thu, 11 Jul 2019 09:21:07 +0000 (17:21 +0800)]
msg/async/Event: simplfy logical implementation

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: simplify RDMAConnectedSocketImpl::read implementation
Changcheng Liu [Mon, 1 Jul 2019 06:09:51 +0000 (14:09 +0800)]
msg/async/rdma: simplify RDMAConnectedSocketImpl::read implementation

After reading one chunk, the chunk could be pushed into buffer list if its
effecitve content size is not zero. In this case, it also means that the
caller has got the required read length. Then all the continuous chunk will
be pushed into buffer list since the effective content size is not zero.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: simplify Cluster::get_buffers implementation
Changcheng Liu [Thu, 20 Jun 2019 06:29:52 +0000 (14:29 +0800)]
msg/async/rdma: simplify Cluster::get_buffers implementation

Keep same logic:
1. If parameter block_size is zero, then allocate all the free chunks
to parameter std::vector<Chunk*> &chunks. i.e.
   chunk_buffer_number = free_chunks.size()
2. If paramter block_size is not zero, then allocate the requested or
all the free chunks to paramter std::vector<Chunk*> &chunks.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: simplify chunk::write implementation
Changcheng Liu [Wed, 26 Jun 2019 06:46:03 +0000 (14:46 +0800)]
msg/async/rdma: simplify chunk::write implementation

Keep same logic to improve readability

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: simplify chunk::read implementation
Changcheng Liu [Mon, 1 Jul 2019 05:18:44 +0000 (13:18 +0800)]
msg/async/rdma: simplify chunk::read implementation

1. offload chunk::read without managing bound.
2. reset chunk::offset & chunk::bound before releasing to pool.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: use Chunk::get_size to get chunk size
Changcheng Liu [Thu, 13 Jun 2019 11:04:40 +0000 (19:04 +0800)]
msg/async/rdma: use Chunk::get_size to get chunk size

remove Chunk::over interface and add Chunk::get_size interface
1) It's not clear when reading "over" function name.
2) Some places need know the current chunk block effective content size.
3) "Chunk::over()" could be replaced by "Chunk::get_size() == 0"

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: seperate Device construction if rdma_cm is used
Changcheng Liu [Thu, 13 Jun 2019 10:34:44 +0000 (18:34 +0800)]
msg/async/rdma: seperate Device construction if rdma_cm is used

If ms_async_rdma_cm is false, there's no need to call the api
rdma_get_device. If rdma_get_device is called, the devices remain
opened while librdmacm is loaded. This is not what we want when
ms_async_rdma_cm is false.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: operate event fd with event_{read,write}
Changcheng Liu [Mon, 10 Jun 2019 04:56:15 +0000 (12:56 +0800)]
msg/async/rdma: operate event fd with event_{read,write}

1. use wrapper function event_read & event_write to access
event file descriptor.
2. change event fd access value name to be event_val.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: fix error argument to get right qp state
Changcheng Liu [Fri, 28 Jun 2019 06:26:41 +0000 (14:26 +0800)]
msg/async/rdma: fix error argument to get right qp state

1. It's wrong to use "-1" as argument to query queue state.
In rdma library, ibv_query_qp will call ibv_cmd_query_qp to query
queue state. If "-1" is used as attr_mask, ibv_cmd_query_qp will
return error EOPNOTSUPP which means query failed.

2. In class QueuePair, is_error() could use member function get_state()
to get the queue pair state.

3. It's better to use qp_state as queue pair state according to
ibv_query_qp manual guide.
   struct ibv_qp_attr {
      enum ibv_qp_state       qp_state;            /* Current QP state */
      enum ibv_qp_state       cur_qp_state;        /* Current QP state - irrelevant for ibv_query_qp */
      ...

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: export RDMAV_HUGEPAGES_SAFE before ibv_fork_init
Changcheng Liu [Mon, 3 Jun 2019 05:31:09 +0000 (13:31 +0800)]
msg/async/rdma: export RDMAV_HUGEPAGES_SAFE before ibv_fork_init

In rdma-core library, ibv_fork_init will check environment variable
RDMAV_HUGEPAGES_SAFE to decide whether huge page is usable in system.
It doesn't make sense to export RDMAV_HUGEPAGES_SAFE env after
calling ibv_fork_init.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: use ibv_port_attr object type in Port class
Changcheng Liu [Mon, 3 Jun 2019 05:00:22 +0000 (13:00 +0800)]
msg/async/rdma: use ibv_port_attr object type in Port class

1. Avoid to do memory management without using pointer to operate
operate the allocated space. Or, it could have memory leak.
2. Since member type has been changed in class Device, it need
to use member domain operator "." to access to the sub-member in
object.
3. There's no need to consider experimental API of ibv_query_port.
So, merge ibv_query_port in the prolog.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: cosmetics by set member value in initialize list
Changcheng Liu [Fri, 21 Jun 2019 09:06:57 +0000 (17:06 +0800)]
msg/async/rdma: cosmetics by set member value in initialize list

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: define package sequence numbers macro
Changcheng Liu [Wed, 5 Jun 2019 03:13:07 +0000 (11:13 +0800)]
msg/async/rdma: define package sequence numbers macro

Refer to Doc: InfiniBandTM Architecture Specification Volume 1 Ver1.2.1
Section: 9.2 BASE TRANSPORT HEADER

bits  |31---------24 | 23-----------16 | 15----------8 | 7---------0 |
bytes |______________________________________________________________|
0 - 3 |____OpCode____|__|SE|M|Pad|Tver_|_________ Partition Key______|
4 - 7 |___Reserved___|______________Destination QP___________________|
8 -11 |A|Reserved 7__|________ PSN - Packet Sequence Number _________|

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: limit buffer size under rdma max memory region size
Changcheng Liu [Thu, 13 Jun 2019 10:20:39 +0000 (18:20 +0800)]
msg/async/rdma: limit buffer size under rdma max memory region size

The allocated buf size should be under hardware's max_mr_size. Or it'll
trigger out-of-bound access problem when calling ibv_reg_mr.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: check device_attr->max_srq is not zero
Changcheng Liu [Mon, 3 Jun 2019 09:53:37 +0000 (17:53 +0800)]
msg/async/rdma: check device_attr->max_srq is not zero

Some rdma devices don't support srq(shared receive queue).
Check hardware attribute if ceph is configured to use srq.

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: check memory region size before tx buffer allocation
Changcheng Liu [Fri, 31 May 2019 10:32:04 +0000 (18:32 +0800)]
msg/async/rdma: check memory region size before tx buffer allocation

It'll trigger out-of-bound access problem in kernel if the required
memory region size is bigger than ibv_device_attr.max_mr_size

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agomsg/async/rdma: correct receive queue length info
Changcheng Liu [Tue, 21 May 2019 01:54:36 +0000 (09:54 +0800)]
msg/async/rdma: correct receive queue length info

It will hit below misleading log without this patch:
   Infiniband init requested receive queue length 4095 is too big. Setting 4095

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
5 years agoMerge PR #29806 into master
Sage Weil [Thu, 22 Aug 2019 19:07:49 +0000 (14:07 -0500)]
Merge PR #29806 into master

* refs/pull/29806/head:
mgr/BaseMgrModule: tolerate Int or Long for health 'count'

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge pull request #29298 from zhangsw/rgw-fix-bug-listobjv2-startafter
Ali Maredia [Thu, 22 Aug 2019 18:12:30 +0000 (14:12 -0400)]
Merge pull request #29298 from zhangsw/rgw-fix-bug-listobjv2-startafter

rgw: continuationToken or startAfter shouldn't be returned if not specified

5 years agoMerge PR #29780 into master
Sage Weil [Thu, 22 Aug 2019 17:52:16 +0000 (12:52 -0500)]
Merge PR #29780 into master

* refs/pull/29780/head:
osd/PeeringState: semi-colon after DECLARE_LOCALS
osd/PeeringState: on_new_interval on child PG after split

Reviewed-by: Samuel Just <sjust@redhat.com>
5 years agoMerge PR #29774 into master
Sage Weil [Thu, 22 Aug 2019 17:27:26 +0000 (12:27 -0500)]
Merge PR #29774 into master

* refs/pull/29774/head:
qa/standalone/scrub/osd-scrub-snaps: snapmapper omap is now 'm'

Reviewed-by: David Zafman <dzafman@redhat.com>
5 years agoMerge PR #29807 into master
Sage Weil [Thu, 22 Aug 2019 17:26:11 +0000 (12:26 -0500)]
Merge PR #29807 into master

* refs/pull/29807/head:
mgr/pg_autoscaler: fix race with pool deletion

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
5 years agoMerge pull request #17719 from mikulely/fix-usage-stats
Casey Bodley [Thu, 22 Aug 2019 15:04:38 +0000 (11:04 -0400)]
Merge pull request #17719 from mikulely/fix-usage-stats

rgw: distinguish different get_usage for usage log

Reviewed-by: Robin H. Johnson <rjohnson@digitalocean.com>
5 years agoMerge pull request #29544 from tchaikov/wip-doc-search-CSP
Kefu Chai [Thu, 22 Aug 2019 09:56:58 +0000 (17:56 +0800)]
Merge pull request #29544 from tchaikov/wip-doc-search-CSP

doc: always load resources via HTTPS

Reviewed-by: Tiago Melo <tmelo@suse.com>
5 years agodoc: always load resources via HTTPS 29544/head
Kefu Chai [Thu, 8 Aug 2019 10:40:47 +0000 (18:40 +0800)]
doc: always load resources via HTTPS

Signed-off-by: Tiago Melo <tmelo@suse.com>
5 years agoMerge pull request #29755 from xiexingguo/wip-inc-recovery-4
Xie Xingguo [Thu, 22 Aug 2019 05:48:15 +0000 (13:48 +0800)]
Merge pull request #29755 from xiexingguo/wip-inc-recovery-4

osd: do not invalidate clear_regions of missing item at boot

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
5 years agomgr/BaseMgrModule: tolerate Int or Long for health 'count' 29806/head
Sage Weil [Wed, 21 Aug 2019 19:41:08 +0000 (14:41 -0500)]
mgr/BaseMgrModule: tolerate Int or Long for health 'count'

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #29804 from alfredodeza/wip-rm41378
Andrew Schoen [Wed, 21 Aug 2019 21:59:18 +0000 (16:59 -0500)]
Merge pull request #29804 from alfredodeza/wip-rm41378

ceph-volume tests set the noninteractive flag for Debian

Reviewed-by: Andrew Schoen <aschoen@redhat.com>
5 years agoMerge PR #29744 into master
Sage Weil [Wed, 21 Aug 2019 20:02:27 +0000 (15:02 -0500)]
Merge PR #29744 into master

* refs/pull/29744/head:
qa/run-standalone.sh: fix python path
qa/standalone/mon/health-mute.sh: fix up rachet test
qa/standalone/mon/health-mute.sh: s/kill daemons/kill_daemons/

Reviewed-by: David Zafman <dzafman@redhat.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
5 years agoMerge PR #29749 into master
Sage Weil [Wed, 21 Aug 2019 20:02:14 +0000 (15:02 -0500)]
Merge PR #29749 into master

* refs/pull/29749/head:
mon/HealthMonitor: remove unused label

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #29757 into master
Sage Weil [Wed, 21 Aug 2019 20:02:01 +0000 (15:02 -0500)]
Merge PR #29757 into master

* refs/pull/29757/head:
osd: always initialize local variable

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #29763 into master
Sage Weil [Wed, 21 Aug 2019 20:01:50 +0000 (15:01 -0500)]
Merge PR #29763 into master

* refs/pull/29763/head:
qa/suites/rados: whitelist POOL_APP_NOT_ENABLED warning

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
5 years agomgr/pg_autoscaler: fix race with pool deletion 29807/head
Sage Weil [Wed, 21 Aug 2019 19:56:43 +0000 (14:56 -0500)]
mgr/pg_autoscaler: fix race with pool deletion

The pool_stats map comes from a get('df') that may not include a pool
because it was just deleted.

Fixes: https://tracker.ceph.com/issues/41386
Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoceph-volume tests set the noninteractive flag for Debian, to avoid prompts in apt 29804/head
Alfredo Deza [Wed, 21 Aug 2019 18:15:32 +0000 (14:15 -0400)]
ceph-volume tests set the noninteractive flag for Debian, to avoid prompts in apt

Signed-off-by: Alfredo Deza <adeza@redhat.com>
5 years agoMerge PR #28378 into master
Patrick Donnelly [Wed, 21 Aug 2019 17:57:15 +0000 (10:57 -0700)]
Merge PR #28378 into master

* refs/pull/28378/head:
qa/tasks: introduce Thrasher base class
qa/tasks: Fix typo
qa/tasks: manage thrashers
qa/tasks: start DaemonWatchdog when ceph starts
qa/tasks: make watch and bark handle more daemons
qa/tasks: move DaemonWatchdog to new file

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge pull request #29773 from dillaman/wip-41352
Mykola Golub [Wed, 21 Aug 2019 14:26:01 +0000 (17:26 +0300)]
Merge pull request #29773 from dillaman/wip-41352

pybind/mgr/rbd_support: fix missing variable in error path

Reviewed-by: Mykola Golub <mgolub@suse.com>
5 years agoMerge pull request #29659 from jan--f/c-v-simple-functional-no-lvm-zap
Jan Fajerski [Wed, 21 Aug 2019 07:17:30 +0000 (09:17 +0200)]
Merge pull request #29659 from jan--f/c-v-simple-functional-no-lvm-zap

ceph-volume: don't try to test lvm zap on simple tests

5 years agoqa/tasks: introduce Thrasher base class 28378/head
Jos Collin [Mon, 5 Aug 2019 10:52:10 +0000 (16:22 +0530)]
qa/tasks: introduce Thrasher base class

* Introduced a Thrasher base class.
* Updated thrashers to inherit from Thrasher.
* Replaced the magic variable e with Thrasher.exception as per the discussion.
  Now the exception variable sets by default as the thrashers are inheriting
  from the Thrasher class.

Fixes: https://github.com/ceph/ceph/pull/28378#discussion_r309337928
Fixes: https://tracker.ceph.com/issues/41133
Signed-off-by: Jos Collin <jcollin@redhat.com>
5 years agorgw: distinguish different get_usage for usage log 17719/head
Jiaying Ren [Thu, 14 Sep 2017 07:30:45 +0000 (15:30 +0800)]
rgw: distinguish different get_usage for usage log

get_usage op via s3 endpoint are not the same as get_usage
via admin endpoint in the rgw usage log categories.

Signed-off-by: Jiaying Ren <jiaying.ren@umcloud.com>
5 years agomon/HealthMonitor: remove unused label 29749/head
Kefu Chai [Tue, 20 Aug 2019 02:05:09 +0000 (10:05 +0800)]
mon/HealthMonitor: remove unused label

move the whole sanity checks into `HealthMonitor::preprocess_command()`.

this change silences warning of:

warning: label 'reply' defined but not used [-Wunused-label]

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agoosd/PeeringState: semi-colon after DECLARE_LOCALS 29780/head
Sage Weil [Tue, 20 Aug 2019 21:55:49 +0000 (16:55 -0500)]
osd/PeeringState: semi-colon after DECLARE_LOCALS

This screws with emacs' auto-indent.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoosd/PeeringState: on_new_interval on child PG after split
Sage Weil [Tue, 20 Aug 2019 19:48:17 +0000 (14:48 -0500)]
osd/PeeringState: on_new_interval on child PG after split

This was broken as part of the PeeringState refactor, see
ace6655f955837b104f307183fc0b988b7880c04.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #29717 into master
Sage Weil [Tue, 20 Aug 2019 21:39:28 +0000 (16:39 -0500)]
Merge PR #29717 into master

* refs/pull/29717/head:
os/bluestore: prefix omap of temp objects by real pool

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoqa/standalone/scrub/osd-scrub-snaps: snapmapper omap is now 'm' 29774/head
Sage Weil [Tue, 20 Aug 2019 15:04:24 +0000 (10:04 -0500)]
qa/standalone/scrub/osd-scrub-snaps: snapmapper omap is now 'm'

...due to per-pool omap.

Fixes 91f533be71e5fd9b2c0135a5b54d663425a1d9c4

Fixes: https://tracker.ceph.com/issues/41353
Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #29759 into master
Patrick Donnelly [Tue, 20 Aug 2019 17:24:08 +0000 (10:24 -0700)]
Merge PR #29759 into master

* refs/pull/29759/head:
qa/tasks: fixed typo in the comment

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge pull request #29625 from kamoltat/wip-test-progress-fix-bug-#29385
Kefu Chai [Tue, 20 Aug 2019 15:09:58 +0000 (23:09 +0800)]
Merge pull request #29625 from kamoltat/wip-test-progress-fix-bug-#29385

mgr/progress/module.py: s/events/_events/

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #29704 from tchaikov/wip-ceph-objectstore-tool
Kefu Chai [Tue, 20 Aug 2019 15:07:55 +0000 (23:07 +0800)]
Merge pull request #29704 from tchaikov/wip-ceph-objectstore-tool

ceph-objectstore-tool: return 0 if incmap is sane

Reviewed-by: Jos Collin <jcollin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
5 years agoMerge pull request #29655 from trociny/wip-40923
Jason Dillaman [Tue, 20 Aug 2019 15:04:04 +0000 (11:04 -0400)]
Merge pull request #29655 from trociny/wip-40923

qa/workunits/rbd: stress test `rbd mirror pool status --verbose`

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agopybind/mgr/rbd_support: fix missing variable in error path 29773/head
Jason Dillaman [Tue, 20 Aug 2019 15:00:08 +0000 (11:00 -0400)]
pybind/mgr/rbd_support: fix missing variable in error path

Fixes: https://tracker.ceph.com/issues/41352
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #29376 from Songweibin/wip-rbd-display-id
Jason Dillaman [Tue, 20 Aug 2019 14:23:36 +0000 (10:23 -0400)]
Merge pull request #29376 from Songweibin/wip-rbd-display-id

rbd/action: display image id in rbd du/list output

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #29743 from smithfarm/wip-ceph-backport-https
Nathan Cutler [Tue, 20 Aug 2019 14:23:06 +0000 (16:23 +0200)]
Merge pull request #29743 from smithfarm/wip-ceph-backport-https

script/ceph-backport.sh: carry https through to logical conclusion

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Abhishek Lekshmanan <abhishek@suse.com>
Reviewed-by: Willem Jan Withagen <wjw@digiware.nl>
5 years agoMerge pull request #29653 from lixiaoy1/AsyncOpTracker_dup
Jason Dillaman [Tue, 20 Aug 2019 14:22:38 +0000 (10:22 -0400)]
Merge pull request #29653 from lixiaoy1/AsyncOpTracker_dup

librbd: Remove duplicated AsyncOpTracker in librbd/Utils.h

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #29094 from cbodley/wip-40806
Casey Bodley [Tue, 20 Aug 2019 14:19:07 +0000 (10:19 -0400)]
Merge pull request #29094 from cbodley/wip-40806

radosgw-admin: bucket sync status not 'caught up' during full sync

Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
5 years agoscripts/ceph-backport.sh: always use https://tracker.ceph.com 29743/head
Nathan Cutler [Mon, 19 Aug 2019 14:57:07 +0000 (16:57 +0200)]
scripts/ceph-backport.sh: always use https://tracker.ceph.com

Completing the wave of fixes to this script in the wake of
https://tracker.ceph.com/issues/38764, this commit replaces
"http" with "https" in the comments and puts the Redmine endpoint
into a variable, along with some other cleanups.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoMerge pull request #29762 from alfredodeza/bz-1738379
Alfredo Deza [Tue, 20 Aug 2019 13:32:05 +0000 (09:32 -0400)]
Merge pull request #29762 from alfredodeza/bz-1738379

ceph-volume: use the OSD identifier when reporting success

Reviewed-by: Jan Fajerski <jfajerski@suse.com>
5 years agoqa/suites/rados: whitelist POOL_APP_NOT_ENABLED warning 29763/head
Kefu Chai [Tue, 20 Aug 2019 13:05:21 +0000 (21:05 +0800)]
qa/suites/rados: whitelist POOL_APP_NOT_ENABLED warning

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agomgr/dashboard: login screen language dropdown enhancement (#29636)
Lenz Grimmer [Tue, 20 Aug 2019 12:48:49 +0000 (12:48 +0000)]
mgr/dashboard: login screen language dropdown enhancement (#29636)

mgr/dashboard: login screen language dropdown enhancement

Reviewed-by: Patrick Seidensal <pnawracay@suse.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agoMerge pull request #29737 from tspmelo/wip-label-alignment
Lenz Grimmer [Tue, 20 Aug 2019 12:20:05 +0000 (12:20 +0000)]
Merge pull request #29737 from tspmelo/wip-label-alignment

mgr/dashboard: Vertically align the "Refresh" label

Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agomgr/dashboard: Exclude some folders in the frontend project (#29708)
Lenz Grimmer [Tue, 20 Aug 2019 12:18:53 +0000 (12:18 +0000)]
mgr/dashboard: Exclude some folders in the frontend project (#29708)

mgr/dashboard: Exclude some folders in the frontend project

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agoceph-volume devices.lvm zap use the identifier to report success 29762/head
Alfredo Deza [Tue, 20 Aug 2019 12:04:56 +0000 (08:04 -0400)]
ceph-volume devices.lvm zap use the identifier to report success

Signed-off-by: Alfredo Deza <adeza@redhat.com>
5 years agoceph-volume tests check success message when zapping
Alfredo Deza [Tue, 20 Aug 2019 12:04:26 +0000 (08:04 -0400)]
ceph-volume tests check success message when zapping

Signed-off-by: Alfredo Deza <adeza@redhat.com>
5 years agomgr/dashboard: Hosts Page Service Links Test (#29516)
Lenz Grimmer [Tue, 20 Aug 2019 10:43:53 +0000 (10:43 +0000)]
mgr/dashboard: Hosts Page Service Links Test (#29516)

mgr/dashboard: Hosts Page Service Links Test

Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
5 years agoMerge pull request #29728 from tchaikov/wip-41330
Kefu Chai [Tue, 20 Aug 2019 10:31:18 +0000 (18:31 +0800)]
Merge pull request #29728 from tchaikov/wip-41330

cmake,run-make-check.sh: disable SPDK by default

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
5 years agoqa/tasks: fixed typo in the comment 29759/head
Jos Collin [Tue, 20 Aug 2019 09:49:55 +0000 (15:19 +0530)]
qa/tasks: fixed typo in the comment

Signed-off-by: Jos Collin <jcollin@redhat.com>
5 years agoosd: always initialize local variable 29757/head
Kefu Chai [Tue, 20 Aug 2019 08:15:17 +0000 (16:15 +0800)]
osd: always initialize local variable

to silence a GCC warning like:

../src/osd/OSD.cc:4608:24: warning: ‘sender_delta_ub’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
 4608 |       ceph::signedspan sender_delta_ub;
      |                        ^~~~~~~~~~~~~~~

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agocmake,run-make-check.sh,deb,rpm: disable SPDK by default 29728/head
Kefu Chai [Mon, 19 Aug 2019 07:21:06 +0000 (15:21 +0800)]
cmake,run-make-check.sh,deb,rpm: disable SPDK by default

but we still enable it in `run-make-check.sh`

* cmake: disable SPDK by default
* run-make-check.sh: enable WITH_SPDK so at least we can ensure it
  builds
* deb,rpm: add uuid-dev / libuuid-devel as a "make check" dependency

Fixes: https://tracker.ceph.com/issues/41330
Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agocmake: make WITH_SPDK a dependent option
Kefu Chai [Mon, 19 Aug 2019 07:18:49 +0000 (15:18 +0800)]
cmake: make WITH_SPDK a dependent option

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agoosd: do not invalidate clear_regions of missing item at boot 29755/head
xie xingguo [Mon, 17 Jun 2019 03:05:31 +0000 (11:05 +0800)]
osd: do not invalidate clear_regions of missing item at boot

Seems we'll always mark clear_regions as all dirty
when reading pg logs and missing items off the disk,
which as a result turns incremental recovery off by default.
Also using std::move seems to be a bit more efficient
and robust here.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
5 years agoMerge pull request #29753 from tchaikov/wip-sudo-sysctl
Kefu Chai [Tue, 20 Aug 2019 03:57:03 +0000 (11:57 +0800)]
Merge pull request #29753 from tchaikov/wip-sudo-sysctl

run-make-check.sh: run sudo with absolute path

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
5 years agoMerge pull request #29726 from xiexingguo/wip-inc-recovery-1
Xie Xingguo [Tue, 20 Aug 2019 03:22:39 +0000 (11:22 +0800)]
Merge pull request #29726 from xiexingguo/wip-inc-recovery-1

osd/PrimaryLogPG: fix dirty range of write_full

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
5 years agoMerge pull request #29729 from xiexingguo/wip-inc-recovery-2
Xie Xingguo [Tue, 20 Aug 2019 03:22:08 +0000 (11:22 +0800)]
Merge pull request #29729 from xiexingguo/wip-inc-recovery-2

osd/PrimaryLogPG: finish_copyfrom - dirty omap if necessary

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
5 years agorun-make-check.sh: run sudo with absolute path 29753/head
Kefu Chai [Tue, 20 Aug 2019 02:49:18 +0000 (10:49 +0800)]
run-make-check.sh: run sudo with absolute path

there is chance that `/sbin` is not listed in `secure_path`, see
sudoers(5) for more details

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agoqa/run-standalone.sh: fix python path 29744/head
Sage Weil [Mon, 19 Aug 2019 17:33:05 +0000 (12:33 -0500)]
qa/run-standalone.sh: fix python path

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoqa/standalone/mon/health-mute.sh: fix up rachet test
Sage Weil [Mon, 19 Aug 2019 17:28:31 +0000 (12:28 -0500)]
qa/standalone/mon/health-mute.sh: fix up rachet test

Make sure we provide time for the mute to get cleared out by tick().

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #29518 into master
Patrick Donnelly [Mon, 19 Aug 2019 16:36:37 +0000 (09:36 -0700)]
Merge PR #29518 into master

* refs/pull/29518/head:
mount.ceph: properly handle -o strictatime

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #29411 into master
Patrick Donnelly [Mon, 19 Aug 2019 16:34:42 +0000 (09:34 -0700)]
Merge PR #29411 into master

* refs/pull/29411/head:
mds: fix InoTable::force_consume_to()

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #29543 into master
Patrick Donnelly [Mon, 19 Aug 2019 16:33:26 +0000 (09:33 -0700)]
Merge PR #29543 into master

* refs/pull/29543/head:
mds: move some MDCache member init to header

Reviewed-by: Jos Collin <jcollin@redhat.com>
5 years agoMerge pull request #29429 from dillaman/wip-40834
Jason Dillaman [Mon, 19 Aug 2019 15:57:01 +0000 (11:57 -0400)]
Merge pull request #29429 from dillaman/wip-40834

doc/rbd: initial kubernetes / ceph-csi integration documentation

Reviewed-by: ShyamsundarR <srangana@redhat.com>
Reviewed-by: Humble Chirammal <hchiramm@redhat.com>
Reviewed-by: Madhu Rajanna <madhupr007@gmail.com>
5 years agoqa/standalone/mon/health-mute.sh: s/kill daemons/kill_daemons/
Sage Weil [Mon, 19 Aug 2019 14:27:51 +0000 (09:27 -0500)]
qa/standalone/mon/health-mute.sh: s/kill daemons/kill_daemons/

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #29719 into master
Sage Weil [Mon, 19 Aug 2019 14:09:06 +0000 (09:09 -0500)]
Merge PR #29719 into master

* refs/pull/29719/head:
osd/PrimaryLogPG: kill obsolete ondisk_{read,write}_lock comments

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agomgr/dashboard: E2E Test for RBD Mirroring and Images (#29381)
Lenz Grimmer [Mon, 19 Aug 2019 13:10:59 +0000 (13:10 +0000)]
mgr/dashboard: E2E Test for RBD Mirroring and Images (#29381)

mgr/dashboard: E2E Test for RBD Mirroring and Images

Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
5 years agomgr/dashboard: Vertically align the "Refresh" label 29737/head
Tiago Melo [Mon, 19 Aug 2019 10:59:53 +0000 (10:59 +0000)]
mgr/dashboard: Vertically align the "Refresh" label

Signed-off-by: Tiago Melo <tmelo@suse.com>
5 years agomgr/dashboard: Exclude some folders in the frontend project 29708/head
Tiago Melo [Thu, 8 Aug 2019 12:58:39 +0000 (12:58 +0000)]
mgr/dashboard: Exclude some folders in the frontend project

This will remove an warning in VS Code [1] and, more important, will reduce the
number of files that TS will watch when compiling or linting.

[1] To enable project-wide JavaScript/TypeScript language features,
exclude large folders with source files that you do not work on.

Signed-off-by: Tiago Melo <tmelo@suse.com>
5 years agoMerge pull request #29685 from smithfarm/wip-41296
Nathan Cutler [Mon, 19 Aug 2019 10:17:46 +0000 (12:17 +0200)]
Merge pull request #29685 from smithfarm/wip-41296

rpm: always build ceph-test package

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Kyr Shatskyy <kyrylo.shatskyy@suse.de>
5 years agoMerge pull request #29556 from Devp00l/wip-41165
Lenz Grimmer [Mon, 19 Aug 2019 09:08:43 +0000 (09:08 +0000)]
Merge pull request #29556 from Devp00l/wip-41165

mgr/dashboard: CephFS client tab switch

Reviewed-by: Tiago Melo <tmelo@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agomgr/dashboard: Verify fields on ISCSI page (#29608)
Lenz Grimmer [Mon, 19 Aug 2019 09:03:57 +0000 (09:03 +0000)]
mgr/dashboard: Verify fields on ISCSI page (#29608)

mgr/dashboard: Verify fields on ISCSI page

Reviewed-by: Patrick Seidensal <pnawracay@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agomgr/dashboard: clean-up python unit tests (#28696)
Lenz Grimmer [Mon, 19 Aug 2019 08:52:53 +0000 (08:52 +0000)]
mgr/dashboard: clean-up python unit tests (#28696)

mgr/dashboard: clean-up python unit tests

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
5 years agoosd/PrimaryLogPG: finish_copyfrom - dirty omap if necessary 29729/head
xie xingguo [Wed, 14 Aug 2019 07:37:49 +0000 (15:37 +0800)]
osd/PrimaryLogPG: finish_copyfrom - dirty omap if necessary

otherwise we'll at risk of losing track of omap entries.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
5 years agoosd/PrimaryLogPG: fix dirty range of write_full 29726/head
xie xingguo [Wed, 14 Aug 2019 06:12:43 +0000 (14:12 +0800)]
osd/PrimaryLogPG: fix dirty range of write_full

A write_full operation may implicitly truncate the object down,
hence we need to mark the truncated part as dirty as well since
follow-up randomized writes may still be able to (re)extend the
object size and leave some holes against the truncated part,
which as a result might cause problems during incremental-mode
recovery.

Note that write_update_size_and_usage would reset oi.size
and that's why we move the mark_data_region_dirty call before that.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
5 years agoMerge pull request #29584 from tchaikov/wip-qa-test_envlibrados_for_rocksdb-cmake3
Kefu Chai [Sun, 18 Aug 2019 04:03:56 +0000 (12:03 +0800)]
Merge pull request #29584 from tchaikov/wip-qa-test_envlibrados_for_rocksdb-cmake3

qa/workunits/rados/test_envlibrados_for_rocksdb: install newer cmake

Reviewed-by: Neha Ojha <nojha@redhat.com>