]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
9 years agocmake: remove Boost libraries from EXTRALIBS 7523/head
Kefu Chai [Wed, 10 Feb 2016 05:23:07 +0000 (21:23 -0800)]
cmake: remove Boost libraries from EXTRALIBS

* and remove ${Boost_SYSTEM_LIBRARY} from test_rados_api_tier

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agolog: remove "boost/asio.hpp" from Log.h
Kefu Chai [Fri, 5 Feb 2016 07:56:55 +0000 (15:56 +0800)]
log: remove "boost/asio.hpp" from Log.h

graylog uses boost/asio.hpp which introduces the link-time dependency on
libboost_system to the compilation units which includes Log.h and
LogClient.h. so it appears that perfglue/heap_profiler.cc is referencing
libboost_system.so, and fails the cmake build of all tests which links
against tcmalloc.

in this change, we:

* remove unnecessary #includes from Graylog.h
* forward declare Graylog class, so that "Graylog.h" is not included in
  any header files to avoid the link-time dependency pollution

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agocmake: disable warnings introduced by 457f023
Kefu Chai [Wed, 10 Feb 2016 05:16:34 +0000 (21:16 -0800)]
cmake: disable warnings introduced by 457f023

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoRevert "cmake: add libboost_system to EXTRALIBS"
Kefu Chai [Sat, 6 Feb 2016 00:59:32 +0000 (08:59 +0800)]
Revert "cmake: add libboost_system to EXTRALIBS"

This reverts commit 21438a6773a3153556de07096919ab46c4540eee.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #7496 from xiexingguo/xxg-wip-fixnvme
Sage Weil [Tue, 9 Feb 2016 14:02:22 +0000 (09:02 -0500)]
Merge pull request #7496 from xiexingguo/xxg-wip-fixnvme

osd: BlueStore/NVMEDevice: fix compiling and fd leak

Reviewed-by: Haomai Wang <haomai@xsky.com>
9 years agoMerge pull request #7349 from yuyuyu101/add-pwritev
Sage Weil [Tue, 9 Feb 2016 13:58:28 +0000 (08:58 -0500)]
Merge pull request #7349 from yuyuyu101/add-pwritev

osd: FileStore: use pwritev instead of lseek+writev

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #7504 from renhwsky/renhw-wip-mon-shutdown
Sage Weil [Tue, 9 Feb 2016 13:57:11 +0000 (08:57 -0500)]
Merge pull request #7504 from renhwsky/renhw-wip-mon-shutdown

mon: unregister command on shutdown

Reviewed-by: Joao Eduardo Luis <joao@suse.de>
9 years agoMerge pull request #7550 from tchaikov/wip-osd-cleanup
Sage Weil [Tue, 9 Feb 2016 13:56:48 +0000 (08:56 -0500)]
Merge pull request #7550 from tchaikov/wip-osd-cleanup

osd: a fix for HeartbeatDispatcher and cleanups

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #7553 from XinzeChi/wip-osdmap-affinity
Sage Weil [Tue, 9 Feb 2016 13:56:14 +0000 (08:56 -0500)]
Merge pull request #7553 from XinzeChi/wip-osdmap-affinity

osd: OSDMap: reset osd_primary_affinity shared_ptr when deepish_copy_from

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #7560 from tchaikov/wip-fix-icl
Sage Weil [Tue, 9 Feb 2016 13:55:59 +0000 (08:55 -0500)]
Merge pull request #7560 from tchaikov/wip-fix-icl

crush/CrushTester: workaround a bug in boost::icl

9 years agoMerge pull request #7568 from liewegas/wip-bluestore-mutex
Sage Weil [Tue, 9 Feb 2016 13:55:43 +0000 (08:55 -0500)]
Merge pull request #7568 from liewegas/wip-bluestore-mutex

osd: bluestore/blockdevice: use std::mutex et al

9 years agoMerge pull request #7578 from ceph/fix-stripper
Jason Dillaman [Tue, 9 Feb 2016 12:57:53 +0000 (07:57 -0500)]
Merge pull request #7578 from ceph/fix-stripper

