Commit Graph

5102 Commits

Author SHA1 Message Date
David Zafman
021177b790 Merge pull request #16407 from dzafman/wip-20243
osd: Improve size scrub error handling and ignore system attrs in xattr checking

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-17 20:05:40 -07:00
Boris Ranto
70473011a0 Merge pull request #16753 from ceph/wip-fix-ppc64
Fix ppc64 support for ceph

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-14 15:41:28 +02:00
Sage Weil
196e7f317c Merge pull request #16906 from liewegas/wip-bluestore-stupid
os/bluestore: switch default allocator to stupid; test both bitmap and stupid in qa

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-08-12 16:10:31 -05:00
Sage Weil
f1d8a40122 Merge pull request #16993 from liewegas/wip-mimic
common: kick off mimic

Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
Reviewed-by: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
2017-08-11 21:36:32 -05:00
David Zafman
5f58301a13 osd, rados: Improve size scrub error handling
Fixes: http://tracker.ceph.com/issues/20243

Signed-off-by: David Zafman <dzafman@redhat.com>
2017-08-11 11:37:32 -07:00
David Zafman
8ad4b29113 osd: Add whether shard is primary in list-inconsistent-obj
Add new field in the client interface
Update test case

Fixes: http://tracker.ceph.com/issues/18836

Signed-off-by: David Zafman <dzafman@redhat.com>
2017-08-11 11:37:03 -07:00
Sage Weil
7c96868797 os/memstore: memstore_page_set=false
This regularly returns bad results, see http://tracker.ceph.com/issues/20738

Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-11 13:31:51 -04:00
Sage Weil
3bcb4b3e8d include/rados: nautilus is next
Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-11 12:14:59 -04:00
Sage Weil
3d8b0ffb66 Merge pull request #16941 from jcsp/wip-20956
osd: include front_iface+back_iface in metadata

Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-10 11:14:54 -05:00
Sage Weil
2b6eea80ea os/bluestore: default 'bluefs_allocator = stupid'
Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-10 11:21:32 -04:00
Yuri Weinstein
013948aa14 Merge pull request #16618 from adamemerson/wip-throttle
common/Throttle: Clean up

Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-10 07:45:11 -07:00
Jos Collin
5fbb81f194 Merge pull request #16382 from PCzhangPC/bug2
common: bench test fall into dead loop when <seconds>=0

Reviewed-by: Jos Collin <jcollin@redhat.com>
2017-08-10 01:48:05 +00:00
Sage Weil
a6f170bf47 Merge pull request #16828 from liewegas/wip-18209
common/LogClient: assign seq and queue atomically

Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
2017-08-09 12:46:17 -05:00
Jason Dillaman
7dc82bc08c rbd: switched from legacy to new-style configuration options
Fixes: http://tracker.ceph.com/issues/20737
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-08-09 10:00:02 -04:00
John Spray
79491c1547 osd: include front_iface+back_iface in metadata
Fixes: http://tracker.ceph.com/issues/20956
Signed-off-by: John Spray <john.spray@redhat.com>
2017-08-09 07:53:26 -04:00
John Spray
687ea10269 common: return iface instead of addr from ipaddr.cc helpers
So that we can use the same helper functions to look
up interface names that we use to look up addresses.

Signed-off-by: John Spray <john.spray@redhat.com>
2017-08-09 07:53:11 -04:00
Adam C. Emerson
dd8aec3cc8 throttle: Do not destroy condition variables with waiters
Destroying a condition variable on which someone is waiting is Undefined
Behavior. it's bad and terrible and awful. On some machines it makes
the destructor just outright hang.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2017-08-08 22:53:12 -04:00
Adam C. Emerson
793ba0443c common: Automatic reference to PerfCounters
PerfCountersRef is a unique_ptr using a deleter that unregisters the
managed PerfCounters on deletion.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2017-08-08 22:53:12 -04:00
Adam C. Emerson
49f3d58b49 common: Add in_place_t/in_place_type_t from C++17
To better signal in-place construction among other overloads.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2017-08-08 22:53:12 -04:00
Adam C. Emerson
d08191e2da common: Add locking template functions and macros
These infer the type of the unique/shared/shunique lock from the type of
the mutex.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2017-08-08 22:39:20 -04:00
Sage Weil
d8f60f1f82 Merge pull request #16902 from liewegas/wip-health-deprecation
mon: add mon_health_preluminous_compat_warning

