]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
8 years agoremove autotools 11007/head
Sage Weil [Wed, 7 Sep 2016 15:50:14 +0000 (11:50 -0400)]
remove autotools

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #10963 from liewegas/wip-bluestore-sharded-extent-map
Sage Weil [Wed, 7 Sep 2016 15:36:34 +0000 (10:36 -0500)]
Merge pull request #10963 from liewegas/wip-bluestore-sharded-extent-map

os/bluestore: shard extent map

Reviewed-by: Allen Samuels <allen.samuels@sandisk.com>
8 years agoos/bluestore: assert shared blob cache cleared on split 10963/head
Sage Weil [Wed, 7 Sep 2016 14:32:50 +0000 (10:32 -0400)]
os/bluestore: assert shared blob cache cleared on split

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore: dump some stats after fsck
Sage Weil [Tue, 6 Sep 2016 22:34:34 +0000 (18:34 -0400)]
os/bluestore: dump some stats after fsck

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore: instrument onode reshard events
Sage Weil [Tue, 6 Sep 2016 21:45:04 +0000 (17:45 -0400)]
os/bluestore: instrument onode reshard events

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore: instrument transaction count
Sage Weil [Tue, 6 Sep 2016 21:44:46 +0000 (17:44 -0400)]
os/bluestore: instrument transaction count

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore: instrument big/small writes
Sage Weil [Tue, 6 Sep 2016 21:32:15 +0000 (17:32 -0400)]
os/bluestore: instrument big/small writes

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore: make blob_t unused helpers use logical length
Sage Weil [Tue, 6 Sep 2016 20:50:46 +0000 (16:50 -0400)]
os/bluestore: make blob_t unused helpers use logical length

