]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
9 years agounittest_bluestore_types: run csum tests on all algorithms
Sage Weil [Thu, 19 May 2016 11:40:33 +0000 (07:40 -0400)]
unittest_bluestore_types: run csum tests on all algorithms

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: blob_t: add xxhash64
Sage Weil [Thu, 19 May 2016 11:40:13 +0000 (07:40 -0400)]
os/bluestore/bluestore_types: blob_t: add xxhash64

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agocommon/Checksummer: add xxhash64
Sage Weil [Thu, 19 May 2016 11:19:36 +0000 (07:19 -0400)]
common/Checksummer: add xxhash64

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: drop old Checksummer
Sage Weil [Thu, 19 May 2016 10:55:43 +0000 (06:55 -0400)]
os/bluestore: drop old Checksummer

blob_t uses it directly via the static methods.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: use blob_t csum methods
Sage Weil [Thu, 19 May 2016 10:53:29 +0000 (06:53 -0400)]
os/bluestore: use blob_t csum methods

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: simpler {calc,verify}_csum methods
Sage Weil [Thu, 19 May 2016 10:51:09 +0000 (06:51 -0400)]
os/bluestore/bluestore_types: simpler {calc,verify}_csum methods

This keeps the CSUM_* definitions local to blob_t, and avoids passing
arguments around.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: defer csum calcuations sometimes
Sage Weil [Thu, 19 May 2016 10:25:23 +0000 (06:25 -0400)]
os/bluestore: defer csum calcuations sometimes

When we are doing a partial chunk overwrite, we need to defer the csum_data
update.  Otherwise, another write in the same transaction might need to
read part of the chunk, not find the data in the buffer cache, read it
from disk, and fail the csum check.

This patch defers the calculation until after we've build the transaction
and are about to commit to the kv store.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agodoc/dev/bluestore: update based on Igor's feedback
Sage Weil [Thu, 19 May 2016 10:25:43 +0000 (06:25 -0400)]
doc/dev/bluestore: update based on Igor's feedback

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: Fixes some issues when using Buffer Cache from _do_read and improves...
Igor Fedotov [Tue, 17 May 2016 15:22:15 +0000 (18:22 +0300)]
os/bluestore: Fixes some issues when using Buffer Cache from _do_read and improves test coverage

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoos/bluestore: Fixes invalid assert in Buffer::truncate
Igor Fedotov [Tue, 17 May 2016 14:58:11 +0000 (17:58 +0300)]
os/bluestore: Fixes invalid assert in  Buffer::truncate

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agotest/objectstore: Adds trivial test case to verify buffer cache use in bluestore
Igor Fedotov [Mon, 16 May 2016 17:55:55 +0000 (20:55 +0300)]
test/objectstore: Adds trivial test case to verify buffer cache use in bluestore

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoAdds cached buffer processing for _do_read
Igor Fedotov [Mon, 16 May 2016 16:53:37 +0000 (19:53 +0300)]
Adds cached buffer processing for _do_read

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoos/bluestore: add a very simple (incomplete) buffer cache
Sage Weil [Thu, 19 May 2016 10:23:39 +0000 (06:23 -0400)]
os/bluestore: add a very simple (incomplete) buffer cache

Attach it to each onode.

There is no trimming yet.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: make tail cache a bit smarter
Sage Weil [Mon, 16 May 2016 00:30:44 +0000 (20:30 -0400)]
os/bluestore: make tail cache a bit smarter