Reviewed-by: John Spray <john.spray@redhat.com>
2017-08-08 21:29:01 -05:00
Gregory Farnum
25f1edefbf Merge pull request #16755 from ivancich/wip-pull-new-dmclock
osd: bring in dmclock library changes

Reviewed-by:  J. Eric Ivancich <ivancich@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2017-08-08 14:27:28 -07:00
Sage Weil
c36a98be97 common/LogClient: make last_log non-atomic
Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-08 16:04:42 -04:00
Sage Weil
bf92a8a269 common/LogClient: fix indentation
Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-08 16:04:42 -04:00
Sage Weil
1f8f58becf common/LogClient: assign seq and queue atomically
The _get_mon_log_message() assumes that log_last and log_queue
are in sync, but it was previously possible to increment log_last
setting e.seq in do_log(), and only later queue it.  If a racing
thread ran get_mon_log_message() in the meantime it would fail
an assertion.

Fix by assigning the seq and queueing it atomically.  If the
cluster log is not enabled, use the get_next_seq() helper so that
graylog or syslog messages still have a seq assigned.

Fixes: http://tracker.ceph.com/issues/18209
Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-08 16:04:42 -04:00
Sage Weil
3750cf9caf os/bluestore: default to bluestore_allocator = stupid
Performance looks better, and code is simpler.

Also fix config option annotations.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-08 12:14:07 -04:00
Sage Weil
7c22b46e90 mon: add mon_health_preluminous_compat_warning
Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-08 10:28:10 -04:00
PC
7258c99ba8 common:bench test bug when <seconds>=0
Fixes:
src/common/obj_bencher.cc b/src/common/obj_bencher.cc :write_bench(),seq_read_bench(),rand_read_bench()
the program may fall into a dead loop if the <seconds> set as 0

Signed-off-by:PCzhangPC pengcheng.zhang@easystack.cn
2017-08-08 13:27:28 +08:00
Jason Dillaman
cfc3d46036 librbd: default localize parent reads to false
Fixes: http://tracker.ceph.com/issues/20941
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-08-07 17:44:30 -04:00
Haomai Wang
bb772b05a8 Merge pull request #16693 from alex-mikheev/wip_rdma_rxpool_1
msg/async/rdma: improves RX buffer management

