]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
9 years agolibrbd: copy operation needs to use AIO work queue for writes 6541/head
Jason Dillaman [Tue, 17 Nov 2015 14:33:17 +0000 (09:33 -0500)]
librbd: copy operation needs to use AIO work queue for writes

This ensures that the exclusive lock is properly acquired prior to
writing to the new image.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: simplify IO flush handling
Jason Dillaman [Fri, 31 Jul 2015 02:31:55 +0000 (22:31 -0400)]
librbd: simplify IO flush handling

Add a new convenience method to ImageCtx for handling flush
requests and cleanup flush handling with dealing with the cache.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: possible deadlock attempting to drain parent image WQs
Jason Dillaman [Fri, 14 Aug 2015 17:30:41 +0000 (13:30 -0400)]
librbd: possible deadlock attempting to drain parent image WQs

Ensure all AIO to the parent image is properly flushed and assert
that all work queues are empty before closing the parent image.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoWorkQueue: PointerWQ drain no longer waits for other queues
Jason Dillaman [Fri, 14 Aug 2015 17:28:13 +0000 (13:28 -0400)]
WorkQueue: PointerWQ drain no longer waits for other queues

If another (independent) queue was processing, drain could
block waiting.  Instead, allow drain to exit quickly if
no items are being processed and the queue is empty for
the current WQ.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agojournal: avoid holding lock while marking ops are complete
Jason Dillaman [Fri, 13 Nov 2015 07:00:21 +0000 (02:00 -0500)]
journal: avoid holding lock while marking ops are complete

There is a possibility of a race if the JournalTrimmer destructor is
waiting for an async op to complete but the op is flagged as complete
while the mutex is being held.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agocmake: updates for refactored librbd IO path
Jason Dillaman [Fri, 13 Nov 2015 01:17:17 +0000 (20:17 -0500)]
cmake: updates for refactored librbd IO path

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: flush journal entries prior to releasing lock
Jason Dillaman [Tue, 1 Sep 2015 14:17:02 +0000 (10:17 -0400)]
librbd: flush journal entries prior to releasing lock

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: only erase IO events after they are marked safe
Jason Dillaman [Tue, 1 Sep 2015 01:27:53 +0000 (21:27 -0400)]
librbd: only erase IO events after they are marked safe

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agotests: librbd updates for C++11
Jason Dillaman [Thu, 20 Aug 2015 02:30:37 +0000 (22:30 -0400)]
tests: librbd updates for C++11

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agotests: verify librbd journal entries are written to disk
Jason Dillaman [Thu, 30 Jul 2015 15:35:20 +0000 (11:35 -0400)]
tests: verify librbd journal entries are written to disk

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: treat flush op as a write op
Jason Dillaman [Thu, 30 Jul 2015 15:34:54 +0000 (11:34 -0400)]
librbd: treat flush op as a write op

This will ensure that the journal is properly opened to handle
appending events.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agotests: verify proper handling of librbd replay of IO journal events
Jason Dillaman [Thu, 23 Jul 2015 17:56:59 +0000 (13:56 -0400)]
tests: verify proper handling of librbd replay of IO journal events

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agotests: updated librbd ImageWatcher listener signature
Jason Dillaman [Thu, 23 Jul 2015 20:15:50 +0000 (16:15 -0400)]
tests: updated librbd ImageWatcher listener signature

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: addressed possible race conditions / deadlocks from unit testing
Jason Dillaman [Thu, 23 Jul 2015 20:15:12 +0000 (16:15 -0400)]
librbd: addressed possible race conditions / deadlocks from unit testing

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: add replay support for IO events
Jason Dillaman [Wed, 22 Jul 2015 02:49:04 +0000 (22:49 -0400)]
librbd: add replay support for IO events

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: fix integration with journal library
Jason Dillaman [Fri, 17 Jul 2015 01:33:24 +0000 (21:33 -0400)]
librbd: fix integration with journal library