This is really a stop-gap.  Since we are doing reads in the pre-commit
write path, we need to have some sort of buffer cache so that a sequence
of writes in the same transaction can remain coherent (the second write
must "read" the first write in order to fill out the chunk).

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: dump tail_bl state in _dump_onode
Sage Weil [Mon, 16 May 2016 00:25:54 +0000 (20:25 -0400)]
os/bluestore: dump tail_bl state in _dump_onode

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: Adds lacking methods in bluestore_compression_header_t to fix encoder...
Igor Fedotov [Mon, 16 May 2016 11:27:24 +0000 (14:27 +0300)]
os/bluestore: Adds lacking methods in bluestore_compression_header_t to fix encoder test build

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoos/bluestore: add decompressor call to read path
Igor Fedotov [Fri, 13 May 2016 15:18:12 +0000 (18:18 +0300)]
os/bluestore: add decompressor call to read path

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoos/bluestore/bluestore_types: add bluestore_compression_header_t
Igor Fedotov [Sat, 14 May 2016 12:53:59 +0000 (08:53 -0400)]
os/bluestore/bluestore_types: add bluestore_compression_header_t

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agocompressor: Refactor to allow bufferlist::iterator as an input
Igor Fedotov [Fri, 13 May 2016 15:16:47 +0000 (18:16 +0300)]
compressor: Refactor to allow bufferlist::iterator as an input

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoos/bluestore: new write path
Sage Weil [Sat, 14 May 2016 12:48:47 +0000 (08:48 -0400)]
os/bluestore: new write path

- simplified wal_op_t.  we still have overlays in there, although that
  might need to get removed soon too.
- init_csum cleanup
- totally new write path

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: verify blob ref_maps during fsck
Sage Weil [Sat, 14 May 2016 12:37:16 +0000 (08:37 -0400)]
os/bluestore: verify blob ref_maps during fsck

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: return EIO on csum verification error
Sage Weil [Sat, 14 May 2016 12:40:54 +0000 (08:40 -0400)]
os/bluestore: return EIO on csum verification error

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: simplify _verify_csum
Sage Weil [Sat, 14 May 2016 12:39:45 +0000 (08:39 -0400)]
os/bluestore: simplify _verify_csum

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: cleanup _read_extent_sparse
Sage Weil [Sat, 14 May 2016 12:39:34 +0000 (08:39 -0400)]
os/bluestore: cleanup _read_extent_sparse

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluetores: fix checksum verification
Igor Fedotov [Sat, 14 May 2016 12:45:47 +0000 (08:45 -0400)]
os/bluetores: fix checksum verification

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoos/bluestore: read patch code cleanup
Igor Fedotov [Thu, 12 May 2016 13:26:10 +0000 (16:26 +0300)]
os/bluestore: read patch code cleanup

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agoos/bluestore: replace _do_read with ExtentManager version
Igor Fedotov [Thu, 12 May 2016 21:48:59 +0000 (17:48 -0400)]
os/bluestore: replace _do_read with ExtentManager version

Replaces _do_read with he corresponding code from ExtentManager to support csum verification & decompression.

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
9 years agodoc/dev/bluestore: write path notes
Sage Weil [Sat, 14 May 2016 12:23:15 +0000 (08:23 -0400)]
doc/dev/bluestore: write path notes

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoceph_test_objectstore: new test SmallBlockWrites
Sage Weil [Fri, 13 May 2016 21:20:44 +0000 (17:20 -0400)]
ceph_test_objectstore: new test SmallBlockWrites

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoceph_test_objectstore: add BigWriteBigZero test
Sage Weil [Fri, 13 May 2016 21:41:17 +0000 (17:41 -0400)]
ceph_test_objectstore: add BigWriteBigZero test

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoceph_test_objectstore: expand SimpleObjectTest a bit
Sage Weil [Fri, 13 May 2016 16:51:28 +0000 (12:51 -0400)]
ceph_test_objectstore: expand SimpleObjectTest a bit

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: define min_alloc_size globally
Sage Weil [Thu, 12 May 2016 17:31:09 +0000 (13:31 -0400)]
os/bluestore: define min_alloc_size globally

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: define block_size, block_mask, block_order globally
Sage Weil [Thu, 12 May 2016 17:30:25 +0000 (13:30 -0400)]
os/bluestore: define block_size, block_mask, block_order globally

These don't change, no need to declare them all over the place.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: change block_size -> chunk_size for _pad_zero* methods
Sage Weil [Thu, 12 May 2016 17:28:09 +0000 (13:28 -0400)]
os/bluestore: change block_size -> chunk_size for _pad_zero* methods

