Commit Graph

60416 Commits

Author SHA1 Message Date
Wido den Hollander
95ed04a536
doc: Add documentation about mon_allow_pool_delete before pool remove
Tell users they need to set this to true before Monitors will allow
pools to be removed.

Also update the Pending Release Notes so that users can find this change
there.

This was changed with commit 5d7f4ea

Signed-off-by: Wido den Hollander <wido@42on.com>
2016-11-23 12:18:21 +01:00
Kefu Chai
db7533ddce Merge pull request #12055 from liewegas/wip-17942
osdc/Objecter: handle race between calc_target and handle_osd_map

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2016-11-23 19:05:35 +08:00
Kefu Chai
feefd5ed50 Merge pull request #11178 from stiopaa1/osd_pg_changeStructPGRecoveryStatsToClass
osd/PG.h: change PGRecoveryStats struct to class

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-11-23 19:02:53 +08:00
Kefu Chai
354e5bfb2e Merge pull request #12009 from 363921219/master
osd: clean up process_peering_events

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-11-23 19:01:04 +08:00
Kefu Chai
0e5405313b Merge pull request #12031 from liewegas/wip-ceph-abort
common: assert(0) -> ceph_abort()

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-11-23 19:00:10 +08:00
Venky Shankar
cc2f222a9b librbd: account m_processing when failing request after refresh
AioImageRequestWQ::_void_process() dequeues an item from the
work queue by invoking ThreadPool::_void_process() which also
performs accounting by incrementing ->m_processing which never
gets decremented if an image refresh fails. This is exactly
the flow when running test_lock_fence.sh which blacklists a
client and expects failed I/O operation from the client.

Without this fix, running test_lock_fence.sh in a loop fails
with an assert in PointerWQ dtor within 100 odd runs.

Fixes: http://tracker.ceph.com/issues/17973
Signed-off-by: Venky Shankar <vshankar@redhat.com>
2016-11-23 16:25:17 +05:30
Kefu Chai
6332a20170 Merge pull request #12034 from wjwithagen/wip-wjw-freebsd-strtoll
common/strtol.cc: Get error testing also to work on FreeBSD

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-11-23 18:48:04 +08:00
Kefu Chai
2921d8d576 Merge pull request #12150 from tchaikov/wip-kill-gf-complete-warnings
erasure-code: fix gf-complete warning

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2016-11-23 17:03:54 +08:00
Kefu Chai
43f15c612e cmake: regroup CMAKE_CXX_FLAGS and CMAKE_C_FLAGS
- some options are only meaningful for C++, so move them into
  CMAKE_CXX_FLAGS.
- regroup CMAKE_CXX_FLAGS and CMAKE_C_FLAGS, and remove the duplicated
  options.
- do not reset CMAKE_CXX_FLAGS with ${CMAKE_C_FLAGS}, instead, always
  append ${CMAKE_C_FLAGS} to existing ${CMAKE_CXX_FLAGS}. so we don't
  clobber CMAKE_CXX_FLAGS set by command line.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-11-23 16:45:18 +08:00
Kefu Chai
6e8f3b40df cmake: add -Wno-unknown-pragmas to CMAKE_C_FLAGS
this silences warnings like:

warning: ignoring #pragma clang diagnostic [-Wunknown-pragmas]

and recent clang (3.9 and 4.0) do not complain at seeing
so we only pass this this param to gcc.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-11-23 15:55:17 +08:00
Kefu Chai
b9d4fac7f0 erasure-code: fix gf-complete warning
pick up latest gf-complete submodule

$ git log --no-merges --pretty=%s \
  a6847973cba329ae079d3bd26341a4ec2906f012..c431e1ff76bdce6c3f6c0d0cbdf6a01c68f81071
gf_w32.c: silence the -Wmaybe-uninitialized warning

it silences following warning:

ceph/src/erasure-code/jerasure/gf-complete/src/gf_w32.c: In
function ‘gf_w32_cfmgk_multiply_region_from_single’:

ceph/src/erasure-code/jerasure/gf-complete/src/gf_w32.c:410:5:
warning: ‘a’ may be used uninitialized in this function
[-Wmaybe-uninitialized]
   g = _mm_insert_epi64 (a, g_star, 0);
     ^

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-11-23 15:38:14 +08:00
Loic Dachary
335d50f178 Merge pull request #12146 from dzafman/wip-dz-delays
tests: minor make check cleanup

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2016-11-23 07:39:44 +01:00
Kefu Chai
bd1eb7aa76 Merge pull request #12136 from dachary/wip-17889-systemd-order
ceph-disk: resolve race conditions

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-11-23 14:36:25 +08:00
Brad Hubbard
e16c64565e Merge pull request #12145 from tchaikov/wip-client-use-after-freed
client: trim_caps() do not dereference cap if it's removed

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
2016-11-23 16:07:28 +10:00
David Zafman
b425290a92 test: Handle terminal width 0 case for running test in emacs
Signed-off-by: David Zafman <dzafman@redhat.com>
2016-11-22 21:41:17 -08:00
David Zafman
dcb5fb9b5a test: CLEANUP: Make wait_for_clean() clearer changing variable name
Signed-off-by: David Zafman <dzafman@redhat.com>
2016-11-22 21:38:42 -08:00
David Zafman
c1eb8746bc test: Return wait_for_clean() to start sleeping at .1
Signed-off-by: David Zafman <dzafman@redhat.com>
2016-11-22 21:36:13 -08:00
David Zafman
453942946a test: Enhance get_timeout_delays()
Do all math using bc so we can have fractions
Allow caller to specify the first step (default 1)
Add testing of fractional first step

