]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
9 years agoosdc/ObjectCacher.h: move classes to cc file 9600/head
Michal Jarzabek [Wed, 8 Jun 2016 22:16:01 +0000 (23:16 +0100)]
osdc/ObjectCacher.h: move classes to cc file

Move C_WriteCommit and C_WaitForWrite to cc file.

Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
9 years agoMerge pull request #9386 from tchaikov/wip-bye-py2.6
Loic Dachary [Wed, 8 Jun 2016 18:44:49 +0000 (20:44 +0200)]
Merge pull request #9386 from tchaikov/wip-bye-py2.6

ceph-detect-init,ceph-disk: drop support of py2.6

Reviewed-by: Loic Dachary <ldachary@redhat.com>
9 years agoMerge pull request #9476 from ceph/wip-no-unittests-in-deb
Kefu Chai [Wed, 8 Jun 2016 17:52:28 +0000 (01:52 +0800)]
Merge pull request #9476 from ceph/wip-no-unittests-in-deb

packaging: do not package unused unittests in deb

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9475 from tchaikov/wip-debian
Sage Weil [Wed, 8 Jun 2016 16:43:50 +0000 (12:43 -0400)]
Merge pull request #9475 from tchaikov/wip-debian

debian: package compressor plugins and silence dpkg-shlibdeps warnings

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9315 from ShiqiCooperation/master
Kefu Chai [Wed, 8 Jun 2016 16:34:36 +0000 (00:34 +0800)]
Merge pull request #9315 from ShiqiCooperation/master

mon: remove unused local variable "proposal_bl"

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #9023 from dillaman/wip-15791
Mykola Golub [Wed, 8 Jun 2016 15:22:17 +0000 (18:22 +0300)]
Merge pull request #9023 from dillaman/wip-15791

librbd: journal IO error results in failed assertion in AioCompletion

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
9 years agoMerge pull request #9440 from dillaman/wip-16114
Mykola Golub [Wed, 8 Jun 2016 15:21:16 +0000 (18:21 +0300)]
Merge pull request #9440 from dillaman/wip-16114

librbd: prevent error messages when journal externally disabled

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
9 years agoMerge pull request #9573 from tchaikov/wip-cmake-rocksdb
Casey Bodley [Wed, 8 Jun 2016 15:10:13 +0000 (11:10 -0400)]
Merge pull request #9573 from tchaikov/wip-cmake-rocksdb

cmake: fix rocksdb linkage with jemalloc installed but not enabled

Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 years agoMerge pull request #8008 from cernceph/dvanders_minsize
Yuri Weinstein [Wed, 8 Jun 2016 14:34:04 +0000 (07:34 -0700)]
Merge pull request #8008 from cernceph/dvanders_minsize

mon: default ec min_size to k+1

Dan van der Ster <daniel.vanderster@cern.ch>
Reviewed-by: Samuel Just <sjust@redhat.com>
9 years agoMerge pull request #8789 from vuhuong/wip-msgr-flex-prop-list
Yuri Weinstein [Wed, 8 Jun 2016 14:30:17 +0000 (07:30 -0700)]
Merge pull request #8789 from vuhuong/wip-msgr-flex-prop-list

msgr,xio: flexible Messenger::create options

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
Reviewed-by: Haomai Wang <haomai@xsky.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 years agoMerge pull request #9184 from liewegas/wip-addr-work
Yuri Weinstein [Wed, 8 Jun 2016 14:26:50 +0000 (07:26 -0700)]
Merge pull request #9184 from liewegas/wip-addr-work

msg: encode entity_addr_t with features

Reviewed-by: David Zafman <dzafman@redhat.com>
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
9 years agoMerge pull request #9486 from ifed01/wip-bluestore-stats3
Sage Weil [Wed, 8 Jun 2016 14:24:33 +0000 (10:24 -0400)]
Merge pull request #9486 from ifed01/wip-bluestore-stats3

os/bluestore: add per-store allocation/compression statistics

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9314 from xiexingguo/xxg-wip-fix-radosclient
Yuri Weinstein [Wed, 8 Jun 2016 14:21:58 +0000 (07:21 -0700)]
Merge pull request #9314 from xiexingguo/xxg-wip-fix-radosclient

RadosClient: reduce cpu burning; fix message leak

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9413 from stiopaa1/common_simplecache_addMove
Yuri Weinstein [Wed, 8 Jun 2016 14:20:42 +0000 (07:20 -0700)]
Merge pull request #9413 from stiopaa1/common_simplecache_addMove