Valgrind-related updates to the journal library required tweaks to
current implementation of librbd journaling.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: inform the journal when pending IO safely commits
Jason Dillaman [Wed, 15 Jul 2015 21:32:28 +0000 (17:32 -0400)]
librbd: inform the journal when pending IO safely commits

When caching is disabled, the AioCompletion notifies the journal that
the update is safe.  When caching is enabled, writeback can result
in partial write extents being overwritten (and no longer associated
to the original journal event).  In this case, the writeback handler
is responsible for informing the journal when writes are safe.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: integrate cache with journal
Jason Dillaman [Wed, 15 Jul 2015 17:18:16 +0000 (13:18 -0400)]
librbd: integrate cache with journal

Cache writeback should be delayed until after journal event has been
commmitted to disk.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoosdc: track journal commit tid within ObjectCacher for writes
Jason Dillaman [Wed, 15 Jul 2015 16:20:42 +0000 (12:20 -0400)]
osdc: track journal commit tid within ObjectCacher for writes

Writebacks from the journal will provide the associated journal commit
tid so that writebacks can be delayed until after the journal entry is
safe on disk.  This allows asynchronously submitting an event to the
journal and submitting the write operation to the ObjectCacher.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: add support for removing the journal from disk
Jason Dillaman [Tue, 14 Jul 2015 18:13:14 +0000 (14:13 -0400)]
librbd: add support for removing the journal from disk

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agotests: add journal support to RBD test cases
Jason Dillaman [Fri, 10 Jul 2015 01:26:01 +0000 (21:26 -0400)]
tests: add journal support to RBD test cases

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrdb: initial interface with journal library
Jason Dillaman [Fri, 10 Jul 2015 01:25:33 +0000 (21:25 -0400)]
librdb: initial interface with journal library

Rough draft of journal library integration within librbd. Non-cached
IO paths are now recorded to the journal.  Incoming IO ops are blocked
if the exclusive lock isn't held or if the journal hasn't been replayed.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: prevent concurrent image refreshes
Jason Dillaman [Tue, 14 Jul 2015 13:06:59 +0000 (09:06 -0400)]
librbd: prevent concurrent image refreshes

With multiple concurrent AIO requests, it's possible for multiple
image refreshes to be scheduled.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: added journal::EventEntry::get_event_type() helper
Jason Dillaman [Mon, 13 Jul 2015 23:06:47 +0000 (19:06 -0400)]
librbd: added journal::EventEntry::get_event_type() helper

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: removed ImageWatcher header namespace indentation
Jason Dillaman [Fri, 10 Jul 2015 02:59:10 +0000 (22:59 -0400)]
librbd: removed ImageWatcher header namespace indentation

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: re-use common logic between aio_write/discard
Jason Dillaman [Thu, 9 Jul 2015 18:43:56 +0000 (14:43 -0400)]
librbd: re-use common logic between aio_write/discard

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoosdc: improved discard_set signature const correctness
Jason Dillaman [Thu, 9 Jul 2015 18:38:45 +0000 (14:38 -0400)]
osdc: improved discard_set signature const correctness

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agotest: encoding: add new librbd journal event type
Jason Dillaman [Wed, 8 Jul 2015 19:59:25 +0000 (15:59 -0400)]
test: encoding: add new librbd journal event type

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: simplify watch/notify type encoding
Jason Dillaman [Wed, 8 Jul 2015 19:57:15 +0000 (15:57 -0400)]
librbd: simplify watch/notify type encoding

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: initial journal entry structures
Jason Dillaman [Wed, 8 Jul 2015 18:58:38 +0000 (14:58 -0400)]
librbd: initial journal entry structures

New journal entries to cover AIO write/discard/flush operations.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agotests: update librbd tests to support new AIO / lock handling
Jason Dillaman [Wed, 8 Jul 2015 17:46:00 +0000 (13:46 -0400)]
tests: update librbd tests to support new AIO / lock handling

ImageWatcher is no longer responsible for queueing write ops while
waiting for the exclusive lock.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: ImageWatcher no longer maintains pending AIO op list
Jason Dillaman [Wed, 8 Jul 2015 15:26:57 +0000 (11:26 -0400)]
librbd: ImageWatcher no longer maintains pending AIO op list