Stripper: Fix incorrect push_front -> append_zero change

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
9 years agoStripper: Fix incorrect push_front -> append_zero change 7578/head
Haomai Wang [Tue, 9 Feb 2016 08:46:44 +0000 (16:46 +0800)]
Stripper: Fix incorrect push_front -> append_zero change

Signed-off-by: Haomai Wang <haomai@xsky.com>
9 years agoMerge pull request #7444 from dreamhost/wip-rgw-static-website-robbat2
Yehuda Sadeh [Tue, 9 Feb 2016 00:48:14 +0000 (16:48 -0800)]
Merge pull request #7444 from dreamhost/wip-rgw-static-website-robbat2

rgw: approximate AmazonS3 HostId error field.

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
9 years agoMerge remote-tracking branch 'gh/jewel'
Sage Weil [Mon, 8 Feb 2016 22:26:13 +0000 (17:26 -0500)]
Merge remote-tracking branch 'gh/jewel'

9 years agov10.0.3 v10.0.3
Sage Weil [Mon, 8 Feb 2016 22:10:53 +0000 (17:10 -0500)]
v10.0.3

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #7572 from ceph/wip-cmake-2-8-16
Casey Bodley [Mon, 8 Feb 2016 20:00:57 +0000 (15:00 -0500)]
Merge pull request #7572 from ceph/wip-cmake-2-8-16

cmake: Added new unittests to make check

9 years agoMerge pull request #7574 from SUSE/wip-spec-license
Sage Weil [Mon, 8 Feb 2016 18:43:38 +0000 (13:43 -0500)]
Merge pull request #7574 from SUSE/wip-spec-license

ceph.spec.in: add license declaration

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoceph.spec.in: add license declaration 7574/head
Nathan Cutler [Mon, 8 Feb 2016 17:57:31 +0000 (18:57 +0100)]
ceph.spec.in: add license declaration

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agocmake: Added new unittests to make check 7572/head
Ali Maredia [Mon, 8 Feb 2016 17:30:45 +0000 (12:30 -0500)]
cmake: Added new unittests to make check

Added unittest_shunique_lock & unittest_mutex_debug
to make check, and made them link ALLOC_LIBS

Signed-off-by: Ali Maredia <amaredia@redhat.com>
9 years agoMerge pull request #7569 from SUSE/wip-copyright2
Sage Weil [Mon, 8 Feb 2016 15:48:07 +0000 (10:48 -0500)]
Merge pull request #7569 from SUSE/wip-copyright2

ceph.spec.in: add copyright notice

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoceph.spec.in: add copyright notice 7569/head
Nathan Cutler [Mon, 8 Feb 2016 14:58:51 +0000 (15:58 +0100)]
ceph.spec.in: add copyright notice

http://tracker.ceph.com/issues/14694 Fixes: #14694

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agoos/bluestore/BlockDevice: std::atomic_int 7568/head
Sage Weil [Fri, 5 Feb 2016 16:45:23 +0000 (11:45 -0500)]
os/bluestore/BlockDevice: std::atomic_int

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/BlockDevice: use std::mutex and std::condition_variable
Sage Weil [Fri, 5 Feb 2016 16:20:15 +0000 (11:20 -0500)]
os/bluestore/BlockDevice: use std::mutex and std::condition_variable

Pull aio wait code into an IOContext method too.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #7513 from athanatos/wip-ceph-test-rados-2
Sage Weil [Mon, 8 Feb 2016 14:23:56 +0000 (09:23 -0500)]
Merge pull request #7513 from athanatos/wip-ceph-test-rados-2

ceph_test_rados: use less CPU

9 years agoMerge pull request #5931 from ceph/wip-cxx11concurrency
Sage Weil [Mon, 8 Feb 2016 14:23:15 +0000 (09:23 -0500)]
Merge pull request #5931 from ceph/wip-cxx11concurrency

librados: move to c++11 concurrency types

Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 years agoMerge branch 'print-blocked-op' of git://github.com/majianpeng/ceph
Sage Weil [Mon, 8 Feb 2016 14:14:21 +0000 (09:14 -0500)]
Merge branch 'print-blocked-op' of git://github.com/majianpeng/ceph

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #6608 from esnyder/wip-6634
Sage Weil [Mon, 8 Feb 2016 14:17:49 +0000 (09:17 -0500)]
Merge pull request #6608 from esnyder/wip-6634