common/simple_cache.hpp: add std::move

Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 years agoMerge pull request #9414 from branch-predictor/bp-no-invalidate-new-ptr
Yuri Weinstein [Wed, 8 Jun 2016 14:19:08 +0000 (07:19 -0700)]
Merge pull request #9414 from branch-predictor/bp-no-invalidate-new-ptr

buffer: don't invalidate crc cache of new ptr before zeroing it

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoos/BlueStore: Adds improved per-store statistics including compression ones. 9486/head
Igor Fedotov [Mon, 6 Jun 2016 16:06:48 +0000 (19:06 +0300)]
os/BlueStore: Adds improved per-store statistics including compression ones.

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoMerge pull request #9487 from ceph/wip_control_compiler_diagnostic_colors
Casey Bodley [Wed, 8 Jun 2016 14:09:47 +0000 (10:09 -0400)]
Merge pull request #9487 from ceph/wip_control_compiler_diagnostic_colors

Allows developers to turn on diagnostic colors for compiler output when stderr is not a terminal

Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 years agoos/BlueStore: Fixes fake blob length after put_ref removes all the extents
Igor Fedotov [Mon, 6 Jun 2016 15:01:15 +0000 (18:01 +0300)]
os/BlueStore: Fixes fake blob length after put_ref removes all the extents

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoos/BlueStore: Adding compressed_length field to blob and fixing corresponding issues...
Igor Fedotov [Mon, 6 Jun 2016 14:57:47 +0000 (17:57 +0300)]
os/BlueStore: Adding compressed_length field to blob and fixing corresponding issues at read path

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoos/ObjectStore: Refactor ObjectStore::statfs method to return extended statistics
Igor Fedotov [Mon, 6 Jun 2016 14:43:39 +0000 (17:43 +0300)]
os/ObjectStore: Refactor ObjectStore::statfs method to return extended statistics

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoMerge pull request #9412 from Yan-waller/yj-hwip-rgwfixglobalinit
Orit Wasserman [Wed, 8 Jun 2016 08:05:08 +0000 (10:05 +0200)]
Merge pull request #9412 from Yan-waller/yj-hwip-rgwfixglobalinit

rgw/init: add errno and remove some unnecessary temporary variables.
Reviewed-by: Orit Wasserman <owasserm@redhat.com>
9 years agoMerge pull request #9331 from stiopaa1/common_workQueue_addOverride
Kefu Chai [Wed, 8 Jun 2016 06:48:58 +0000 (14:48 +0800)]
Merge pull request #9331 from stiopaa1/common_workQueue_addOverride

common/WorkQueue.h: add override to virtual func

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #9389 from badone/wip-releases-table-plus-jewel
Kefu Chai [Wed, 8 Jun 2016 06:45:10 +0000 (14:45 +0800)]
Merge pull request #9389 from badone/wip-releases-table-plus-jewel

doc: Add Jewel header to releases table

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agocmake: disable rocksdb from using jemalloc unless asked 9573/head
Kefu Chai [Wed, 8 Jun 2016 03:44:04 +0000 (11:44 +0800)]
cmake: disable rocksdb from using jemalloc unless asked

rocksdb detects used libraries by itself. it we don't disable it
explicitly, it will pull in unresolved symbols at ceph's link
time. so we disable it unless jemalloc is enabled at configure-time.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agocmake: always set ALLOCATOR at configure time
Kefu Chai [Wed, 8 Jun 2016 03:34:44 +0000 (11:34 +0800)]
cmake: always set ALLOCATOR at configure time

so it would be easier to figure out what allocator we are using later,
instead of poking around ${Foo}_FOUND variables.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agokv: explicitly set DISABLE_JEMALLOC for rocksdb in Makefile.am.
Kefu Chai [Wed, 8 Jun 2016 03:32:10 +0000 (11:32 +0800)]
kv: explicitly set DISABLE_JEMALLOC for rocksdb in Makefile.am.

we should disable rocksdb from using jemalloc even it is installed
in the building host. as it causes unresolved symbols if ceph is not
configured to use jemalloc and hence is not linked against it.

we can pass "DISABLE_JEMALLOC=0" to rocksdb's Makefile in hope to enable
jemalloc. because rocksdb checks for jemalloc using
```
ifndef DISABLE_JEMALLOC
```

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #9529 from gregsfortytwo/wip-cephfs-doc-link
Gregory Farnum [Wed, 8 Jun 2016 00:36:46 +0000 (17:36 -0700)]
Merge pull request #9529 from gregsfortytwo/wip-cephfs-doc-link