Previously the ImageWatcher stored delayed ops that were waiting
on the image exclusive lock.  This management has been moved to the
AioImageRequestWQ to ensure requests are processed in-order.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agotests: updates for AIO locking changes
Jason Dillaman [Wed, 8 Jul 2015 02:13:47 +0000 (22:13 -0400)]
tests: updates for AIO locking changes

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: consistent owner_lock handling for AIO paths
Jason Dillaman [Wed, 8 Jul 2015 02:07:47 +0000 (22:07 -0400)]
librbd: consistent owner_lock handling for AIO paths

Required moving non-AIO read/write/discard methods to
AioImageRequestWQ to avoid deadlock on lock request.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: simplify AioImageRequestWQ function signatures
Jason Dillaman [Wed, 8 Jul 2015 00:40:37 +0000 (20:40 -0400)]
librbd: simplify AioImageRequestWQ function signatures

The ImageCtx is known so there is no need to pass it with each
function call.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: cleanup ictx_check's handling of owner_lock
Jason Dillaman [Wed, 8 Jul 2015 00:00:18 +0000 (20:00 -0400)]
librbd: cleanup ictx_check's handling of owner_lock

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agotests: aio_write/aio_discard have been refactored
Jason Dillaman [Tue, 7 Jul 2015 23:07:03 +0000 (19:07 -0400)]
tests: aio_write/aio_discard have been refactored

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: refactor AIO request handling
Jason Dillaman [Tue, 7 Jul 2015 23:05:47 +0000 (19:05 -0400)]
librbd: refactor AIO request handling

Move aio_read/write/discard/flush to new AioImageRequest classes
in support of a unified aio queue / journaling.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: AIO submissions processed by new AioImageRequestWQ
Jason Dillaman [Tue, 7 Jul 2015 17:06:50 +0000 (13:06 -0400)]
librbd: AIO submissions processed by new AioImageRequestWQ

New work queue has the ability to suspend write operations, which
should occur when exclusive locking is enabled and the client doesn't
own the lock.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: rename AioRequest classes to AioObjectRequest
Jason Dillaman [Tue, 7 Jul 2015 19:56:35 +0000 (15:56 -0400)]
librbd: rename AioRequest classes to AioObjectRequest

This better reflects the fact that these represent requests against
an object extent and helps differentiate it from the future
AioImageRequest classes.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: rename C_AioWrite to C_AioRequest
Jason Dillaman [Mon, 6 Jul 2015 23:40:07 +0000 (19:40 -0400)]
librbd: rename C_AioWrite to C_AioRequest

This context is used for more than just write requests. It is always
tied to an AioCompletion, so moved request reference counting
management within class.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: removed unused method declarations and definitions
Jason Dillaman [Mon, 6 Jul 2015 23:28:49 +0000 (19:28 -0400)]
librbd: removed unused method declarations and definitions

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: add support for dynamically enabling/disabling journaling
Jason Dillaman [Mon, 6 Jul 2015 17:36:10 +0000 (13:36 -0400)]
librbd: add support for dynamically enabling/disabling journaling

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agopybind/rbd.py: add new journaling feature code
Jason Dillaman [Wed, 8 Jul 2015 20:05:54 +0000 (16:05 -0400)]
pybind/rbd.py: add new journaling feature code

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: add new RBD_FEATURE_JOURNALING feature code
Jason Dillaman [Mon, 6 Jul 2015 15:53:21 +0000 (11:53 -0400)]
librbd: add new RBD_FEATURE_JOURNALING feature code

When enabled, all mutable operations against an RBD image
will be recorded to a journal prior to changing the underlying
RBD image.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoMerge branch 'wip-13504' of https://github.com/trociny/ceph
Josh Durgin [Thu, 12 Nov 2015 22:08:31 +0000 (14:08 -0800)]
Merge branch 'wip-13504' of https://github.com/trociny/ceph