osd: remove unused SnapContext member snapc from MOSDSubOp message

Reviewed-by: Xiaoxi Chen <xiaoxi.chen@intel.com>
Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge branch 'master' of git://github.com/joconcepts/ceph
Sage Weil [Mon, 8 Feb 2016 14:12:12 +0000 (09:12 -0500)]
Merge branch 'master' of git://github.com/joconcepts/ceph

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #7181 from songbaisen/song5
Sage Weil [Mon, 8 Feb 2016 14:16:14 +0000 (09:16 -0500)]
Merge pull request #7181 from songbaisen/song5

crush: reply quickly from get_immediate_parent

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoMerge pull request #7437 from Ved-vampir/wip_zlib_plugin
Sage Weil [Mon, 8 Feb 2016 14:15:04 +0000 (09:15 -0500)]
Merge pull request #7437 from Ved-vampir/wip_zlib_plugin

common: add zlib compression plugin

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #7527 from liewegas/wip-no-rgw-prestart
Sage Weil [Mon, 8 Feb 2016 14:13:38 +0000 (09:13 -0500)]
Merge pull request #7527 from liewegas/wip-no-rgw-prestart

systemd/ceph-radosgw-prestart.sh: remove

Reviewed-by: Nathan Cutler <ncutler@suse.com>
9 years agoMerge pull request #7547 from yuyuyu101/wip-14679
Haomai Wang [Mon, 8 Feb 2016 06:15:37 +0000 (14:15 +0800)]
Merge pull request #7547 from yuyuyu101/wip-14679

AsyncConnection: avoid debug log in cleanup_handler

9 years agocrush/CrushTester: workaround a bug in boost::icl 7560/head
Kefu Chai [Mon, 8 Feb 2016 05:37:43 +0000 (13:37 +0800)]
crush/CrushTester: workaround a bug in boost::icl

the boost::icl in boost v1.55 has a bug when working with libc++,

> Assertion failed: (this->_map.find(inter_val) == this->_map.end()),
> function gap_insert, file
> /usr/local/include/boost/icl/interval_base_map.hpp, line 555.

see https://svn.boost.org/trac/boost/ticket/9501 and
    https://svn.boost.org/trac/boost/ticket/9987

the bug was fixed in boost v1.56. as a workaround we use the the
`set` from `boost::container` instead of the `std::set` from libc++.
we should drop this workaround once we bump the supported boost
version from 1.42 to 1.56.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #7554 from tchaikov/wip-ceph-disk-test
Kefu Chai [Sun, 7 Feb 2016 17:52:16 +0000 (01:52 +0800)]
Merge pull request #7554 from tchaikov/wip-ceph-disk-test

tests: ceph-disk.sh should compare with the resolved path

Reviewed-by: Loic Dachary <ldachary@redhat.com>
9 years agoOSDMap: reset osd_primary_affinity shared_ptr when deepish_copy_from 7553/head
Xinze Chi [Sun, 7 Feb 2016 10:50:29 +0000 (18:50 +0800)]
OSDMap: reset osd_primary_affinity shared_ptr when deepish_copy_from

Base on current logic, OSDMonitor may call create_pending and
encode_pending twice for the some epoch.

In encode_pending:

tmp.deepish_copy_from(osdmap);
tmp.apply_incremental(pending_inc);

This Op would change the tmp osd_primary_affinity, but the osd_primary_affinity
is declared as ceph::shared_ptr, so this would change the osdmap too. When this
round encode_pending is proposed fail. We may call encode_pending again, but the
osdmap is changed last round, so the pending_inc would be wrong.

Fixes: #14686
Signed-off-by: Xinze Chi <xinze@xsky.com>
9 years agoMerge pull request #7551 from JevonQ/update-libcephfs-version
Sage Weil [Sun, 7 Feb 2016 14:01:04 +0000 (09:01 -0500)]
Merge pull request #7551 from JevonQ/update-libcephfs-version