These were taking min_alloc_size, but this can change
across mounts; better to use the logical blob length
instead (that's what we want anyway!).

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore: use block_size for allocator unit
Sage Weil [Tue, 6 Sep 2016 19:28:14 +0000 (15:28 -0400)]
os/bluestore: use block_size for allocator unit

We need to handle objects written during previous mounts
that may have had a smaller min_alloc_size.  Use
block_size, which is a safe lower bound.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore: fix fsck used_block bitmap
Sage Weil [Tue, 6 Sep 2016 19:16:52 +0000 (15:16 -0400)]
os/bluestore: fix fsck used_block bitmap

This has to be block_size bits because min_alloc_size
can vary over mounts.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore: optimize compress_extent_map
Sage Weil [Fri, 2 Sep 2016 18:08:48 +0000 (14:08 -0400)]
os/bluestore: optimize compress_extent_map

Only examine the range we just wrote to (and to the left
and right).

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore: make nid and blobid allocation less racy
Sage Weil [Thu, 1 Sep 2016 18:31:52 +0000 (14:31 -0400)]
os/bluestore: make nid and blobid allocation less racy

We could bump the _max value for a TransContext in it's
prepare state, have it wait for a long time on IO, and
let another txc allocate and commit something with
an id higher than the previous max.

Fix this first by pushing the max ids into the
TransContext where we can deal with them at commit time,
and then making _kv_sync_thread bump the committed
max in a safe way.

Note that this will need to change if/when we do
these commits in parallel.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore: shard extent map
Sage Weil [Fri, 2 Sep 2016 16:50:39 +0000 (12:50 -0400)]
os/bluestore: shard extent map

Rewrote much of the persistence of onode metadata.  The
highlights:

 - extents and blobs stored together (the blob with the
   first referencing extent).
 - extents sharded across multiple k/v keys
 - if a blob if referenced from multiple blobs, it's
   stored in the onode key (called a "spanning blob").
 - when we clone a blob we copy the metadata, but mark
   it shared and put (just) the ref_map on the underlying
   blocks in a shared_blob key.  at this point we also
   assign a globally unique id (sbid = shared blob id)
   so the key has a unique name.
 - we instantiate a SharedBlob in memory regardless of
   whether we need to load the ref_map (which is only
   needed for deallocations!).  the BufferSpace is
   attached to this SharedBlob so we get unified caching
   across clones.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #10973 from wjwithagen/wip-wjw-freebsd-cmake-excludes-2
Kefu Chai [Wed, 7 Sep 2016 15:19:47 +0000 (23:19 +0800)]
Merge pull request #10973 from wjwithagen/wip-wjw-freebsd-cmake-excludes-2

cmake: FreeBSD specific excludes in CMakeLists.txt

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #10996 from jcsp/wip-16973
John Spray [Wed, 7 Sep 2016 14:43:14 +0000 (15:43 +0100)]
Merge pull request #10996 from jcsp/wip-16973

mds: log path with CDir damage messages

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
8 years agoMerge pull request #10928 from stiopaa1/rbd_mirror_imagesyncthrottler
Sage Weil [Wed, 7 Sep 2016 14:23:02 +0000 (09:23 -0500)]
Merge pull request #10928 from stiopaa1/rbd_mirror_imagesyncthrottler

rbd_mirror/ImageSynceThrottler: move struct to .cc

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #10947 from atheism/radosgw-admin-help
Sage Weil [Wed, 7 Sep 2016 14:20:35 +0000 (09:20 -0500)]
Merge pull request #10947 from atheism/radosgw-admin-help

rgw: right parenthesis is missing in radosgw-admin help message on caps

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #10954 from stiopaa1/rgw_rgwrados_removeUnneededClassCTick
Sage Weil [Wed, 7 Sep 2016 14:18:52 +0000 (09:18 -0500)]
Merge pull request #10954 from stiopaa1/rgw_rgwrados_removeUnneededClassCTick

rgw/rgw_rados.h: remove unneeded class C_Tick

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #10967 from stiopaa1/osd_replicatedbackend_moveClasses
Sage Weil [Wed, 7 Sep 2016 14:16:55 +0000 (09:16 -0500)]
Merge pull request #10967 from stiopaa1/osd_replicatedbackend_moveClasses

osd/ReplicatedBackend: move classes to cc file

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #10971 from stiopaa1/osd_replicatedpg_moveContextClasses
Sage Weil [Wed, 7 Sep 2016 14:15:39 +0000 (09:15 -0500)]
Merge pull request #10971 from stiopaa1/osd_replicatedpg_moveContextClasses

osd/ReplicatedPG: move classes to .cc file

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #10979 from wjwithagen/wip-wjw-cephtool-test
Sage Weil [Wed, 7 Sep 2016 14:13:34 +0000 (09:13 -0500)]
Merge pull request #10979 from wjwithagen/wip-wjw-cephtool-test

qa/workunits/cephtool/test.sh: fix omission of ceph-command

8 years agoMerge pull request #10988 from jazeltq/fix-compile-error
Sage Weil [Wed, 7 Sep 2016 14:13:18 +0000 (09:13 -0500)]
Merge pull request #10988 from jazeltq/fix-compile-error

autogen: Fix rocksdb error when make dist

8 years agomds: log path with CDir damage messages 10996/head
John Spray [Tue, 6 Sep 2016 12:16:04 +0000 (13:16 +0100)]
mds: log path with CDir damage messages

Previously you just got the inode number, which
wasn't terribly useful for e.g. a missing fragment
object, as you couldn't readily resolve the parent
path.

Fixes: http://tracker.ceph.com/issues/16973
Signed-off-by: John Spray <john.spray@redhat.com>
8 years agoMerge pull request #10930 from atheism/rgw-lc-fix-sleep-time
Daniel Gryniewicz [Wed, 7 Sep 2016 13:48:39 +0000 (09:48 -0400)]
Merge pull request #10930 from atheism/rgw-lc-fix-sleep-time

rgw/rgw_lc.cc: fix sleep time according to the error message

8 years agosrc/test/objectstore/CMakeLists.txt: conditionaly build tests 10973/head
Willem Jan Withagen [Sat, 3 Sep 2016 14:29:37 +0000 (16:29 +0200)]
src/test/objectstore/CMakeLists.txt: conditionaly build tests

 - Honor WITH_AIO tests that depend on bluestore parts

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
8 years agosrc/tools/CMakeLists.txt: conditionaly build ceph-client-debug
Willem Jan Withagen [Sat, 3 Sep 2016 14:28:10 +0000 (16:28 +0200)]
src/tools/CMakeLists.txt: conditionaly build ceph-client-debug

 - Honor WITH_LIBCEPHFS

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
8 years agosrc/pybind/CMakeLists.txt: conditionaly build cython tools
Willem Jan Withagen [Sat, 3 Sep 2016 14:23:56 +0000 (16:23 +0200)]
src/pybind/CMakeLists.txt: conditionaly build cython tools

 - honor the WITH_RBD and WITH_LIBCEPHFS flags

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
8 years agosrc/CMakeLists.txt: exclude parts not buildable on FreeBSD
Willem Jan Withagen [Sat, 3 Sep 2016 14:23:02 +0000 (16:23 +0200)]
src/CMakeLists.txt: exclude parts not buildable on FreeBSD

 - FreeBSD does not have keyutils or any kernel type security store
   So using secret.c is not really relevant here
 - Have common/secret.c depend on KEYUTILS_FOUND
 - This also excludes building mount.cephfs,
   Next to the fact that this is 100% linux bases mount stuff
 - krbd is the Linux kernel version for RBD based disks, but again
   completely Linux based and porting to FreeBSD, if any, has to follow
   a different route

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
8 years agoMakfile: Fix rocksdb error when make dist 10988/head
tianqing [Tue, 6 Sep 2016 07:41:07 +0000 (15:41 +0800)]
Makfile: Fix rocksdb error when make dist

Rocksdb delete some files, so we should change another way
to get rocksdb's files.

Currently, if we do not run configure in googletest/googlemock,
we also will get a error when make dist. So fix it too.

Signed-off-by: tianqing <tianqing@unitedstack.com>
8 years agoMerge pull request #10972 from wjwithagen/wip-wjw-cmake-resolv
Kefu Chai [Wed, 7 Sep 2016 06:53:08 +0000 (14:53 +0800)]
Merge pull request #10972 from wjwithagen/wip-wjw-cmake-resolv

CmakeLists.txt: use LIB_RESOLV instead of resolv.

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #10378 from trociny/wip-14738
Jason Dillaman [Wed, 7 Sep 2016 02:50:15 +0000 (22:50 -0400)]
Merge pull request #10378 from trociny/wip-14738

librbd: optionally unregister "laggy" journal clients

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoceph_test_objectstore: test shards for longer
Sage Weil [Thu, 1 Sep 2016 21:55:37 +0000 (17:55 -0400)]
ceph_test_objectstore: test shards for longer

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoceph_test_objectstore: occasional umount/fsck/mount
Sage Weil [Thu, 1 Sep 2016 21:44:22 +0000 (17:44 -0400)]
ceph_test_objectstore: occasional umount/fsck/mount

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoceph_test_objectstore: add SyntheticMatrixSharding
Sage Weil [Fri, 2 Sep 2016 16:41:54 +0000 (12:41 -0400)]
ceph_test_objectstore: add SyntheticMatrixSharding

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #10870 from ceph/wip_build_cls_rbd
Casey Bodley [Tue, 6 Sep 2016 21:47:32 +0000 (17:47 -0400)]
Merge pull request #10870 from ceph/wip_build_cls_rbd

cmake: add dependency from ceph_smalliobenchrbd to cls libraries

Reviewed-by: Jason Dillaman <jdillama@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #10912 from stiopaa1/journal_journaltimer_moveCRemoveSet
Jason Dillaman [Tue, 6 Sep 2016 20:20:54 +0000 (16:20 -0400)]
Merge pull request #10912 from stiopaa1/journal_journaltimer_moveCRemoveSet

journal: move JournalTrimmer::C_RemoveSet struct

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoAdd dependencies from ceph_smalliobenchrbd on cls_rbd, cls_journal, 10870/head
J. Eric Ivancich [Tue, 6 Sep 2016 17:27:43 +0000 (13:27 -0400)]
Add dependencies from ceph_smalliobenchrbd on cls_rbd, cls_journal,
and cls_lock.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
8 years agoMerge pull request #10984 from ceph/wip-kfsx-exclusive-lock
Jason Dillaman [Tue, 6 Sep 2016 15:39:32 +0000 (11:39 -0400)]
Merge pull request #10984 from ceph/wip-kfsx-exclusive-lock

test/librbd/fsx: enable exclusive-lock feature in krbd mode

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #10964 from liewegas/wip-bluefs-compaction
Sage Weil [Tue, 6 Sep 2016 15:10:43 +0000 (10:10 -0500)]
Merge pull request #10964 from liewegas/wip-bluefs-compaction

os/bluestore/BlueFS: fix async compaction logging bug

8 years agoMerge pull request #10966 from liewegas/wip-bluefs-runway
Sage Weil [Tue, 6 Sep 2016 14:12:53 +0000 (09:12 -0500)]
Merge pull request #10966 from liewegas/wip-bluefs-runway

os/bluestore/BlueFS: factor unflushed log into runway calculation

Reviewed-by: Varada Kari <varada.kari@sandisk.com>
Reviewed-by: Somnath Roy <somnath.roy@sandisk.com>
8 years agoMerge pull request #10970 from xiexingguo/xxg-wip-honour-alloweio-flag
Sage Weil [Tue, 6 Sep 2016 14:11:28 +0000 (09:11 -0500)]
Merge pull request #10970 from xiexingguo/xxg-wip-honour-alloweio-flag

os/bluestore: honour allow-eio flag; use global compressor if possible

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #10974 from dillaman/wip-17210
Mykola Golub [Tue, 6 Sep 2016 12:38:43 +0000 (15:38 +0300)]
Merge pull request #10974 from dillaman/wip-17210

librbd: potential double-unwatch of watch handle upon error

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
8 years agomds: s/used_ions/used_inos/
John Spray [Tue, 6 Sep 2016 12:07:38 +0000 (13:07 +0100)]
mds: s/used_ions/used_inos/

Signed-off-by: John Spray <john.spray@redhat.com>
8 years agoMerge pull request #10774 from renhwztetecs/renhw-wip-cephfs-python-umount
John Spray [Tue, 6 Sep 2016 11:51:26 +0000 (12:51 +0100)]
Merge pull request #10774 from renhwztetecs/renhw-wip-cephfs-python-umount

libcephfs: add unmount function in cephfs.pyx

Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Ramana Raja <rraja@redhat.com>
8 years agoMerge pull request #10914 from batrick/mds-no-maxmds
John Spray [Tue, 6 Sep 2016 11:50:20 +0000 (12:50 +0100)]
Merge pull request #10914 from batrick/mds-no-maxmds

mds: remove max_mds config option

Reviewed-by: John Spray <john.spray@redhat.com>
8 years agoMerge pull request #10922 from ceph/wip-jlayton-statx
jtlayton [Tue, 6 Sep 2016 11:04:51 +0000 (07:04 -0400)]
Merge pull request #10922 from ceph/wip-jlayton-statx

First pile of statx patches

8 years agotest/cephfs: add mount&&unmount test 10774/head
huanwen ren [Tue, 30 Aug 2016 07:06:26 +0000 (15:06 +0800)]
test/cephfs: add mount&&unmount test

Signed-off-by: huanwen ren <ren.huanwen@zte.com.cn>
8 years agoMerge pull request #10981 from SUSE/wip-fix-install-deps
Nathan Cutler [Mon, 5 Sep 2016 16:17:52 +0000 (18:17 +0200)]
Merge pull request #10981 from SUSE/wip-fix-install-deps

build/ops: fix /etc/os-release parsing in install-deps.sh

Reviewed-by: Jan Fajerski <jfajerski@suse.com>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
8 years agobuild/ops: fix /etc/os-release parsing in install-deps.sh 10981/head
Nathan Cutler [Mon, 5 Sep 2016 13:40:33 +0000 (15:40 +0200)]
build/ops: fix /etc/os-release parsing in install-deps.sh

85a370e35fc42031a7f7e24dea9e50a649c0f309 introduced the DISTRO variable whose
value was obtained by parsing /etc/os-release like this:

DISTRO=$(grep  "^ID=" /etc/os-release | sed "s/ID=//")

This unfortunately picks up the double-quotes, so on a CentOS system DISTRO
will be equal to '"centos"'.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
8 years agoos/bluestore: use global compressor if possible 10970/head
xie xingguo [Sat, 3 Sep 2016 09:51:19 +0000 (17:51 +0800)]
os/bluestore: use global compressor if possible

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agoMerge pull request #10969 from xiexingguo/xxg-wip-fix-cache-logger
Igor Fedotov [Mon, 5 Sep 2016 11:51:59 +0000 (14:51 +0300)]
Merge pull request #10969 from xiexingguo/xxg-wip-fix-cache-logger

os/bluestore: replace store with logger in Cache

Reviewed-by: Igor Fedotov <ifedotov@mirantis.com>
8 years agoqa/workunits/cephtool/test.sh: fix omision of ceph-command 10979/head
Willem Jan Withagen [Mon, 5 Sep 2016 10:04:55 +0000 (12:04 +0200)]
qa/workunits/cephtool/test.sh: fix omision of ceph-command

 - The script fails with these commands, but not for the correct reason.

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
8 years agorbd-mirror: option to automatically resync after journal client disconnect 10378/head
Mykola Golub [Wed, 10 Aug 2016 10:46:46 +0000 (13:46 +0300)]
rbd-mirror: option to automatically resync after journal client disconnect

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
8 years agorbd-mirror: stop replay when client is disconnected
Mykola Golub [Wed, 27 Jul 2016 10:45:32 +0000 (13:45 +0300)]
rbd-mirror: stop replay when client is disconnected

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
8 years agorbd-mirror: resync was possible only when image replayer start had succeeded
Mykola Golub [Wed, 10 Aug 2016 08:22:16 +0000 (11:22 +0300)]
rbd-mirror: resync was possible only when image replayer start had succeeded

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
8 years agorbd-mirror: decode_client_meta should return false on error
Mykola Golub [Tue, 26 Jul 2016 13:10:30 +0000 (16:10 +0300)]
rbd-mirror: decode_client_meta should return false on error

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
8 years agorbd: new command to disconnect journal client
Mykola Golub [Wed, 3 Aug 2016 11:19:51 +0000 (14:19 +0300)]
rbd: new command to disconnect journal client

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
8 years agolibrbd: optionally flag "laggy" journal clients disconnected
Mykola Golub [Wed, 27 Jul 2016 11:06:42 +0000 (14:06 +0300)]
librbd: optionally flag "laggy" journal clients disconnected

Fixes: http://tracker.ceph.com/issues/14738
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
8 years agojournal: allow to trim journal for "laggy" clients
Mykola Golub [Wed, 13 Jul 2016 12:49:40 +0000 (15:49 +0300)]
journal: allow to trim journal for "laggy" clients

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
8 years agocls/journal: add async client_update_state method
Mykola Golub [Wed, 27 Jul 2016 10:42:19 +0000 (13:42 +0300)]
cls/journal: add async client_update_state method

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
8 years agoMerge pull request #9592 from trociny/wip-15632
Jason Dillaman [Mon, 5 Sep 2016 01:54:36 +0000 (21:54 -0400)]
Merge pull request #9592 from trociny/wip-15632

librbd: API methods to directly acquire and release the exclusive lock

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agolibrbd: potential double-unwatch of watch handle upon error 10974/head
Jason Dillaman [Sun, 4 Sep 2016 14:48:48 +0000 (10:48 -0400)]
librbd: potential double-unwatch of watch handle upon error

Fixes: http://tracker.ceph.com/issues/17210
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #9758 from SUSE/wip-btrfs-not-ideal
Loic Dachary [Sun, 4 Sep 2016 17:58:19 +0000 (19:58 +0200)]
Merge pull request #9758 from SUSE/wip-btrfs-not-ideal

doc: remove btrfs contradiction

Reviewed-by: Loic Dachary <ldachary@redhat.com>
8 years agoMerge pull request #10469 from wjwithagen/wip-wjw-compileflag
Kefu Chai [Sun, 4 Sep 2016 03:10:34 +0000 (11:10 +0800)]
Merge pull request #10469 from wjwithagen/wip-wjw-compileflag

cmake: supress more warnings

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoosd/ReplicatedPG: move classes to .cc file 10971/head
Michal Jarzabek [Sat, 3 Sep 2016 11:33:46 +0000 (12:33 +0100)]
osd/ReplicatedPG: move classes to .cc file

Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
8 years agoCmakeLists.txt: use LIB_RESOLV instead of resolv. 10972/head
Willem Jan Withagen [Sat, 3 Sep 2016 13:58:20 +0000 (15:58 +0200)]
CmakeLists.txt: use LIB_RESOLV instead of resolv.

 - FreeBSD does not have a separate libresolv, but keeps it in
   libc

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
8 years agoos/bluestore: honour allow-eio flag during read
xie xingguo [Sat, 3 Sep 2016 08:49:29 +0000 (16:49 +0800)]
os/bluestore: honour allow-eio flag during read

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agoos/bluestore: check iterator before using during fsck 10969/head
xie xingguo [Sat, 3 Sep 2016 03:38:00 +0000 (11:38 +0800)]
os/bluestore: check iterator before using during fsck

Also drop redundant checking.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agoos/bluestore: replace store with logger in Cache
xie xingguo [Sat, 3 Sep 2016 01:06:43 +0000 (09:06 +0800)]
os/bluestore: replace store with logger in Cache

As what we really want is to log cache-related statistics.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agoosd/ReplicatedBackend: move classes to cc file 10967/head
Michal Jarzabek [Fri, 2 Sep 2016 20:32:34 +0000 (21:32 +0100)]
osd/ReplicatedBackend: move classes to cc file

Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
8 years agoos/bluestore/BlueFS: factor unflushed log into runway calculation 10966/head
Sage Weil [Fri, 2 Sep 2016 19:31:20 +0000 (15:31 -0400)]
os/bluestore/BlueFS: factor unflushed log into runway calculation

Include the size of the in-memory buffer we haven't yet flushed
into the runway calculation when deciding whether to allocate
more log space.

Reported-by: Somnath Roy <somnath.roy@sandisk.com>
Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #10945 from dillaman/wip-17188
Mykola Golub [Fri, 2 Sep 2016 19:00:41 +0000 (22:00 +0300)]
Merge pull request #10945 from dillaman/wip-17188

librbd: deadlock when replaying journal during image open

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
8 years agoSQUASH: client: request all shared caps if ctime was requested 10922/head
Jeff Layton [Fri, 2 Sep 2016 18:27:08 +0000 (14:27 -0400)]
SQUASH: client: request all shared caps if ctime was requested

Much like the change_attr, ctime changes can potentially be cached on
clients. Request all shared caps if the want mask specifies the ctime.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
8 years agoMerge pull request #10746 from ceph/wip-async-default
Sage Weil [Fri, 2 Sep 2016 18:02:57 +0000 (13:02 -0500)]
Merge pull request #10746 from ceph/wip-async-default

msg: make async backend default

8 years agoscripts/bdev_grep: parse bluefs style extents too 10964/head
Sage Weil [Fri, 2 Sep 2016 16:07:10 +0000 (12:07 -0400)]
scripts/bdev_grep: parse bluefs style extents too

(they use + instead of ~)

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos/bluestore/BlueFS: fix async compaction txn
Sage Weil [Fri, 2 Sep 2016 16:06:49 +0000 (12:06 -0400)]
os/bluestore/BlueFS: fix async compaction txn

Our transaction writes are labeled with a seq and uuid
to avoid replaying over garbage.

Two bugs, one real, one potential.

1) The second async compaction transactoin didn't have
its seq and uuid set, so replay always stopped.