rbd: API: options on image create

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Conflicts:
src/test/librbd/test_librbd.cc (trivial, two tests added at end of file)

9 years agolibrbd: API: options on image create: update tests 6369/head
Mykola Golub [Fri, 23 Oct 2015 14:27:33 +0000 (17:27 +0300)]
librbd: API: options on image create: update tests

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agolibrbd: API: options on image create
Mykola Golub [Fri, 23 Oct 2015 09:38:08 +0000 (12:38 +0300)]
librbd: API: options on image create

Pass options as key/value configuration pairs on image create instead
of expanding rbd_create/rbd_clone/rbd_copy for every possible
configuration override.

Fixes: #13504
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agoMerge pull request #6557 from ceph/wip-rbd-cmake-fixes
Jason Dillaman [Thu, 12 Nov 2015 18:32:31 +0000 (13:32 -0500)]
Merge pull request #6557 from ceph/wip-rbd-cmake-fixes

cmake: librbd and libjournal build fixes

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
9 years agoMerge pull request #6556 from athanatos/wip-cmake-nss
Casey Bodley [Thu, 12 Nov 2015 17:34:08 +0000 (12:34 -0500)]
Merge pull request #6556 from athanatos/wip-cmake-nss

cmake: add nss as a suffix for pk11pub.h

9 years agocmake: add nss as a suffix for pk11pub.h 6556/head
Samuel Just [Wed, 11 Nov 2015 21:28:08 +0000 (13:28 -0800)]
cmake: add nss as a suffix for pk11pub.h

Signed-off-by: Samuel Just <sjust@redhat.com>
9 years agolibrbd: provide an out-of-class definition for MAX_DESCRIPTION_OFFSET 6557/head
Ilya Dryomov [Thu, 12 Nov 2015 13:38:05 +0000 (14:38 +0100)]
librbd: provide an out-of-class definition for MAX_DESCRIPTION_OFFSET

std::min() takes its parameters by reference, so provide a definition
for OptionPrinter::MAX_DESCRIPTION_OFFSET constant.

Signed-off-by: Ilya Dryomov <idryomov@redhat.com>
9 years agocmake: fix librbd and add src/journal
Ilya Dryomov [Thu, 12 Nov 2015 13:52:47 +0000 (14:52 +0100)]
cmake: fix librbd and add src/journal

librbd was missing a recently added file, src/journal was missing
entirely - this brings the build back.

Signed-off-by: Ilya Dryomov <idryomov@redhat.com>
9 years agoMerge pull request #6517 from kylinstorage/wip-trivial-bug
Sage Weil [Thu, 12 Nov 2015 13:40:42 +0000 (08:40 -0500)]
Merge pull request #6517 from kylinstorage/wip-trivial-bug

osd: fix bug in last_* PG state timestamps

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #6552 from trociny/wip-journal
Jason Dillaman [Thu, 12 Nov 2015 13:21:21 +0000 (08:21 -0500)]
Merge pull request #6552 from trociny/wip-journal

journal: incremental improvements and fixes

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
9 years agoMerge pull request #6462 from javacruft/wip/ec-modules
Loic Dachary [Thu, 12 Nov 2015 11:35:20 +0000 (12:35 +0100)]
Merge pull request #6462 from javacruft/wip/ec-modules

Build internal plugins and classes as modules

Reviewed-by: Loic Dachary <ldachary@redhat.com>
9 years agojournal: update allocated tid when skipping committed entry in player 6552/head
Mykola Golub [Thu, 29 Oct 2015 14:07:23 +0000 (16:07 +0200)]
journal: update allocated tid when skipping committed entry in player

Otherwise, if on image open, there are no any uncommitted entries in
journal, allocated tid is not updated to the latest commited and
recording always starts from tid=0.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agoMerge pull request #6539 from yehudasa/wip-cmake-fix
Kefu Chai [Thu, 12 Nov 2015 03:53:34 +0000 (11:53 +0800)]
Merge pull request #6539 from yehudasa/wip-cmake-fix