libcephfs: update LIBCEPHFS_VERSION to indicate the interface was changed

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agotests: ceph-disk.sh should compare with the resolved path 7554/head
Kefu Chai [Sun, 7 Feb 2016 12:36:58 +0000 (04:36 -0800)]
tests: ceph-disk.sh should compare with the resolved path

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agolibcephfs: Update LIBCEPHFS_VERSION to indicate the interface was changed 7551/head
Jevon Qiao [Sun, 7 Feb 2016 06:00:53 +0000 (14:00 +0800)]
libcephfs: Update LIBCEPHFS_VERSION to indicate the interface was changed

Signed-off-by: Jevon Qiao <scaleqiao@gmail.com>
9 years agoAsyncMessenger: remove unused variables 7550/head
Kefu Chai [Sat, 6 Feb 2016 17:54:12 +0000 (01:54 +0800)]
AsyncMessenger: remove unused variables

* remove AsyncMessenger::listen_sd
* remove `ee` in KqueueDriver::del_event()

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agocrypto: remove unused Digest::sec_type
Kefu Chai [Sat, 6 Feb 2016 17:49:30 +0000 (01:49 +0800)]
crypto: remove unused Digest::sec_type

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agojournal: remove unused ObjectPlayer::m_fetch_interval
Kefu Chai [Sat, 6 Feb 2016 17:44:12 +0000 (01:44 +0800)]
journal: remove unused ObjectPlayer::m_fetch_interval

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agolibrbd: remove unused C_DiffObject::m_request_num
Kefu Chai [Sat, 6 Feb 2016 17:43:09 +0000 (01:43 +0800)]
librbd: remove unused C_DiffObject::m_request_num

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agolibrbd: replace atomic_t with std::atomic<int>
Kefu Chai [Sat, 6 Feb 2016 16:26:59 +0000 (00:26 +0800)]
librbd: replace atomic_t with std::atomic<int>

it fails to compile with clang, and turns out it should be
`ceph::atomic_t`, but I take this chance to replace it
with std::atomic<> to phase out atomic_t.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoECUtil: remove unused stripe_info_t::stripe_size
Kefu Chai [Sat, 6 Feb 2016 15:38:29 +0000 (23:38 +0800)]
ECUtil: remove unused stripe_info_t::stripe_size

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoosd: init HeartbeatDispatcher using OSD->cct
Kefu Chai [Sat, 6 Feb 2016 15:35:14 +0000 (23:35 +0800)]
osd: init HeartbeatDispatcher using OSD->cct

its base class 'Dispatcher' is uninitialized when used here to access
'Dispatcher::cct', so we'd better use OSD::cct to initialize it instead.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #7549 from tchaikov/wip-fix-ceph-disk-tests
Kefu Chai [Sat, 6 Feb 2016 15:43:31 +0000 (23:43 +0800)]
Merge pull request #7549 from tchaikov/wip-fix-ceph-disk-tests

ceph-disk/test: fix test_prepare.py::TestPrepare tests

Reviewed-by: Loic Dachary <ldachary@redhat.com>
9 years agoceph-disk/test: fix test_prepare.py::TestPrepare tests 7549/head
Kefu Chai [Sat, 6 Feb 2016 14:25:38 +0000 (06:25 -0800)]
ceph-disk/test: fix test_prepare.py::TestPrepare tests

actually we are verifying if the variable is an instance of
specified class. for example, the `prepare.data` should be
a `PrepareFilestoreData` if `--bluestore` is not specified.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoAsyncConnection: avoid debug log in cleanup_handler 7547/head
Haomai Wang [Sat, 6 Feb 2016 06:52:43 +0000 (14:52 +0800)]
AsyncConnection: avoid debug log in cleanup_handler