2) We were writing two separate transactions, one with
all the new metadata, and the next one with a jump to
the new log offset.  If the first write completed but
it was torn and the second transaction didn't hit disk,
we might see an old transaction with seq == 2 and the
same uuid and replay that instead.

Fix both of these by making the async log txn one single
transaction that jumps directly to the new log offset.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #10938 from liewegas/wip-bluestore-csum-error
Sage Weil [Fri, 2 Sep 2016 16:23:40 +0000 (11:23 -0500)]
Merge pull request #10938 from liewegas/wip-bluestore-csum-error

os/bluestore: fix/improve csum error message

Reviewed-by: Igor Fedotov <ifedotov@mirantis.com>
8 years agoMerge pull request #10961 from xiexingguo/xxg-wip-bluestore-09-02
Sage Weil [Fri, 2 Sep 2016 16:23:27 +0000 (11:23 -0500)]
Merge pull request #10961 from xiexingguo/xxg-wip-bluestore-09-02

os/bluestore: add cache-related stats

Reviewed-by: Igor Fedotov <ifedotov@mirantis.com>
Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #10953 from liewegas/wip-bluestore-fixes
Igor Fedotov [Fri, 2 Sep 2016 15:26:07 +0000 (18:26 +0300)]
Merge pull request #10953 from liewegas/wip-bluestore-fixes