Reviewed-by: Haomai Wang <haomai@xsky.com>
2017-08-07 23:45:48 +08:00
Yuri Weinstein
59a0f3c532 Merge pull request #16551 from fangyuxiangGL/data-notifier-interval
rgw: add a separate configuration for data notify interval

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2017-08-07 05:48:54 -07:00
Luo Kexue
5d6d22997a Common: remove variable 'argnum' that is modified but its new value is never used.
Signed-off-by: Luo Kexue <luo.kexue@zte.com.cn>
2017-08-07 16:21:16 +08:00
Sage Weil
7908552cc3 mon: add mon_warn_on_pool_no_app option
Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-06 09:56:55 -04:00
Adir Lev
720d044db1
msg/async/rdma: improves RX buffer management
The commit adds following changes:
- rx buffers are allocated from the memory pool (boost::pool)
- flat memory layout for buffer data/metadata to reduce cpu cache misses
- number of receive buffers can be much larger than receive queue len
- post new buffers to the srq as soon as possible.
- stat counters

Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2017-08-06 11:21:48 +00:00
Sage Weil
dbb4c1cd9b Merge pull request #16662 from ivancich/wip-dmclock-options-doc
doc: op queue and mclock related options

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-05 13:36:37 -05:00
Gregory Farnum
62a2e420bf Merge pull request #16803 from dmick/master
common/buffer: off-by-one error in max iov length blocking

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2017-08-04 11:58:41 -07:00
J. Eric Ivancich
dec1aeeffd doc: op queue and mclock related options
Additionally makes sure when unexpected values are provided for config
options osd_op_queue or osd_op_queue_cut_off that the default values
are assigned.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2017-08-04 14:32:37 -04:00
Sage Weil
6a39c5a229 Merge pull request #16614 from neha-ojha/recovery_sleep_hybrid
osd: Check whether journal is rotational or not

Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-04 13:23:38 -05:00
J. Eric Ivancich
8e92496df2 osd: update interface with dmclock library to use move semantics
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2017-08-04 12:38:01 -04:00
Boris Ranto
2172dfb594 Fix ppc64 support for ceph
The ppc64 support requires a couple of changes:
- adding the ppc64 support to cmake
- changing optimized crc32 code to compile on ppc64le only
- moving ifdef condition before crc32_align to avoid defined but not
used warning

Signed-off-by: Boris Ranto <branto@redhat.com>
2017-08-04 10:56:03 +02:00
Dan Mick
89f85d22c1 common/buffer: off-by-one error in max iov length blocking
The loop in write_fd stops at IOV_MAX-1; it could go to IOV_MAX
and write in more-natural sizes without extra tail writes.

Fixes: http://tracker.ceph.com/issues/20907
Signed-off-by: Dan Mick <dan.mick@redhat.com>
2017-08-03 18:25:00 -07:00
Yuri Weinstein
0f481d069d Merge pull request #16491 from cbodley/wip-20308
rgw: match wildcards in StringLike policy conditions

Reviewed-by: Pritha Srivastava <prsrivas@redhat.com>
Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
2017-08-03 13:24:59 -07:00
fang.yuxiang
39c5fb0a1c rgw: add a separate configuration for data notifier interval
Signed-off-by: fang yuxiang <fang.yuxiang@eisoo.com>
2017-08-03 10:25:06 +08:00
Neha Ojha
59dad1ced7 osd: Add recovery sleep hybrid configuration option
Signed-off-by: Neha Ojha <nojha@redhat.com>
2017-08-02 11:58:31 -07:00
Abhishek Varshney
dd7dc62ead rgw : fix race in RGWCompleteMultipart
Fixes : http://tracker.ceph.com/issues/20861

Signed-off-by: Abhishek Varshney <abhishek.varshney@flipkart.com>
2017-08-02 18:20:49 +00:00
Yuri Weinstein
36430b9f50 Merge pull request #16690 from scienceluo/wip-luo-unused-var-branch
common/rgw/rbd: remove some unused variables

Reviewed-by: Jos Collin <jcollin@redhat.com>
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-08-02 08:57:33 -07:00
Casey Bodley
a0f36e128a common: add std::not_fn to backport14.h and unit tests
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2017-08-01 15:42:24 -04:00
Jason Dillaman
1d54951e47 common: avoid statically allocating configuration options
This was resulting in seg faults within rbd-fuse during shutdown. This also
fixes the "variable tracking size limit exceeded with -fvar-tracking-assignments,
retrying without" compiler warning".

Fixes: http://tracker.ceph.com/issues/20869
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-08-01 12:04:02 -04:00
Kefu Chai
a8c2b10439 Merge pull request #16620 from cfanz/master
common: use std::move() for better performance

Reviewed-by: Jos Collin <jcollin@redhat.com>
2017-08-01 17:45:06 +08:00
Adam C. Emerson
0f52f486ef throttle: Minimal destructor fix for Luminous
Get rid of the undefined behavior of destroying condition variables
while they're being waited on.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
2017-07-31 13:17:46 -04:00