cmake: fix files list

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #6316 from dillaman/wip-13494
Josh Durgin [Wed, 11 Nov 2015 19:54:56 +0000 (11:54 -0800)]
Merge pull request #6316 from dillaman/wip-13494

rbd: dynamically generated bash completion

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoMerge remote-tracking branch 'origin/jewel'
Josh Durgin [Wed, 11 Nov 2015 19:51:49 +0000 (11:51 -0800)]
Merge remote-tracking branch 'origin/jewel'

9 years agocmake: fix files list 6539/head
Yehuda Sadeh [Wed, 11 Nov 2015 16:38:05 +0000 (08:38 -0800)]
cmake: fix files list

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
9 years agocls::journal: fixup: constify dump functions
Mykola Golub [Thu, 8 Oct 2015 06:01:54 +0000 (09:01 +0300)]
cls::journal: fixup: constify dump functions

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agojournal: call metadata shutdown on journal remove
Mykola Golub [Mon, 28 Sep 2015 18:37:05 +0000 (21:37 +0300)]
journal: call metadata shutdown on journal remove

This fixes error observed when disabling journal:

  JournalMetadata: journal watch error: (107) Transport endpoint is not connected

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agojournal: don't use object_number when comparing positions
Mykola Golub [Thu, 17 Sep 2015 07:05:20 +0000 (10:05 +0300)]
journal: don't use object_number when comparing positions

Only tid does matter.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agojournal: make commit and flush params configurable
Mykola Golub [Tue, 1 Sep 2015 20:09:52 +0000 (23:09 +0300)]
journal: make commit and flush params configurable

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agojournal: allow alternate pool for journal objects
Mykola Golub [Sun, 6 Sep 2015 14:06:44 +0000 (17:06 +0300)]
journal: allow alternate pool for journal objects

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agojournal: output operators for journal types
Mykola Golub [Thu, 3 Sep 2015 18:12:12 +0000 (21:12 +0300)]
journal: output operators for journal types

They are going to be used for diagnostic.

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agoMerge pull request #6471 from mslovy/wip-check-reply-guard-again
Sage Weil [Wed, 11 Nov 2015 14:23:39 +0000 (09:23 -0500)]
Merge pull request #6471 from mslovy/wip-check-reply-guard-again

osd: avoid double-check for replaying and can_checkpoint() in FileStore::_check_replay_guard

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoMerge pull request #6426 from xiexingguo/xxg-wip-13642
Sage Weil [Wed, 11 Nov 2015 14:16:58 +0000 (09:16 -0500)]
Merge pull request #6426 from xiexingguo/xxg-wip-13642

librados: fix rare race where pool op callback may hang forever

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #6407 from renhwztetecs/renhw-wip-13627
Sage Weil [Wed, 11 Nov 2015 14:15:51 +0000 (09:15 -0500)]
Merge pull request #6407 from renhwztetecs/renhw-wip-13627

mon: initialize recorded election epoch properly even when standalone

Reviewed-by: Joao Eduardo Luis <joao@suse.de>
Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #6385 from Vicente-Cheng/mkfs-does-not-decode-an-existing-superblock
Sage Weil [Wed, 11 Nov 2015 14:14:01 +0000 (09:14 -0500)]
Merge pull request #6385 from Vicente-Cheng/mkfs-does-not-decode-an-existing-superblock

osd: fix reactivate (check OSDSuperblock in mkfs() when we already have the superblock)

Reviewed-by: Loic Dachary <ldachary@redhat.com>
9 years agoMerge pull request #6373 from liewegas/wip-promoteon2ndread-ec
Sage Weil [Wed, 11 Nov 2015 14:12:31 +0000 (09:12 -0500)]
Merge pull request #6373 from liewegas/wip-promoteon2ndread-ec

librados: fix PromoteOn2ndRead test for EC

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #6520 from trociny/fix-rbd-apply_changes
Jason Dillaman [Wed, 11 Nov 2015 14:10:44 +0000 (09:10 -0500)]
Merge pull request #6520 from trociny/fix-rbd-apply_changes