Signed-off-by: David Zafman <dzafman@redhat.com>
2016-11-22 21:32:34 -08:00
Kefu Chai
e9fbe39f0f client: trim_caps() do not dereference cap if it's removed
this silences the warning of "Use of memory after it is freed" reported
by clang static analyzer.

Reported-by: Brad Hubbard <bhubbard@redhat.com>
Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-11-23 13:04:18 +08:00
Sage Weil
58f9387acf Merge pull request #12127 from renhwztetecs/renhw-wip-doc-mds
doc/mds: fixup "mds bal mode" Description

Reviewed-by: John Spray <john.spray@redhat.com>
2016-11-22 19:35:43 -05:00
Yuri Weinstein
60941ae24d Merge pull request #12052 from liewegas/wip-osd-fast-dispatch
osd: a few fast dispatch optimizations

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-11-22 16:35:24 -08:00
Yuri Weinstein
0b6169612b Merge pull request #12059 from liewegas/wip-osd-omap-limits
osd: set server-side limits on omap get operations

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
2016-11-22 16:34:54 -08:00
Yuri Weinstein
9953fdf742 Merge pull request #12064 from majianpeng/rocksdb-perf
kv/RocksDBStore: Don't update rocksdb perf_context if rocksdb_perf di…

Reviewed-by: Sage Weil <sage@redhat.com>
2016-11-22 16:33:22 -08:00
Yuri Weinstein
129dce48a2 Merge pull request #12068 from yuyuyu101/wip-rdma-cct
msg/async/rdma: ensure CephContext existed

Reviewed-by: Sage Weil <sage@redhat.com>
2016-11-22 16:32:32 -08:00
Yuri Weinstein
2c3cda2da8 Merge pull request #12069 from liupan1111/wip-osd-up-heartbeat-peers
osd: heartbeat peers need to be updated when a new OSD added into an existed cluster

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Haomai Wang <haomai@xsky.com>
2016-11-22 16:29:12 -08:00
Patrick Donnelly
2cc8994ed6
mds: use unique_ptr unstable_bits_t in SimpleLock
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2016-11-22 19:25:21 -05:00
Patrick Donnelly
128ac29c88
mds: use unique_ptr in MDCache
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2016-11-22 19:25:13 -05:00
Patrick Donnelly
ed0d099a33
mds: use unique_ptr bufferlist in inline_data_t
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2016-11-22 19:03:23 -05:00
John Spray
66feecc2e5 Merge pull request #11959 from batrick/mds-header-prot-org
Partial organization of mds/ header sections

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2016-11-22 23:52:14 +00:00
John Spray
1d7c9f5739 Merge pull request #12111 from batrick/client-capsnap-emplace
client: put CapSnap not ptr in cap_snaps map

Reviewed-by: John Spray <john.spray@redhat.com>
2016-11-22 23:48:29 +00:00
John Spray
69adf69773 Merge pull request #12098 from ukernel/wip-17606
multimds: fix state check in Migrator::find_stale_export_freeze()

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2016-11-22 23:44:06 +00:00
John Spray
44d9f9749c Merge pull request #12063 from batrick/i17858
mds: use projected path construction for access

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2016-11-22 23:28:11 +00:00
John Spray
b1171f8c7e src/doc: move exports.txt into doc/
Signed-off-by: John Spray <john.spray@redhat.com>
2016-11-22 23:14:15 +00:00
John Spray
3ae9bd840d src/doc: remove anchortable.txt
The anchor table is long gone.

Signed-off-by: John Spray <john.spray@redhat.com>
2016-11-22 23:14:14 +00:00
John Spray
907bdb5994 src/doc: fix class names in exports.txt
Signed-off-by: John Spray <john.spray@redhat.com>
2016-11-22 23:14:14 +00:00
Sage Weil
d126abf8fd Merge pull request #12141 from athanatos/wip-17983
osd/ECTransaction: only write out the hinfo if not delete