The granularity is not the same as block_size.. depends on what the caller
wants.  Use a more generic name.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: use _txc_finalize_kv for wal allocation updates
Sage Weil [Wed, 11 May 2016 19:45:45 +0000 (15:45 -0400)]
os/bluestore: use _txc_finalize_kv for wal allocation updates

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: pass txc to _do_wal_op
Sage Weil [Wed, 11 May 2016 19:30:14 +0000 (15:30 -0400)]
os/bluestore: pass txc to _do_wal_op

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: rename _txc_update_fm -> _txc_finalize_kv
Sage Weil [Wed, 11 May 2016 19:11:13 +0000 (15:11 -0400)]
os/bluestore: rename _txc_update_fm -> _txc_finalize_kv

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/BlueStore: break _txc_finalize into _txc_write_nodes
Sage Weil [Wed, 11 May 2016 19:06:21 +0000 (15:06 -0400)]
os/bluestore/BlueStore: break _txc_finalize into _txc_write_nodes

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: dump csums in _dump_onode/bnode
Sage Weil [Sat, 14 May 2016 12:32:22 +0000 (08:32 -0400)]
os/bluestore: dump csums in _dump_onode/bnode

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: _dump_bnode
Sage Weil [Wed, 11 May 2016 20:21:48 +0000 (16:21 -0400)]
os/bluestore: _dump_bnode

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: nicer operator<< for blob_t
Sage Weil [Sat, 14 May 2016 12:31:24 +0000 (08:31 -0400)]
os/bluestore/bluestore_types: nicer operator<< for blob_t

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: add onode_t::compress_extent_map()
Sage Weil [Fri, 13 May 2016 21:07:10 +0000 (17:07 -0400)]
os/bluestore/bluestore_types: add onode_t::compress_extent_map()

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: blob_t convenience methods
Sage Weil [Sat, 14 May 2016 12:29:42 +0000 (08:29 -0400)]
os/bluestore/bluestore_types: blob_t convenience methods

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: FLAG_IMMUTABLE -> FLAG_MUTABLE
Sage Weil [Wed, 11 May 2016 20:23:50 +0000 (16:23 -0400)]
os/bluestore/bluestore_types: FLAG_IMMUTABLE -> FLAG_MUTABLE

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: blob_t::is_unreferenced() method
Sage Weil [Wed, 11 May 2016 20:24:36 +0000 (16:24 -0400)]
os/bluestore/bluestore_types: blob_t::is_unreferenced() method

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: add blob_t::has_any_lextents
Sage Weil [Tue, 10 May 2016 18:49:15 +0000 (14:49 -0400)]
os/bluestore/bluestore_types: add blob_t::has_any_lextents

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: test {find,seek}_lextents
Sage Weil [Tue, 10 May 2016 18:48:40 +0000 (14:48 -0400)]
os/bluestore/bluestore_types: test {find,seek}_lextents

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: blob_t csum additions
Sage Weil [Tue, 10 May 2016 17:26:30 +0000 (13:26 -0400)]
os/bluestore/bluestore_types: blob_t csum additions

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: blob_t::init_csum() helper
Sage Weil [Tue, 10 May 2016 00:34:53 +0000 (20:34 -0400)]
os/bluestore: blob_t::init_csum() helper

Set up the checksum parameters and size csum_data appropriately.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: track csum config options
Sage Weil [Wed, 11 May 2016 20:26:15 +0000 (16:26 -0400)]
os/bluestore: track csum config options

Use global csum_type member to drive new checksum calcuations.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: instantiate a Checksummer
Sage Weil [Tue, 10 May 2016 00:34:26 +0000 (20:34 -0400)]
os/bluestore: instantiate a Checksummer

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: prototype Checksummer
Sage Weil [Tue, 10 May 2016 00:34:13 +0000 (20:34 -0400)]
os/bluestore: prototype Checksummer

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agobuffer: add buffer::list::iterator::get_ptr_and_advance
Sage Weil [Fri, 6 May 2016 21:36:01 +0000 (17:36 -0400)]
buffer: add buffer::list::iterator::get_ptr_and_advance