rbd: make config changes actually apply

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
9 years agoMerge pull request #6347 from xiexingguo/xxg-wip-13566
Sage Weil [Wed, 11 Nov 2015 14:07:15 +0000 (09:07 -0500)]
Merge pull request #6347 from xiexingguo/xxg-wip-13566

osd: fixes for several cases where op result code was not checked or set

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #5168 from majianpeng/dynamic-control-optracker
Sage Weil [Wed, 11 Nov 2015 14:02:26 +0000 (09:02 -0500)]
Merge pull request #5168 from majianpeng/dynamic-control-optracker

common: allow enable/disable of optracker at runtime

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #6089 from SUSE/wip-init-ceph-getopt
Kefu Chai [Wed, 11 Nov 2015 14:00:44 +0000 (22:00 +0800)]
Merge pull request #6089 from SUSE/wip-init-ceph-getopt

init-ceph: use getopt to make option processing more flexible

Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agosrc/init-ceph.in: remove unused variables 6089/head
Nathan Cutler [Sun, 27 Sep 2015 21:16:48 +0000 (23:16 +0200)]
src/init-ceph.in: remove unused variables

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agosrc/init-ceph.in: improve usage message
Nathan Cutler [Sun, 27 Sep 2015 19:16:11 +0000 (21:16 +0200)]
src/init-ceph.in: improve usage message

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agosrc/init-ceph.in: process command-line options using getopt
Nathan Cutler [Sun, 27 Sep 2015 19:11:00 +0000 (21:11 +0200)]
src/init-ceph.in: process command-line options using getopt

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

Signed-off-by: Nathan Cutler <ncutler@suse.com>
9 years agorbd: RBD::clone2: fix tracepoint
Mykola Golub [Thu, 22 Oct 2015 07:11:08 +0000 (10:11 +0300)]
rbd: RBD::clone2: fix tracepoint

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agoMerge pull request #6516 from trociny/wip-13719
Josh Durgin [Wed, 11 Nov 2015 07:55:37 +0000 (23:55 -0800)]
Merge pull request #6516 from trociny/wip-13719

librbd: perf section name: use hyphen to separate components

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agorbd: make config changes actually apply 6520/head
Mykola Golub [Tue, 10 Nov 2015 09:27:05 +0000 (11:27 +0200)]
rbd: make config changes actually apply

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agotests: rbd/admin_socket: use xmlstarlet when parsing perf dump 6516/head
Mykola Golub [Tue, 10 Nov 2015 07:22:09 +0000 (09:22 +0200)]
tests: rbd/admin_socket: use xmlstarlet when parsing perf dump

Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agolibrbd: perf section name: use hyphen to separate components
Mykola Golub [Tue, 10 Nov 2015 06:32:17 +0000 (08:32 +0200)]
librbd: perf section name: use hyphen to separate components

"/" and "@" characters make invalid xml format output.

Fixes: #13719
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
9 years agodoc: Adding --cluster option to rbd man page.
Vikhyat Umrao [Mon, 19 Oct 2015 12:27:15 +0000 (17:57 +0530)]
doc: Adding --cluster option to rbd man page.

Fixes #13457
Signed-off-by: Vikhyat Umrao <vumrao@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoMerge pull request #6519 from kylinstorage/wip-revise-organization
Loic Dachary [Wed, 11 Nov 2015 06:05:12 +0000 (07:05 +0100)]
Merge pull request #6519 from kylinstorage/wip-revise-organization

revise organization

Reviewed-by: Loic Dachary <ldachary@redhat.com>
9 years agoMerge pull request #6525 from dillaman/wip-13636-jewel
Josh Durgin [Wed, 11 Nov 2015 05:43:52 +0000 (21:43 -0800)]
Merge pull request #6525 from dillaman/wip-13636-jewel