os/bluestore: misc fixes

Reviewed- by: Igor Fedotov ifedotov@mirantis.com

8 years agotest/librbd/fsx: enable exclusive-lock feature in krbd mode 10984/head
Ilya Dryomov [Thu, 18 Aug 2016 10:14:22 +0000 (12:14 +0200)]
test/librbd/fsx: enable exclusive-lock feature in krbd mode

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
8 years agoSQUASH: mds/client: add routines to copy to/from ceph_mds_request_head_legacy
Jeff Layton [Fri, 2 Sep 2016 12:36:59 +0000 (08:36 -0400)]
SQUASH: mds/client: add routines to copy to/from ceph_mds_request_head_legacy

Signed-off-by: Jeff Layton <jlayton@redhat.com>
8 years agoos/bluestore: trivial cleanups 10961/head
xie xingguo [Fri, 2 Sep 2016 10:10:33 +0000 (18:10 +0800)]
os/bluestore: trivial cleanups

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agoos/bluestore: don't overwrite type if it does already exist and at desired type
xie xingguo [Fri, 2 Sep 2016 09:48:39 +0000 (17:48 +0800)]
os/bluestore: don't overwrite type if it does already exist and at desired type

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agosrc/CMakeLists.txt: -Woverloaded-virtual is already included in -Wall on Clang 10469/head
Willem Jan Withagen [Thu, 28 Jul 2016 09:25:03 +0000 (11:25 +0200)]
src/CMakeLists.txt: -Woverloaded-virtual is already included in -Wall on Clang

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
8 years agoMerge pull request #10956 from ceph/wip-cmake
Kefu Chai [Fri, 2 Sep 2016 09:22:37 +0000 (17:22 +0800)]
Merge pull request #10956 from ceph/wip-cmake