Efficiently iterate over buffers in a list, via an iterator.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: extent_ref_map_t::intersects
Sage Weil [Mon, 9 May 2016 21:26:25 +0000 (17:26 -0400)]
os/bluestore/bluestore_types: extent_ref_map_t::intersects

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: change extent_ref_map_t
Sage Weil [Mon, 9 May 2016 21:21:30 +0000 (17:21 -0400)]
os/bluestore/bluestore_types: change extent_ref_map_t

- no more add, or weird add vs get assumptions

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: drop num_refs from blob_t
Sage Weil [Wed, 11 May 2016 20:23:23 +0000 (16:23 -0400)]
os/bluestore/bluestore_types: drop num_refs from blob_t

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/bluestore_types: onode_t::punch_hole()
Sage Weil [Mon, 9 May 2016 19:27:00 +0000 (15:27 -0400)]
os/bluestore/bluestore_types: onode_t::punch_hole()

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: disable clone cow until it works again
Sage Weil [Mon, 9 May 2016 16:59:19 +0000 (12:59 -0400)]
os/bluestore: disable clone cow until it works again

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: fix bad iterator deref in _do_zero_tail_extent
Sage Weil [Mon, 9 May 2016 14:36:14 +0000 (10:36 -0400)]
os/bluestore: fix bad iterator deref in _do_zero_tail_extent

The extent_map may be empty, or not contain anything at this offset.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: rename enode -> bnode
Sage Weil [Fri, 6 May 2016 18:41:54 +0000 (14:41 -0400)]
os/bluestore: rename enode -> bnode

We're not refcounting extents anymore; we're storing shared blobs.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: use hex almost everywhere
Sage Weil [Fri, 6 May 2016 18:36:33 +0000 (14:36 -0400)]
os/bluestore: use hex almost everywhere

It's like going metric, but even better!

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: remove block_map from onode
Sage Weil [Fri, 6 May 2016 18:36:04 +0000 (14:36 -0400)]
os/bluestore: remove block_map from onode

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: convert io path to extent_map
Sage Weil [Fri, 6 May 2016 18:35:49 +0000 (14:35 -0400)]
os/bluestore: convert io path to extent_map

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: add get_blob_ptr helpers
Sage Weil [Fri, 6 May 2016 18:30:45 +0000 (14:30 -0400)]
os/bluestore: add get_blob_ptr helpers

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore/KernelDevice: print extents in hex
Sage Weil [Thu, 5 May 2016 17:04:06 +0000 (13:04 -0400)]
os/bluestore/KernelDevice: print extents in hex

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoceph_test_objectstore: show start and end offsets for buffer mismatch
Sage Weil [Fri, 6 May 2016 18:01:06 +0000 (14:01 -0400)]
ceph_test_objectstore: show start and end offsets for buffer mismatch

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: add blob_map to enode
Sage Weil [Tue, 3 May 2016 20:22:56 +0000 (16:22 -0400)]
os/bluestore: add blob_map to enode

We'll remove the old ref_map once the users go away.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: pass c to _do_read
Sage Weil [Tue, 3 May 2016 19:43:33 +0000 (15:43 -0400)]
os/bluestore: pass c to _do_read

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: add blob_map to onode_t
Sage Weil [Tue, 3 May 2016 19:07:50 +0000 (15:07 -0400)]
os/bluestore: add blob_map to onode_t

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: use pextent_t for releases
Sage Weil [Tue, 3 May 2016 20:22:24 +0000 (16:22 -0400)]
os/bluestore: use pextent_t for releases

Trying to remove the old extent_t

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: use pextent for wal_op
Sage Weil [Tue, 3 May 2016 18:25:07 +0000 (14:25 -0400)]
os/bluestore: use pextent for wal_op

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: print extents in hex
Sage Weil [Wed, 4 May 2016 18:36:49 +0000 (14:36 -0400)]
os/bluestore: print extents in hex

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: fix blob operator<<
Sage Weil [Fri, 6 May 2016 18:27:41 +0000 (14:27 -0400)]
os/bluestore: fix blob operator<<

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: keep an extent_ref_map for each blob
Sage Weil [Tue, 3 May 2016 20:21:48 +0000 (16:21 -0400)]
os/bluestore: keep an extent_ref_map for each blob