WorkQueue: new PointerWQ base class for ContextWQ

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoMerge branch 'wip-11286' of https://github.com/dillaman/ceph
Josh Durgin [Wed, 11 Nov 2015 05:19:37 +0000 (21:19 -0800)]
Merge branch 'wip-11286' of https://github.com/dillaman/ceph

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoMerge pull request #5987 from dillaman/wip-rbd-refactor
Josh Durgin [Wed, 11 Nov 2015 05:18:04 +0000 (21:18 -0800)]
Merge pull request #5987 from dillaman/wip-rbd-refactor

rbd: refactor cli command handling

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agorbd: dynamically generated bash completion 6316/head
Jason Dillaman [Tue, 20 Oct 2015 01:52:49 +0000 (21:52 -0400)]
rbd: dynamically generated bash completion

The rbd CLI bash completion is now dynamically generated by extracting
the available commands and command options from the CLI application.

Fixes: #13494
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agorbd: hidden 'bash-completion' command dumps all available commands
Jason Dillaman [Mon, 19 Oct 2015 19:07:50 +0000 (15:07 -0400)]
rbd: hidden 'bash-completion' command dumps all available commands

It also extracts all available options for a given command for use
which can be used by an improved bash completion script.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agotests: updated rbd CLI --image-feature optional 5987/head
Jason Dillaman [Tue, 10 Nov 2015 18:55:39 +0000 (13:55 -0500)]
tests: updated rbd CLI --image-feature optional

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoceph_test_rados_api_tier: fix PromoteOn2ndRead for EC case 6373/head
Sage Weil [Sun, 25 Oct 2015 15:57:29 +0000 (11:57 -0400)]
ceph_test_rados_api_tier: fix PromoteOn2ndRead for EC case

The ec and non-ec cases are copy&pasted code.  Yuck.  This duplicates the
non-ec fix from 347ac0f8.

Signed-off-by: Sage Weil <sage@redhat.com>
9 years agorbd: corrected handling of '--image-feature' optional
Jason Dillaman [Tue, 10 Nov 2015 18:21:11 +0000 (13:21 -0500)]
rbd: corrected handling of '--image-feature' optional

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoMerge pull request #6488 from xiexingguo/xxg-wip-rados-cleanup
Kefu Chai [Tue, 10 Nov 2015 16:56:40 +0000 (00:56 +0800)]
Merge pull request #6488 from xiexingguo/xxg-wip-rados-cleanup

librados: do cleanup

Reviewed-by: Sebastien Ponce <sebastien.ponce@cern.ch>
Reviewed-by: Kefu Chai <kchai@redhat.com>
9 years agoMerge pull request #6523 from dillaman/wip-13740
Josh Durgin [Tue, 10 Nov 2015 16:32:40 +0000 (08:32 -0800)]
Merge pull request #6523 from dillaman/wip-13740

librbd: perf counters might not be initialized on error

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
9 years agoWorkQueue: new PointerWQ base class for ContextWQ 6525/head
Jason Dillaman [Tue, 7 Jul 2015 16:11:13 +0000 (12:11 -0400)]
WorkQueue: new PointerWQ base class for ContextWQ

The existing work queues do not properly function if added to a running
thread pool.  librbd uses a singleton thread pool which requires
dynamically adding/removing work queues as images are opened and closed.

Fixes: #13636
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agolibrbd: perf counters might not be initialized on error 6523/head
Jason Dillaman [Tue, 10 Nov 2015 13:20:13 +0000 (08:20 -0500)]
librbd: perf counters might not be initialized on error

Fixes: #13740
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoPendingReleaseNotes: document updated rbd CLI options
Jason Dillaman [Tue, 10 Nov 2015 12:59:03 +0000 (07:59 -0500)]
PendingReleaseNotes: document updated rbd CLI options

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
9 years agoMerge pull request #6522 from branch-predictor/bp-temporary-mon-fix
Loic Dachary [Tue, 10 Nov 2015 11:54:55 +0000 (12:54 +0100)]
Merge pull request #6522 from branch-predictor/bp-temporary-mon-fix

mon: revert MonitorDBStore's WholeStoreIteratorImpl::get

Reviewed-by: Loic Dachary <ldachary@redhat.com>