doc: include link to CephFS' experimental features

Reviewed-by: John Spray <john.spray@redhat.com>
9 years agoMerge pull request #9551 from dillaman/wip-16178
Mykola Golub [Tue, 7 Jun 2016 20:20:03 +0000 (23:20 +0300)]
Merge pull request #9551 from dillaman/wip-16178

cls_rbd: mirror image status summary should read full directory

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
9 years agoMerge pull request #9563 from markhpc/wip-rocksdb-jemalloc
Sage Weil [Tue, 7 Jun 2016 17:15:48 +0000 (13:15 -0400)]
Merge pull request #9563 from markhpc/wip-rocksdb-jemalloc

kv: explicitly set DISABLE_JEMALLOC for rocksdb in Makefile.am.

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoexplicitly set JEMALLOC for rocksdb. 9563/head
Mark Nelson [Tue, 7 Jun 2016 16:27:17 +0000 (11:27 -0500)]
explicitly set JEMALLOC for rocksdb.

Signed-off-by: Mark Nelson <mnelson@redhat.com>
9 years agoChange implementation to use a documented CACHE variable, and allow 9487/head
J. Eric Ivancich [Mon, 6 Jun 2016 15:32:01 +0000 (11:32 -0400)]
Change implementation to use a documented CACHE variable, and allow
any of the three values supported by GCC to be used. Just as the GCC
default is 'auto', so is the default within the cmake file.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
9 years agoAdd documentation to README.cmake.md. Have cmake produce messages
J. Eric Ivancich [Fri, 3 Jun 2016 16:39:01 +0000 (12:39 -0400)]
Add documentation to README.cmake.md. Have cmake produce messages
(status or warning) when diagnostics color is requested via
-DDIAG_COLOR_ALWAYS=yes.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
9 years agoIf compiler allows it and if -DDIAG_COLOR_ALWAYS=yes is provided to
J. Eric Ivancich [Fri, 3 Jun 2016 15:44:03 +0000 (11:44 -0400)]
If compiler allows it and if -DDIAG_COLOR_ALWAYS=yes is provided to
cmake, turn on diagnostic colors always, even when compiler output
does not go directly to terminal (e.g., when piped to "less -R").

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
9 years agoMerge pull request #9370 from majianpeng/bitmap-allocator
Sage Weil [Tue, 7 Jun 2016 15:30:29 +0000 (11:30 -0400)]
Merge pull request #9370 from majianpeng/bitmap-allocator

os/bluestore/BitMapAllocator: fix free space beyond size of BitAlloca…

Reviewed-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
9 years agoMerge pull request #8657 from rzarzynski/wip-rgw-swift-auth
Matt Benjamin [Tue, 7 Jun 2016 14:36:30 +0000 (10:36 -0400)]
Merge pull request #8657 from rzarzynski/wip-rgw-swift-auth

rgw: authentication subsystem rework

Passed teuthology rgw suite.

9 years agoMerge pull request #9532 from xiexingguo/xxg-wip-fix-csumcheck
Sage Weil [Tue, 7 Jun 2016 14:21:56 +0000 (10:21 -0400)]
Merge pull request #9532 from xiexingguo/xxg-wip-fix-csumcheck

os/bluestore: make verify_csum catch unsupported csum type error

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9492 from xiexingguo/xxg-wip-fix-bitmapallocator
Sage Weil [Tue, 7 Jun 2016 14:08:16 +0000 (10:08 -0400)]
Merge pull request #9492 from xiexingguo/xxg-wip-fix-bitmapallocator

bluestore/BitAllocator: miscellaneous fixes

Reviewed-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
9 years agoMerge pull request #9528 from stiopaa1/common_ceph_json_addConsToMember
Sage Weil [Tue, 7 Jun 2016 14:05:55 +0000 (10:05 -0400)]
Merge pull request #9528 from stiopaa1/common_ceph_json_addConsToMember

common/ceph_json.h: add const to member function

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9530 from majianpeng/bluestore-cleanup
Sage Weil [Tue, 7 Jun 2016 14:05:13 +0000 (10:05 -0400)]
Merge pull request #9530 from majianpeng/bluestore-cleanup

os/bluestore/BlueStore: remove the duplicated code.

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9549 from ifed01/wip-bluestore-large-blob-fix
Sage Weil [Tue, 7 Jun 2016 14:03:35 +0000 (10:03 -0400)]
Merge pull request #9549 from ifed01/wip-bluestore-large-blob-fix