cmake: pass -DINTEL* to gf-complete cflags

Reviewed-by: Loic Dachary <ldachary@redhat.com>
8 years agoos/bluestore: conditional checking label of bluefs devices
xie xingguo [Fri, 2 Sep 2016 08:45:05 +0000 (16:45 +0800)]
os/bluestore: conditional checking label of bluefs devices

As NVMe devices may not support to do so.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agocmake: pass -DINTEL* to gf-complete cflags 10956/head
Kefu Chai [Fri, 2 Sep 2016 06:38:21 +0000 (14:38 +0800)]
cmake: pass -DINTEL* to gf-complete cflags

* in addition to the -march=foobar, we also need to pass -DFOOBAR to
  gf-complete sources' cflags, so that the SIMD instructions can be
  generated as expected.
* also extract the compiler support for instruction extensions detections
  into SIMDExt.cmake.
* and only check the compiler support if CMAKE_SYSTEM_PROCESSOR matches
  with the instruction-set/arch to be checked.

Signed-off-by: tone.zhang <tone.zhang@linaro.org>
Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #10934 from tchaikov/wip-kill-warnings
Brad Hubbard [Fri, 2 Sep 2016 07:32:46 +0000 (17:32 +1000)]
Merge pull request #10934 from tchaikov/wip-kill-warnings