This lets us track which portions of a blob are still in use.  In some
cases, we may be able to split the blob to deallocate a portion of it.
In other cases, we will want this information to know whether to
recompress the blob (or whatever).

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: add map and map_bl methods to blob
Sage Weil [Fri, 6 May 2016 18:25:30 +0000 (14:25 -0400)]
os/bluestore: add map and map_bl methods to blob

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoos/bluestore: data structure to support compression/checksum verification. Read handl...
Igor Fedotov [Tue, 3 May 2016 14:24:36 +0000 (10:24 -0400)]
os/bluestore: data structure to support compression/checksum verification. Read handler prototype implementation.

Signed-off-by: Igor Fedotov <ifedotov@mirantis.com>
Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoMerge pull request #9183 from yehudasa/wip-rgw-sync-retry 9410/head
Casey Bodley [Wed, 1 Jun 2016 14:52:24 +0000 (10:52 -0400)]
Merge pull request #9183 from yehudasa/wip-rgw-sync-retry

rgw: sync retry

Reviewed-by: Casey Bodley <cbodley@redhat.com>
9 years agoMerge pull request #9073 from ukernel/wip-posixacl-fix
John Spray [Wed, 1 Jun 2016 14:37:19 +0000 (15:37 +0100)]
Merge pull request #9073 from ukernel/wip-posixacl-fix

client: fix setting empty default ACL

Reviewed-by: John Spray <john.spray@redhat.com>
9 years agoMerge pull request #9422 from liewegas/wip-bluefs
Sage Weil [Wed, 1 Jun 2016 14:28:59 +0000 (10:28 -0400)]
Merge pull request #9422 from liewegas/wip-bluefs

os/bluestore/BlueFS: wait for aios on shutdown

9 years agoMerge pull request #9343 from dachary/wip-13522-ceph-disk
Loic Dachary [Wed, 1 Jun 2016 13:39:10 +0000 (15:39 +0200)]
Merge pull request #9343 from dachary/wip-13522-ceph-disk

ceph-disk: workaround gperftool hang

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoos/bluestore/BlueFS: wait for aios on shutdown 9422/head
Sage Weil [Wed, 1 Jun 2016 13:14:01 +0000 (09:14 -0400)]
os/bluestore/BlueFS: wait for aios on shutdown

This fixes segv from unittest_bluefs.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agoceph-disk: workaround gperftool hang 9343/head
Loic Dachary [Thu, 26 May 2016 10:55:51 +0000 (12:55 +0200)]
ceph-disk: workaround gperftool hang

Temporary workaround: if ceph-osd --mkfs does not
complete within 5 minutes, assume it is blocked
because of https://github.com/gperftools/gperftools/issues/786

References http://tracker.ceph.com/issues/13522

Signed-off-by: Loic Dachary <loic@dachary.org>
9 years agoqa/workunits/fs/misc: test for setting empty ACL 9073/head
Yan, Zheng [Wed, 1 Jun 2016 09:42:24 +0000 (17:42 +0800)]
qa/workunits/fs/misc: test for setting empty ACL

Signed-off-by: Yan, Zheng <zyan@redhat.com>
9 years agoMerge pull request #9299 from cbodley/wip-rgw-vstart-valgrind
Yehuda Sadeh [Wed, 1 Jun 2016 09:10:20 +0000 (12:10 +0300)]
Merge pull request #9299 from cbodley/wip-rgw-vstart-valgrind

vstart: add --valgrind_rgw

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
9 years agoMerge pull request #9375 from dillaman/wip-14937
Mykola Golub [Wed, 1 Jun 2016 07:59:57 +0000 (10:59 +0300)]
Merge pull request #9375 from dillaman/wip-14937

rbd-mirror: replicate cloned images

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
9 years agoMerge pull request #9162 from xiexingguo/xxg-wip-fixbmap
xiexingguo [Wed, 1 Jun 2016 07:46:06 +0000 (15:46 +0800)]
Merge pull request #9162 from xiexingguo/xxg-wip-fixbmap

os/bluestore: fix bmap allocator relevant issues