local connection will be stop and call cleanup_handler after messenger
is down
introduced in
commit(https://github.com/ceph/ceph/commit/9da2fffd31562ed5d0b795d7862b3ebec66aba40)

Fix #14679

Signed-off-by: Haomai Wang <haomai@xsky.com>
9 years agoMerge pull request #7540 from dillaman/wip-librados-test-stub-unwatch
Josh Durgin [Sat, 6 Feb 2016 01:41:03 +0000 (17:41 -0800)]
Merge pull request #7540 from dillaman/wip-librados-test-stub-unwatch

librados_test_stub: protect against notify/unwatch race

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoMerge pull request #7529 from dillaman/wip-14412
Josh Durgin [Sat, 6 Feb 2016 01:39:03 +0000 (17:39 -0800)]
Merge pull request #7529 from dillaman/wip-14412

librbd: journal framework for tracking exclusive lock transitions

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoMerge pull request #7377 from liewegas/wip-datadir-search
Sage Weil [Sat, 6 Feb 2016 01:03:50 +0000 (20:03 -0500)]
Merge pull request #7377 from liewegas/wip-datadir-search

config: add $data_dir/config to config search path

9 years agoMerge pull request #7466 from adamemerson/wip-bsd-time-second-try
Sage Weil [Sat, 6 Feb 2016 01:03:35 +0000 (20:03 -0500)]
Merge pull request #7466 from adamemerson/wip-bsd-time-second-try

common: time: have skewing-now call non-skewing now

9 years agoMerge pull request #7463 from dachary/wip-13422-pid-file
Sage Weil [Sat, 6 Feb 2016 01:03:00 +0000 (20:03 -0500)]
Merge pull request #7463 from dachary/wip-13422-pid-file

global: do not start two daemons with a single pid-file (part 2)

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #7460 from xiexingguo/xxg-wip-block
Sage Weil [Sat, 6 Feb 2016 01:02:34 +0000 (20:02 -0500)]
Merge pull request #7460 from xiexingguo/xxg-wip-block

osd: blockdevice: avoid implicit cast and add guard

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #7530 from xiexingguo/xxg-wip-nid
Sage Weil [Sat, 6 Feb 2016 01:02:07 +0000 (20:02 -0500)]
Merge pull request #7530 from xiexingguo/xxg-wip-nid

osd: bluestore: assign nid for newly created onode

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #7521 from liewegas/wip-memstore
Sage Weil [Sat, 6 Feb 2016 01:01:47 +0000 (20:01 -0500)]
Merge pull request #7521 from liewegas/wip-memstore

osd: memstore: set Collection::cid on create

9 years agoMerge pull request #7486 from ceph/wip-bluestore-oref
Sage Weil [Sat, 6 Feb 2016 01:01:32 +0000 (20:01 -0500)]
Merge pull request #7486 from ceph/wip-bluestore-oref

osd: bluestore: fix two wal bugs; reuse OnodeRefs when applying txc

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoMerge pull request #7531 from jjhuo/master
Sage Weil [Sat, 6 Feb 2016 01:01:05 +0000 (20:01 -0500)]
Merge pull request #7531 from jjhuo/master

osd: bluestore: remove unused intrusive member hook in enode

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #7535 from liewegas/wip-bluefs-mkfs
Sage Weil [Sat, 6 Feb 2016 01:00:31 +0000 (20:00 -0500)]
Merge pull request #7535 from liewegas/wip-bluefs-mkfs

osd: bluestore/BlueFS: initialize super block_size earlier in mkfs

Reviewed-by: Dan Mick <dmick@redhat.com>
9 years agoMerge pull request #7536 from liewegas/wip-bluestore-block
Sage Weil [Sat, 6 Feb 2016 01:00:07 +0000 (20:00 -0500)]
Merge pull request #7536 from liewegas/wip-bluestore-block

osd: bluestore: fix block device file creation

9 years agoMerge pull request #7541 from linuxbox2/cmake-feb5
Ali Maredia [Sat, 6 Feb 2016 00:53:08 +0000 (19:53 -0500)]
Merge pull request #7541 from linuxbox2/cmake-feb5

Cmake feb5

9 years agoosdc: Update to use C++11 concurrency 5931/head
Adam C. Emerson [Mon, 14 Sep 2015 17:35:10 +0000 (13:35 -0400)]
osdc: Update to use C++11 concurrency

The only externally visible change is that Objecter::get_osdmap_read
and Objedcter::put_osdmap_read have been removed in favor of
Objecter::with_osdmap.

It can be used like:

objecter->with_osdmap([&](const OSDMap& o) { o.do_stuff(); };
int x = objecter->with_osdmap([&](const OSDMap& o) {
    return get_thing(id); });
objecter->with_osdmap(std::mem_fn(&OSDMap::do_stuff));
int x = objecter->with_osdmap(std::mem_fn(&OSDMap::get_thing),
                              id);

The choice between the style of the first two examples or the second two
is arbitrary and depends on what you prefer.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
9 years agocmake: add libboost_system to EXTRALIBS 7541/head
Matt Benjamin [Fri, 5 Feb 2016 21:43:43 +0000 (16:43 -0500)]
cmake: add libboost_system to EXTRALIBS

This concisely fixes several unittest builds, and reflects the
fact that this library dependency has moved into several areas
of the codebase (libcephfs, librbd, librgw).

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
9 years agocmake: don't try to install src/ceph-disk directory
Matt Benjamin [Fri, 5 Feb 2016 20:54:19 +0000 (15:54 -0500)]
cmake: don't try to install src/ceph-disk directory

The proper cmake boilerplate to call ceph-disk/ceph-disk's
python installer is not present, FYI.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
9 years agocmake: don't add_test cephtool_test_osd twice
Matt Benjamin [Fri, 5 Feb 2016 20:51:00 +0000 (15:51 -0500)]
cmake: don't add_test cephtool_test_osd twice

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
9 years agolibrados_test_stub: protect against notify/unwatch race 7540/head
Jason Dillaman [Fri, 5 Feb 2016 21:14:39 +0000 (16:14 -0500)]
librados_test_stub: protect against notify/unwatch race

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoconcurrency: Add shunique_lock
Adam C. Emerson [Mon, 14 Sep 2015 17:30:47 +0000 (13:30 -0400)]
concurrency: Add shunique_lock

Locker class tracking shared/unique/unlocked state of SharedMutex
concept.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
9 years agolibrbd: partial implementation of journal client / tag allocation 7529/head
Jason Dillaman [Fri, 5 Feb 2016 04:42:25 +0000 (23:42 -0500)]
librbd: partial implementation of journal client / tag allocation

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: initial version of journal client and tag metadata
Jason Dillaman [Fri, 5 Feb 2016 03:54:10 +0000 (22:54 -0500)]
librbd: initial version of journal client and tag metadata

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agojournal: added tag support methods
Jason Dillaman [Thu, 4 Feb 2016 21:27:32 +0000 (16:27 -0500)]
journal: added tag support methods

librbd, for example, will allocate a new tag after acquiring
the exclusive lock.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agocls_journal: new get_client / client_update methods
Jason Dillaman [Fri, 5 Feb 2016 01:32:54 +0000 (20:32 -0500)]
cls_journal: new get_client / client_update methods

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agocls_journal: client registration should hold opaque data structure
Jason Dillaman [Thu, 4 Feb 2016 18:46:50 +0000 (13:46 -0500)]
cls_journal: client registration should hold opaque data structure

The opaque structure will support journal client applications to
store and retrieve complex state.

Fixes: #13298
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agocls_journal: new tag management methods and handling
Jason Dillaman [Wed, 3 Feb 2016 22:33:24 +0000 (17:33 -0500)]
cls_journal: new tag management methods and handling

In the case of librbd, a new tag will be allocated when the
exclusive lock is acquired.  All tags for the same dataset
(e.g. librbd image) will belong to the same class.  Tags are
automatically pruned on tag create / client unregister
if no other clients' commit position would require the tags.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agojournal: switched entry tags to use id instead of string
Jason Dillaman [Mon, 1 Feb 2016 23:16:38 +0000 (18:16 -0500)]
journal: switched entry tags to use id instead of string

Later commits will add the ability to allocate tags and
associate them with registered clients.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoconcurrency: make C++11 style debugging mutices
Adam C. Emerson [Mon, 14 Sep 2015 17:30:38 +0000 (13:30 -0400)]
concurrency: make C++11 style debugging mutices

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
9 years agoMerge pull request #7474 from jack-changtao/wip-cmake2
Kefu Chai [Fri, 5 Feb 2016 17:14:58 +0000 (01:14 +0800)]
Merge pull request #7474 from jack-changtao/wip-cmake2

CMake: For CMake version <= 2.8.11, use LINK_PRIVATE and LINK_PUBLIC

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #7108 from jdurgin/wip-rbd-mirroring
Jason Dillaman [Fri, 5 Feb 2016 17:02:32 +0000 (12:02 -0500)]
Merge pull request #7108 from jdurgin/wip-rbd-mirroring

rbd-mirror: daemon skeleton

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
9 years agotime: Remove constexpr from non-literal type in test 7466/head
Adam C. Emerson [Fri, 5 Feb 2016 16:22:55 +0000 (11:22 -0500)]
time: Remove constexpr from non-literal type in test

This fixes a compile error under clang and fixes another FreeBSD porting
issue.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
9 years agotime: Have skewing-now call non-skewing now
Adam C. Emerson [Mon, 1 Feb 2016 15:40:54 +0000 (10:40 -0500)]
time: Have skewing-now call non-skewing now

For the real-time clocks, Ceph's testing infrastructure likes to be able to
inject a skew. To avoid pulling CephContext into ceph_time.h these are moved to
ceph_time.cc. The original way this was done called clock_gettime in both
places.

This is an unnecessary duplication and apparently error-prone. So only call
clock_gettime from one place.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
9 years agoMerge pull request #7538 from tchaikov/wip-fix-exe-test
Loic Dachary [Fri, 5 Feb 2016 15:52:28 +0000 (22:52 +0700)]
Merge pull request #7538 from tchaikov/wip-fix-exe-test

tests: mon: "chmod +x mon-created-time.sh"

Reviewed-by: Loic Dachary <ldachary@redhat.com>
9 years agotests: mon: "chmod +x mon-created-time.sh" 7538/head
Kefu Chai [Fri, 5 Feb 2016 15:45:33 +0000 (23:45 +0800)]
tests: mon: "chmod +x mon-created-time.sh"

otherwise it always fails to run.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoos/bluestore/KernelDevice: use _exit(1) for failure injection 7486/head
Sage Weil [Fri, 5 Feb 2016 14:51:59 +0000 (09:51 -0500)]
os/bluestore/KernelDevice: use _exit(1) for failure injection

This way we don't generate a core file, which spams the log and trips up
teuthology.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: fix block device file creation 7536/head
Sage Weil [Fri, 5 Feb 2016 14:20:40 +0000 (09:20 -0500)]
os/bluestore: fix block device file creation

Just make a separate flag to indicate whether we create a block
file.  This lets us drop the weird touch in vstart.sh, and default
to creating a token 'block' file on --mkfs.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #7519 from xiexingguo/xxg-wip-finisher 7461/head
Sage Weil [Fri, 5 Feb 2016 14:17:43 +0000 (09:17 -0500)]
Merge pull request #7519 from xiexingguo/xxg-wip-finisher

librados: shutdown finisher in a more graceful way

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #7506 from liewegas/wip-bluestore-block
Sage Weil [Fri, 5 Feb 2016 14:17:15 +0000 (09:17 -0500)]
Merge pull request #7506 from liewegas/wip-bluestore-block

osd: bluestore: set default wal size; improve weird implicit block file creation logic

Reviewed-by: Loic Dachary <ldachary@redhat.com>
9 years agoMerge pull request #7503 from tchaikov/wip-cmake-spdk
Sage Weil [Fri, 5 Feb 2016 14:16:59 +0000 (09:16 -0500)]
Merge pull request #7503 from tchaikov/wip-cmake-spdk

build: spdk submodule; cmake

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #7218 from dachary/wip-13942-ceph-disk
Sage Weil [Fri, 5 Feb 2016 14:15:26 +0000 (09:15 -0500)]
Merge pull request #7218 from dachary/wip-13942-ceph-disk

ceph-disk: support bluestore

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/BlueFS: initialize super block_size earlier in mkfs 7535/head
Sage Weil [Fri, 5 Feb 2016 13:41:03 +0000 (08:41 -0500)]
os/bluestore/BlueFS: initialize super block_size earlier in mkfs

Reported-by: Dan Mick <dmick@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/kstore: kill dead code 7530/head
xie xingguo [Fri, 5 Feb 2016 09:41:07 +0000 (17:41 +0800)]
os/kstore: kill dead code

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoos/kstore: fix race condition
xie xingguo [Fri, 5 Feb 2016 09:37:49 +0000 (17:37 +0800)]
os/kstore: fix race condition

The get_omap_iterator shall check the existence of onode too,
which may race with the rename method.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoos/bluestore: fix race condition
xie xingguo [Fri, 5 Feb 2016 09:34:51 +0000 (17:34 +0800)]
os/bluestore: fix race condition

The get_omap_iterator shall check the existence of onode too, which may
race with the rename method.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoos/bluestore: remove unused intrusive member hook in enode 7531/head
Jianjian Huo [Fri, 5 Feb 2016 05:44:38 +0000 (00:44 -0500)]
os/bluestore: remove unused intrusive member hook in enode

Enode only uses intrusive unordered_set base hook, member hook is not neccesary.
This should save some memory space, when we have tons of enodes.

Signed-off-by: Jianjian Huo <samuel.huo@gmail.com>
9 years agoglobal: do not start two daemons with a single pid-file (part 2) 7463/head
Loic Dachary [Mon, 1 Feb 2016 12:32:13 +0000 (19:32 +0700)]
global: do not start two daemons with a single pid-file (part 2)

Fixes the following bugs:

* the fd is open(O_WRONLY) and cannot be read from, safe_read
  always fails and never removes the pid file.

* pidfile_open(g_conf) is close(STDOUT_FILENO) and there is a risk that
  pidfile_open gets STDOUT_FILENO only to have it closed and redirected
  to /dev/null.

* Before writing the file, ftruncate it so that overriding a file
  containing the pid 1234 with the pid 89 does not end up being
  a file with 8934.

* Before reading the file, lseek back to offset 0 otherwise it
  will read nothing.

* tests_pidfile was missing an argument when failing
  TEST_without_pidfile and killed all process with ceph in their name,
  leading to chaos and no useful error message.

* lstat(fd) cannot possibly return a result different from the one
  obtained right after the file was open, stat(path) must be used
  instead.

In addition to fixing the bugs above, refactor the pidfile.cc
implementation to:

* be systematic about error reporting (using cerr for when removing
  the pidfile because derr is not available at this point and derr
  when creating the pidfile).

* replace pidfile_open / pidfile_write with just pidfile_write since
  there never is a case when they are not used together.

More test cases are added to test_pidfile to verify the bugs above are
fixed.

http://tracker.ceph.com/issues/13422 Fixes: #13422

Signed-off-by: Loic Dachary <loic@dachary.org>
9 years agoos/kstore: assign nid for newly created onode
xie xingguo [Fri, 5 Feb 2016 04:07:33 +0000 (12:07 +0800)]
os/kstore: assign nid for newly created onode

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoos/bluestore: assign nid for newly created onode
xie xingguo [Fri, 5 Feb 2016 04:06:10 +0000 (12:06 +0800)]
os/bluestore: assign nid for newly created onode

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoMerge pull request #7522 from ktdreyer/wip-admin-build-doc-deps
Kefu Chai [Fri, 5 Feb 2016 03:31:41 +0000 (11:31 +0800)]
Merge pull request #7522 from ktdreyer/wip-admin-build-doc-deps

admin/build-doc: depend on zlib1g-dev and graphviz

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agomon: unregister command on shutdown 7504/head
renhwztetecs [Wed, 3 Feb 2016 06:43:53 +0000 (14:43 +0800)]
mon: unregister command on shutdown

unregister command on shutdown
include: "quorum enter" && "quorum exit"

Signed-off-by: huanwen ren <ren.huanwen@zte.com.cn>
9 years agosystemd/ceph-radosgw-prestart.sh: remove 7527/head
Sage Weil [Thu, 4 Feb 2016 22:48:16 +0000 (17:48 -0500)]
systemd/ceph-radosgw-prestart.sh: remove

This is unpackaged and unused.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agounittest_config: cope with $data_dir not being expanded on non-daemons 7377/head
Sage Weil [Sat, 30 Jan 2016 18:56:21 +0000 (13:56 -0500)]
unittest_config: cope with $data_dir not being expanded on non-daemons

Signed-off-by: Sage Weil <sage@redhat.com>