os/bluestore: Fix for blob length on large writes

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agobluestore: end scope of std::hex properly 9532/head
xie xingguo [Tue, 7 Jun 2016 00:57:45 +0000 (08:57 +0800)]
bluestore: end scope of std::hex properly

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agobluestore: make verify_csum can catch unsupported csum type error
xie xingguo [Mon, 6 Jun 2016 14:40:54 +0000 (22:40 +0800)]
bluestore: make verify_csum can catch unsupported csum type error

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agocls_rbd: mirror image status summary should read full directory 9551/head
Jason Dillaman [Tue, 7 Jun 2016 13:36:02 +0000 (09:36 -0400)]
cls_rbd: mirror image status summary should read full directory

Previously only retrieved the status for the first 64 images in
the rbd_mirroring directory.

Fixes: http://tracker.ceph.com/issues/16178
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoos/BlueStore: Fixes improper blob length assignment when creating a new blob for... 9549/head
Igor Fedotov [Tue, 7 Jun 2016 13:34:32 +0000 (16:34 +0300)]
os/BlueStore: Fixes improper blob length assignment when creating a new blob for large writes

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoos/BlueStore: Adds checkes for lextent range overlaps to _fsck
Igor Fedotov [Tue, 7 Jun 2016 13:24:13 +0000 (16:24 +0300)]
os/BlueStore: Adds checkes for lextent range overlaps to _fsck

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoMerge pull request #9533 from jjhuo/no_pagecache
Sage Weil [Tue, 7 Jun 2016 13:14:13 +0000 (09:14 -0400)]
Merge pull request #9533 from jjhuo/no_pagecache

os/bluestore: make rocksdb not to use page cache

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #8233 from majianpeng/bluestore-perfcount
Sage Weil [Tue, 7 Jun 2016 13:10:25 +0000 (09:10 -0400)]
Merge pull request #8233 from majianpeng/bluestore-perfcount

os/bluestore: perf counters

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agolibrbd: flush journal commit positions before starting op 9023/head
Jason Dillaman [Tue, 7 Jun 2016 05:01:09 +0000 (01:01 -0400)]
librbd: flush journal commit positions before starting op

Ensure all IO has been properly flushed and committed to the
journal before starting an op that could affect the IO path.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: leaked AioCompletion if IO issued after image shut down
Jason Dillaman [Tue, 7 Jun 2016 04:11:34 +0000 (00:11 -0400)]
librbd: leaked AioCompletion if IO issued after image shut down

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: resize and snap create can hang on journal replay failure
Jason Dillaman [Mon, 6 Jun 2016 23:00:47 +0000 (19:00 -0400)]
librbd: resize and snap create can hang on journal replay failure

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: missing journal state for flushing/restarting replay
Jason Dillaman [Mon, 6 Jun 2016 18:54:23 +0000 (14:54 -0400)]
librbd: missing journal state for flushing/restarting replay

Fixes: http://tracker.ceph.com/issues/16077
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: track IO in the order issued
Jason Dillaman [Fri, 13 May 2016 01:22:56 +0000 (21:22 -0400)]
librbd: track IO in the order issued

Fixes: http://tracker.ceph.com/issues/15034
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: AioCompletion should retrieve CephContext from ImageCtx
Jason Dillaman [Thu, 12 May 2016 19:15:04 +0000 (15:15 -0400)]
librbd: AioCompletion should retrieve CephContext from ImageCtx

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: Journal no longer requires AioCompletion for IO events
Jason Dillaman [Mon, 9 May 2016 22:17:49 +0000 (18:17 -0400)]
librbd: Journal no longer requires AioCompletion for IO events

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: bubble journal error up via existing AioObjectRequests
Jason Dillaman [Mon, 9 May 2016 21:59:09 +0000 (17:59 -0400)]
librbd: bubble journal error up via existing AioObjectRequests

The journal cannot directly fail the AioCompletion because it
might have one-or-more outstanding requests associated with
it.

Fixes: http://tracker.ceph.com/issues/15791
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoos/bluestore/BlueStore: remove the duplicated code. 9530/head
Jianpeng Ma [Mon, 6 Jun 2016 13:28:47 +0000 (21:28 +0800)]
os/bluestore/BlueStore: remove the duplicated code.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
9 years agoconfigure.ac,debian,rpm: do not package .a files in rpm/deb packages 9476/head
Kefu Chai [Mon, 6 Jun 2016 03:08:27 +0000 (11:08 +0800)]
configure.ac,debian,rpm: do not package .a files in rpm/deb packages