Reviewed-by: Sage Weil <sage@redhat.com>
2016-11-22 16:30:14 -05:00
Matt Benjamin
5aa8121d4e Merge pull request #12143 from rook/wip-boost-ext
cmake: fix boost build on ubuntu 16.10 yakkety
2016-11-22 16:29:26 -05:00
Jason Dillaman
ac4a407cd2 Merge pull request #12078 from yangdongsheng/rbd_cleanup
librbd: minor cleanup

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-11-22 16:03:30 -05:00
Bassam Tabbara
3eef10b977 cmake: fix boost build on ubuntu yakkety
If the host system has boost version 1.61 or higher (as in the case
for ubuntu 16.10 yakkety) the ceph build is currently broken. it
will pickup the system boost libraries but use the headers from the
submodule.

This commit ensure that when WITH_SYSTEM_BOOST is OFF we always
use the boost libraries and headers built from the submodule.

Signed-off-by: Bassam Tabbara <bassam.tabbara@quantum.com>
2016-11-22 11:53:34 -08:00
Gregory Farnum
9d2fd4bd0e Merge pull request #12110 from batrick/client-failure-msg
client: improve failure messages/debugging

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2016-11-22 14:32:53 -05:00
Li Wang
6f8be39520 osd/PG.h: remove unneeded forward declaration
Signed-off-by: Li Wang <li.wang@kylin-cloud.com>
2016-11-22 14:37:03 +00:00
Kefu Chai
e01b89ed6b crushtool: s/exit(EXIT_FAILURE)/return EXIT_FAILURE/
so the destructor(s) can be called.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-11-22 22:29:45 +08:00
Kefu Chai
d932c8f2f2 global/signal_handler: reset injected segv after test
~CephContext() => ~TypedSingletonWrapper() => ~MempoolObs =>
unregister_command() => ldout() << "unregister_command" =>
Log::submit_entry() => *(volatile int *)(0) = 0xdead;

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-11-22 22:29:45 +08:00
Kefu Chai
c8a3777203 test_cors.cc: fix the mem leak
Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-11-22 22:29:45 +08:00
Loic Dachary
72f0b2aa1e ceph-disk: trigger must ensure device ownership
The udev rules that set the owner/group of the OSD devices are racing
with 50-udev-default.rules and depending on which udev event fires last,
ownership may not be as expected.

Since ceph-disk trigger --sync runs as root, always happens after
dm/lvm/filesystem units are complete and before activation, it is a good
time to set the ownership of the device.

It does not eliminate all races: a script running after systemd
local-fs.target and firing a udev event may create a situation where the
permissions of the device are temporarily reverted while the activation
is running.

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

Signed-off-by: Loic Dachary <loic@dachary.org>
2016-11-22 15:29:25 +01:00
Loic Dachary
d954de5546 ceph-disk: systemd unit must run after local-fs.target
A ceph udev action may be triggered before the local file systems are
mounted because there is no ordering in udev. The ceph udev action
delegates asynchronously to systemd via ceph-disk@.service which will
fail if (for instance) the LVM partition required to mount /var/lib/ceph
is not available yet. The systemd unit will retry a few times but will
eventually fail permanently. The sysadmin can systemctl reset-fail at a
later time and it will succeed.

Add a dependency to ceph-disk@.service so that it waits until the local
file systems are mounted:

After=local-fs.target

Since local-fs.target depends on lvm, it will wait until the lvm
partition (as well as any dm devices) is ready and mounted before
attempting to activate the OSD. It may still fail because the
corresponding journal/data partition is not ready yet (which is
expected) but it will no longer fail because the lvm/filesystems/dm are
not ready.

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

Signed-off-by: Loic Dachary <loic@dachary.org>
2016-11-22 15:23:47 +01:00
Wei Jin
23dc8532d2 common/Throttle: fix typo for BackoffThrottle
Fix formula so that pepople can understand it smoothly.

Signed-off-by: Wei Jin <wjin.cn@gmail.com>
2016-11-22 21:08:35 +08:00
huanwen ren
3975b28b98 doc/mds: fixup "mds bal mode" Description
mds_load code is: 
switch(g_conf->mds_bal_mode) {
  case 0:
    return
      .8 * auth.meta_load() +
      .2 * all.meta_load() +
      req_rate +
      10.0 * queue_len;

  case 1:
    return req_rate + 10.0*queue_len;

  case 2:
    return cpu_load_avg;
  }

from Brett Niver <bniver@redhat.com> 

Signed-off-by: huanwen ren <ren.huanwen@zte.com.cn>
2016-11-22 20:10:51 +08:00
Kefu Chai
f0b7d36a92 Merge pull request #12124 from branch-predictor/bp-fast-markdown-doc
doc/rados/configuration/osd-config-ref.rst: document the fast mark down

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-11-22 19:20:01 +08:00
Kefu Chai
99063bcf73 Merge pull request #12123 from branch-predictor/bp-fast-markdown-is-default
test/osd-fast-mark-down.sh: wrong assumption on first subtest

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-11-22 19:04:39 +08:00