Wip kill warnings

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
8 years agoos/bluestore: end scope of std::hex properly
xie xingguo [Fri, 2 Sep 2016 03:37:05 +0000 (11:37 +0800)]
os/bluestore: end scope of std::hex properly

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agoos/bluestore: add onode/buffer cache statistics
xie xingguo [Fri, 2 Sep 2016 03:33:33 +0000 (11:33 +0800)]
os/bluestore: add onode/buffer cache statistics

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agoSQUASH: client: querying for stx_version field requires getting all shared caps
Jeff Layton [Thu, 1 Sep 2016 22:49:46 +0000 (18:49 -0400)]
SQUASH: client: querying for stx_version field requires getting all shared caps

Otherwise, someone could potentially query for just CEPH_STATX_VERSION,
and see it as unchanged, even when there are changes buffered up on
other clients.

By doing this, I don't think we'll incur any perf hit in the common use
case which is ganesha querying for all attributes. We are adding Xs
here, but unless there is a lot of xattr activity I don't think that
will generally cause a lot of exclusive cap recalls.

Also, we don't actually need AUTH caps to fetch CEPH_STATX_RDEV, remove
that from statx_to_mask. PIN is sufficient there.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
8 years agorgw/rgw_rados.h: remove unneeded class C_Tick 10954/head
Michal Jarzabek [Thu, 1 Sep 2016 20:27:22 +0000 (21:27 +0100)]
rgw/rgw_rados.h: remove unneeded class C_Tick

Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
8 years agoSQUASH: mds/client: don't get clever with ceph_mds_request_head_legacy encode/decode
Jeff Layton [Thu, 1 Sep 2016 18:18:55 +0000 (14:18 -0400)]
SQUASH: mds/client: don't get clever with ceph_mds_request_head_legacy encode/decode