this change removes *.a from -dev or -devel packages.

* configure.ac:
  - use LT_INIT instead of AM_PROG_LIBTOOL. the later is deprecated.
  - disable static lib:
    .a static libraries not not useful, it's tricky to generate both
    static libraries and shared libraries in cmake.
    see http://www.spinics.net/lists/ceph-devel/msg30637.html
* ceph.spec.in: fedora packaging policy forbids this
  see
  https://fedoraproject.org/wiki/Packaging:Guidelines#Packaging_Static_Libraries
* debian/*-dev.install: debian does not requires this
  see
  https://www.debian.org/doc/debian-policy/ch-sharedlibs.html#s-sharedlibs-static

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agodebian: do not install *.la files
Kefu Chai [Mon, 6 Jun 2016 02:59:45 +0000 (10:59 +0800)]
debian: do not install *.la files

rationales:
* .la files are worthless
  see http://www.spinics.net/lists/ceph-devel/msg30637.html
* debian does not like it:
  see https://wiki.debian.org/ReleaseGoals/LAFileRemoval
* neither does fedora:
  https://fedoraproject.org/wiki/Packaging:Guidelines#Packaging_Static_Libraries
* also they are created by libtools, and cmake does not use libtools.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agomakefile,debian,rpm: do not package librgw_file* anymore
Kefu Chai [Fri, 3 Jun 2016 03:30:09 +0000 (11:30 +0800)]
makefile,debian,rpm: do not package librgw_file* anymore

they are unit tests for rgw.

Signed-off-by: Kefu Chai <kchai@redhat.com>
9 years agobluestore/BitAllocator: literal cleanups 9492/head
xie xingguo [Sat, 4 Jun 2016 03:55:28 +0000 (11:55 +0800)]
bluestore/BitAllocator: literal cleanups

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoMerge pull request #9296 from tchaikov/wip-test-chain_xattr
Kefu Chai [Tue, 7 Jun 2016 04:05:26 +0000 (12:05 +0800)]
Merge pull request #9296 from tchaikov/wip-test-chain_xattr

test: Fix the order of ASSERT_EQ() in chain_xattr tests

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
9 years agoMerge pull request #9361 from stiopaa1/osd_osd_override
Kefu Chai [Tue, 7 Jun 2016 04:03:19 +0000 (12:03 +0800)]
Merge pull request #9361 from stiopaa1/osd_osd_override

osd/OSD.h: add override to virtual functions

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agolibrbd: potential duplicate snap removal can result in crash 9440/head
Jason Dillaman [Tue, 7 Jun 2016 02:34:30 +0000 (22:34 -0400)]
librbd: potential duplicate snap removal can result in crash

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoos/bluestore/BlueFS: convert all read/write IO to direct IO. 9533/head
Jianjian Huo [Thu, 19 May 2016 22:11:33 +0000 (15:11 -0700)]
os/bluestore/BlueFS: convert all read/write IO to direct IO.

RocksDB is the sole user of BlueFS, after BlueFS uses direct IO,
RocksDB will have to use its own block cache to cache raw data
blocks.

Signed-off-by: Jianjian Huo <jianjian.huo@ssi.samsung.com>
9 years agoos/bluestore: convert read_buffered() to read_random() with buffered flag
Jianjian Huo [Thu, 19 May 2016 22:03:41 +0000 (15:03 -0700)]
os/bluestore: convert read_buffered() to read_random() with buffered flag

New function will handle unaligned random read for both buffered or
direct read.

Signed-off-by: Jianjian Huo <jianjian.huo@ssi.samsung.com>
9 years agoos/bluestore/BitAllocator: fix compiler warning. 9370/head
Jianpeng Ma [Mon, 6 Jun 2016 23:42:28 +0000 (07:42 +0800)]
os/bluestore/BitAllocator: fix compiler warning.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
9 years agoos/bluestore/BitMapAllocator: fix free space beyond size of BitAllocator
Jianpeng Ma [Mon, 6 Jun 2016 23:37:13 +0000 (07:37 +0800)]
os/bluestore/BitMapAllocator: fix free space beyond size of BitAllocator

When Using bitmap allocator, the osd crashed. The stack info as
follows:

ceph-osd: os/bluestore/BitAllocator.cc:910: bool
BitAllocator::is_allocated(int64_t, int64_t): Assertion `start_block >=
0 && (start_block + num_blocks <= size())' failed.
*** Caught signal (Aborted) **
in thread 7f795bbc48c0 thread_name:ceph-osd ceph version
10.2.0-1333-g3f4cf16
(3f4cf16)
1: (()+0x98e25e) [0x55e112a9625e]
2: (()+0x109f0) [0x7f795a6719f0]
3: (gsignal()+0x38) [0x7f7958542a28]
4: (abort()+0x16a) [0x7f795854462a]
5: (()+0x2d227) [0x7f795853b227]
6: (()+0x2d2d2) [0x7f795853b2d2]
7: (()+0x7eaa59) [0x55e1128f2a59]
8: (BitAllocator::free_blocks(long, long)+0x22) [0x55e1128f2e82]
9: (BitMapAllocator::insert_free(unsigned long, unsigned long)+0x22c)
[0x55e1128ef12c]
10: (BitMapAllocator::init_add_free(unsigned long, unsigned long)+0x22c)
[0x55e1128ef41c]
11: (BlueFS::_init_alloc()+0x2b9) [0x55e1128c27b9]
12: (BlueFS::mkfs(uuid_d)+0x45a) [0x55e1128d475a]
13: (BlueStore::_open_db(bool)+0xd76) [0x55e1127bbcb6]
14: (BlueStore::mkfs()+0x8b1) [0x55e1127e4f11]
15: (OSD::mkfs(CephContext, ObjectStore, std::__cxx11::basic_string,
std::allocator > const&, uuid_d, int)+0x117) [0x55e112484de7]
16: (main()+0x101f) [0x55e112425f2f]
17: (__libc_start_main()+0xf0) [0x7f795852e580]
18: (_start()+0x29) [0x55e1124684e9]

This because in BitAllocator::init will decrease size of blkdev which
make size align w/ zone-size.
The later add free extent will beyond the size.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
9 years agoos/bluestore/BlueStore: remove the unused perfcounter:l_bluestore_state_wal_done_lat 8233/head
Jianpeng Ma [Mon, 6 Jun 2016 22:29:08 +0000 (06:29 +0800)]
os/bluestore/BlueStore: remove the unused perfcounter:l_bluestore_state_wal_done_lat

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
9 years agoMerge pull request #9527 from linuxbox2/rgw-ldap
Casey Bodley [Mon, 6 Jun 2016 21:55:04 +0000 (17:55 -0400)]
Merge pull request #9527 from linuxbox2/rgw-ldap

rgw ldap: fix ldap bindpw parsing

Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 years agorgw ldap: fix ldap bindpw parsing 9527/head
Matt Benjamin [Mon, 6 Jun 2016 20:19:17 +0000 (16:19 -0400)]
rgw ldap: fix ldap bindpw parsing

Also add additional LDAP debugging output at 0, 10, and 15 to make
troubleshooting easier.

Fixes DN search issue using QE configuration of MS AD.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
9 years agodoc: include link to CephFS' experimental features 9529/head
Greg Farnum [Mon, 6 Jun 2016 21:46:44 +0000 (14:46 -0700)]
doc: include link to CephFS' experimental features

Signed-off-by: Greg Farnum <gfarnum@redhat.com>
9 years agoRocksDBStore: add option to configure number of block cache shards
Jianjian Huo [Thu, 19 May 2016 19:06:37 +0000 (12:06 -0700)]
RocksDBStore: add option to configure number of block cache shards

rocksdb_cache_size will be splitted into number of shards evenly.
More shards will reduce lock contentions.

Signed-off-by: Jianjian Huo <jianjian.huo@ssi.samsung.com>
9 years agocommon/ceph_json.h: add const to member function 9528/head
Michal Jarzabek [Mon, 6 Jun 2016 20:55:46 +0000 (21:55 +0100)]
common/ceph_json.h: add const to member function

Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
9 years agoMerge pull request #9525 from liewegas/wip-wq
Samuel Just [Mon, 6 Jun 2016 20:53:06 +0000 (13:53 -0700)]
Merge pull request #9525 from liewegas/wip-wq

unittest_workqueue: fix wq test for 0 threads

Reviewed-by: Samuel Just <sjust@redhat.com>
9 years agoMerge pull request #9517 from idryomov/wip-rbd-concurrent
Josh Durgin [Mon, 6 Jun 2016 19:57:37 +0000 (12:57 -0700)]
Merge pull request #9517 from idryomov/wip-rbd-concurrent

krbd: don't segfault if images are unmapped concurrently

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoMerge pull request #9432 from ceph/wip-16113
Samuel Just [Mon, 6 Jun 2016 19:23:46 +0000 (12:23 -0700)]
Merge pull request #9432 from ceph/wip-16113

Clean up hobject_t::max() values in decode, avoid comparing directly to get_max()

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agounittest_workqueue: fix wq test for 0 threads 9525/head
Sage Weil [Mon, 6 Jun 2016 18:20:30 +0000 (14:20 -0400)]
unittest_workqueue: fix wq test for 0 threads

In 81517aea0696e4e62c2eb0830d7b0bd378c57230 we added
support for a wq with 0 worker threads.  Fix unit test
accordingly.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9522 from ceph/wip-rocksdb
Sage Weil [Mon, 6 Jun 2016 18:18:22 +0000 (14:18 -0400)]
Merge pull request #9522 from ceph/wip-rocksdb

Makefile-rocksdb: updates

9 years agohobject: enforce max canonical value 9432/head
Samuel Just [Fri, 3 Jun 2016 00:38:05 +0000 (17:38 -0700)]
hobject: enforce max canonical value

Signed-off-by: Samuel Just <sjust@redhat.com>
9 years agosrc/: remove all direct comparisons to get_max()
Samuel Just [Fri, 3 Jun 2016 00:13:09 +0000 (17:13 -0700)]
src/: remove all direct comparisons to get_max()

get_max() now returns a special singleton type from which hobject_t's
can be assigned and constructed, but which cannot be directly compared.

This patch also cleans up all such uses to use is_max() instead.

This should prevent some issues like 16113 by preventing us from
checking for max-ness by comparing against a sentinel value.  The more
complete fix will be to make all fields of hobject_t private and enforce
a canonical max() representation that way.  That patch will be hard to
backport, however, so we'll settle for this for now.

Fixes: http://tracker.ceph.com/issues/16113
Signed-off-by: Samuel Just <sjust@redhat.com>
9 years agoos/bluestore/BlueStore: add perfcoutner:l_bluestore_write_penalty_read_ops
Jianpeng Ma [Mon, 6 Jun 2016 16:31:02 +0000 (00:31 +0800)]
os/bluestore/BlueStore: add perfcoutner:l_bluestore_write_penalty_read_ops

For write, because the align requirement it maybe need read data.
Using this perfcounter to record the read ops.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
9 years agoMerge pull request #9518 from cbodley/wip-mds-override
Sage Weil [Mon, 6 Jun 2016 16:11:34 +0000 (12:11 -0400)]
Merge pull request #9518 from cbodley/wip-mds-override

mds: fix MDRequestImpl::print override

Reviewed-by: John Spray <jspray@redhat.com>
9 years agoos/bluestore/BlueStore: add perfcounter: l_bluestore_wal_write_ops/bytes.
Jianpeng Ma [Mon, 6 Jun 2016 15:42:52 +0000 (23:42 +0800)]
os/bluestore/BlueStore: add perfcounter: l_bluestore_wal_write_ops/bytes.

Using this record wal ops and wal bytes.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
9 years agoos/bluestore/BlueStore: Add perfcounter::l_bluestore_write_pad_bytes.
Jianpeng Ma [Mon, 6 Jun 2016 15:44:32 +0000 (23:44 +0800)]
os/bluestore/BlueStore: Add perfcounter::l_bluestore_write_pad_bytes.

For write, sometimes it need padd zero. Use this perfcounter to
record the padding bytes.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
9 years agoMakefile-rocksdb: updates 9522/head
Sage Weil [Mon, 6 Jun 2016 15:16:52 +0000 (11:16 -0400)]
Makefile-rocksdb: updates

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9506 from tchaikov/wip-cmake 9519/head
Casey Bodley [Mon, 6 Jun 2016 14:06:41 +0000 (10:06 -0400)]
Merge pull request #9506 from tchaikov/wip-cmake

cmake: s/BUILD_SHARED_LIBS/ENABLE_SHARED/

Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 years agomds: fix MDRequestImpl::print override 9518/head
Casey Bodley [Mon, 6 Jun 2016 13:45:49 +0000 (09:45 -0400)]
mds: fix MDRequestImpl::print override

Fixes compiler warnings:

In file included from /home/cbodley/ceph/src/mds/Locker.cc:22:0:
/home/cbodley/ceph/src/mds/Mutation.h:161:16: warning: ‘virtual void
MutationImpl::print(std::ostream&) const’ was hidden
[-Woverloaded-virtual]
   virtual void print(ostream &out) const {
                ^
/home/cbodley/ceph/src/mds/Mutation.h:340:8: warning:   by ‘void
MDRequestImpl::print(std::ostream&)’ [-Woverloaded-virtual]
   void print(ostream &out);

Signed-off-by: Casey Bodley <cbodley@redhat.com>
9 years agoMerge pull request #9512 from Yan-waller/yj-wip-rgwdocs
Casey Bodley [Mon, 6 Jun 2016 13:37:07 +0000 (09:37 -0400)]
Merge pull request #9512 from Yan-waller/yj-wip-rgwdocs

doc/rgw: correct radosgw-admin command name

Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 years agoMerge pull request #9175 from majianpeng/bluestore-sync-wal-apply
Sage Weil [Mon, 6 Jun 2016 13:28:50 +0000 (09:28 -0400)]
Merge pull request #9175 from majianpeng/bluestore-sync-wal-apply

os/bluestore: If using sync_wal_apply, no need start wal_tp thread.

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9470 from liewegas/wip-bluestore
Sage Weil [Mon, 6 Jun 2016 13:27:40 +0000 (09:27 -0400)]
Merge pull request #9470 from liewegas/wip-bluestore

os/bluestore: shard cache to match osd op wq sharding

9 years agoMerge pull request #9516 from liewegas/wip-bluestore-fixes
Sage Weil [Mon, 6 Jun 2016 13:26:56 +0000 (09:26 -0400)]
Merge pull request #9516 from liewegas/wip-bluestore-fixes

os/bluestore: misc fixes

Reviewed-by: Sage Weil <sage@redhat.com>
9 years agobluestore: add "0x" prefix for tracing messages 9516/head
xie xingguo [Thu, 2 Jun 2016 11:29:01 +0000 (19:29 +0800)]
bluestore: add "0x" prefix for tracing messages

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agobluestore: simplify flag translation logic
xie xingguo [Sat, 4 Jun 2016 09:43:58 +0000 (17:43 +0800)]
bluestore: simplify flag translation logic

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agobluestore: fix is_allocated() method of bluestore_blob_t
xie xingguo [Sat, 4 Jun 2016 10:53:58 +0000 (18:53 +0800)]
bluestore: fix is_allocated() method of bluestore_blob_t

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoMerge pull request #9254 from branch-predictor/bp-lockdep-on-diet
Sage Weil [Mon, 6 Jun 2016 12:52:49 +0000 (08:52 -0400)]
Merge pull request #9254 from branch-predictor/bp-lockdep-on-diet

lockdep: Lockdep on diet

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agokrbd: don't segfault if images are unmapped concurrently 9517/head
Ilya Dryomov [Fri, 3 Jun 2016 15:24:48 +0000 (17:24 +0200)]
krbd: don't segfault if images are unmapped concurrently

"rbd map c" can die from a NULL dereference on any of this_pool,
this_image or this_snap in wait_for_udev_add():

    <image a is mapped>
    rbd map c
                                    rbd map b
                                    rbd unmap a
                                    rbd unmap b

However unlikely, this segfault is triggered by the rbd/concurrent.sh
workunit on a regular basis.

Similarly, "rbd showmapped" can die if an image to be listed is
unmapped.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
9 years agoMerge pull request #9384 from stiopaa1/osd_replicatedpg_override
Kefu Chai [Mon, 6 Jun 2016 12:48:30 +0000 (20:48 +0800)]
Merge pull request #9384 from stiopaa1/osd_replicatedpg_override

osd/ReplicatedPG.h: add override to virtual funct

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #9497 from Yan-waller/yj-wip-fixosdmaptools
Sage Weil [Mon, 6 Jun 2016 12:46:25 +0000 (08:46 -0400)]
Merge pull request #9497 from Yan-waller/yj-wip-fixosdmaptools

tools/osdmaptool: fix some errors

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoMerge pull request #9490 from stiopaa1/osd_replicatedpg_addConstOutputOp
Kefu Chai [Mon, 6 Jun 2016 12:46:00 +0000 (20:46 +0800)]
Merge pull request #9490 from stiopaa1/osd_replicatedpg_addConstOutputOp

osd/ReplicatedPG.h: add const to operator<< param

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #9499 from Yan-waller/yj-wip-fixrgwwarning
Sage Weil [Mon, 6 Jun 2016 12:42:45 +0000 (08:42 -0400)]
Merge pull request #9499 from Yan-waller/yj-wip-fixrgwwarning

rgw/op: kill compiling warning

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