Reviewed-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
9 years agoMerge pull request #9415 from ceph/wip-16095-parted
Boris Ranto [Wed, 1 Jun 2016 06:57:38 +0000 (08:57 +0200)]
Merge pull request #9415 from ceph/wip-16095-parted

packaging: move parted requirement to -osd subpkg

Reviewed-by: Nathan Cutler <ncutler@suse.com>
Reviewed-by: Boris Ranto <branto@redhat.com>
9 years agoMerge pull request #9406 from tchaikov/wip-doc-hyperlink-of-rados_t
Brad Hubbard [Wed, 1 Jun 2016 05:28:07 +0000 (15:28 +1000)]
Merge pull request #9406 from tchaikov/wip-doc-hyperlink-of-rados_t

doc: add breathe_domain_by_extension to conf.py

9 years agoos/bluestore/BitAllocator: set_bits() in batch 9162/head
xie xingguo [Wed, 18 May 2016 02:34:26 +0000 (10:34 +0800)]
os/bluestore/BitAllocator: set_bits() in batch

Which is simpler and faster.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoos/bluestore/BitAllocator: fix race condition for check_bit()
xie xingguo [Wed, 18 May 2016 01:57:30 +0000 (09:57 +0800)]
os/bluestore/BitAllocator: fix race condition for check_bit()

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoos/bluestore/BitAllocator: use std namespace for atomic_*
xie xingguo [Wed, 18 May 2016 01:24:18 +0000 (09:24 +0800)]
os/bluestore/BitAllocator: use std namespace for atomic_*

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoos/bluestore/BitAllocator: fix is_allocated() may return false positive
xie xingguo [Tue, 17 May 2016 12:35:16 +0000 (20:35 +0800)]
os/bluestore/BitAllocator: fix is_allocated() may return false positive

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
9 years agoqa/workunits/rbd: basic cloned image test 9375/head
Jason Dillaman [Thu, 26 May 2016 16:49:45 +0000 (12:49 -0400)]
qa/workunits/rbd: basic cloned image test

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agopackaging: move parted requirement to -osd subpkg 9415/head
Ken Dreyer [Tue, 31 May 2016 23:50:05 +0000 (17:50 -0600)]
packaging: move parted requirement to -osd subpkg

Prior to this change, ceph-base required the "parted" package, which
meant that any installation of ceph-osd, ceph-mon, or ceph-mds would
pull in the parted package.

Move the parted dependency to ceph-osd, since ceph-disk is the only
thing that uses parted.

The advantage of this change is that Mon and MDS systems will not need
to install the parted package.

Fixes: http://tracker.ceph.com/issues/16095
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
9 years agorbd-mirror: copy snapshot parent image settings
Jason Dillaman [Thu, 26 May 2016 12:22:16 +0000 (08:22 -0400)]
rbd-mirror: copy snapshot parent image settings

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agocls_rbd: asynchronous helper method to set parent
Jason Dillaman [Thu, 26 May 2016 16:01:15 +0000 (12:01 -0400)]
cls_rbd: asynchronous helper method to set parent

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agorbd-mirror: add support for cloning images from mirrored parent
Jason Dillaman [Wed, 25 May 2016 21:38:06 +0000 (17:38 -0400)]
rbd-mirror: add support for cloning images from mirrored parent

Fixes: http://tracker.ceph.com/issues/14937
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: extend internal API to clone from open parent image
Jason Dillaman [Wed, 25 May 2016 21:36:06 +0000 (17:36 -0400)]
librbd: extend internal API to clone from open parent image

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agocls_rbd: asynchronous helper methods to retrieve mirror image metadata
Jason Dillaman [Wed, 25 May 2016 21:13:59 +0000 (17:13 -0400)]
cls_rbd: asynchronous helper methods to retrieve mirror image metadata

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agorbd-mirror: helper state machine to open remote/read-only images
Jason Dillaman [Wed, 25 May 2016 19:16:28 +0000 (15:16 -0400)]
rbd-mirror: helper state machine to open remote/read-only images

Signed-off-by: Jason Dillaman <dillaman@redhat.com>