As requested by Greg...

Declare a legacy object on the stack, and do an extra copy to/from it.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
8 years agoSQUASH: client: always take a change_attr update from the server if it's newer
Jeff Layton [Thu, 1 Sep 2016 15:16:06 +0000 (11:16 -0400)]
SQUASH: client: always take a change_attr update from the server if it's newer

I think this is more correct in the client. If we see a newer
change_attr, then we always want to take note of that fact, even if
we have the right caps.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
8 years agoSQUASH: Revert "mds: ensure that change_attr reflects metadata changes on clients...
Jeff Layton [Thu, 1 Sep 2016 15:16:05 +0000 (11:16 -0400)]
SQUASH: Revert "mds: ensure that change_attr reflects metadata changes on clients that hold CAP_FILE_EXCL"

This reverts commit 26ab2fa10041ce34b25aa1535715131a2709a27f.

I don't think this is necessary. We don't necessarily need to increment
the change attribute on every change, as long as we ensure that it gets
bumped iff there were changes since the last time you queried for it.

IOW: it's ok to have a single change_attr change encompass a large set
of changes, as long as you ensure that that it is larger by at least 1
after all of those changes.

In order to look at (and potentially cache) other attributes under that
change_attribute (e.g. owner or mode), you need to recall any outstanding
exclusive caps for those attrs. That causes their change_attrs to be
synched to the largest, which is enough to ensure that it changed in
some way.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
8 years agoSQUASH: client: request AUTH caps on the directory during create if we'll need to...
Jeff Layton [Thu, 1 Sep 2016 18:35:59 +0000 (14:35 -0400)]
SQUASH: client: request AUTH caps on the directory during create if we'll need to check perms locally

Signed-off-by: Jeff Layton <jlayton@redhat.com>
8 years agoMerge pull request #10517 from wjwithagen/wip-wjw-freebsd-cmake-execludes
Kefu Chai [Thu, 1 Sep 2016 17:38:44 +0000 (01:38 +0800)]
Merge pull request #10517 from wjwithagen/wip-wjw-freebsd-cmake-execludes

cmake: FreeBSD specific excludes in CMakeLists.txt files

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoceph_test_objectstore: fix TryMoveRename test 10953/head
Sage Weil [Thu, 1 Sep 2016 16:37:27 +0000 (12:37 -0400)]
ceph_test_objectstore: fix TryMoveRename test

Put the objects in the right pool.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoceph_test_objectstore: clean up Rename test a bit
Sage Weil [Thu, 1 Sep 2016 16:04:27 +0000 (12:04 -0400)]
ceph_test_objectstore: clean up Rename test a bit

Drop useless remove calls.

Leave in the no-op setattr call since it triggered a
bluestore bug :)

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoceph_test_objectstore: assert umount succeeds
Sage Weil [Wed, 31 Aug 2016 20:49:13 +0000 (16:49 -0400)]
ceph_test_objectstore: assert umount succeeds

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