DNM: Squashed commit of the following:

commit 8ed536e1433fb4bef394aa10123971f720653c8b
Author: Sage Weil <sage@redhat.com>
Date:   Sun Dec 7 10:36:17 2014 -0800

    ceph_test_rados_api_watch_notify: fix signed/unsigend

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

commit 45223d9a33d69c563f1d77aacafaf11c80872577
Author: Sage Weil <sage@redhat.com>
Date:   Sun Dec 7 10:36:07 2014 -0800

    librados: mark new API watch/notify calls

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

commit dc67cd69604ec4e4df846b818ec739dc7b09a537
Author: Sage Weil <sage@redhat.com>
Date:   Fri Dec 5 18:00:04 2014 -0800

    rgw: switch to new watch/notify API

    Note that we don't use it properly, yet!

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

commit a53dbabd762d0dbb704ff709c8888a79614abfdc
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 24 15:58:11 2014 -0800

    librados:: carry IoCtx ref from WatchInfo

    The WatchInfo gets totally async notifications.  Make sure our ioctx
    ref is valid when that happens.

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

commit a989fecea01b4aae5fc5c6699afde8dd3f2260b3
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 21 16:04:38 2014 -0800

    osd: allow deletion of objects with watchers

    If we delete an object with a watcher, forcefully disconnect the watcher
    instead of preventing the deletion with EBUSY.

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

commit 1c6944f79a3f1400525d13c298e569c1471d9b78
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 21 15:34:30 2014 -0800

    osd/ReplicatedPG: do watch effects only when change commits

    Do not tell the client their watch succeeded until it is durable and
    visible to clients doing a notify.  This is less important in the initial
    watch registration stage, but critical in the disconnect (and disconnect
    + reconnect) pipelining cases.

    Simplify the watch_disconnects struct to have exactly the information
    we need, and no more.  Note that the conn is not needed for disconnects
    (and we don't have a req to provide one in the watch timeout op case).

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

commit 1c5bba670bdd61269769247b7b84ee4fbd98fd1c
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 21 15:11:00 2014 -0800

    osd/ReplicatedPG: pass obc to OpContext ctor

    We always set it, except for the handle_watch_timeout caller, which needs
    to.

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

commit 6fa05dbf4ac849ca3d3b2d48abcdecb539dd050d
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 21 13:50:58 2014 -0800

    osdc/Objecter: queued_async() gets called inside watch_lock from caller

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

commit 61fc317d722ee45ceebe948f6781a24d697079d3
Author: Sage Weil <sage@redhat.com>
Date:   Tue Nov 18 15:35:28 2014 -0800

    librados: remove failed notify

    Decided this wasn't useful.

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

commit 0a6128762d299a246ae7e0c7fb02c56760302fd2
Author: Sage Weil <sage@redhat.com>
Date:   Tue Nov 18 15:10:52 2014 -0800

    librados: s/handle/cookie/ in headers

    Be consistent.

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

commit f0614a109e79ac22e48c3334edfffde6ae665e28
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 16:20:49 2014 -0800

    ceph_test_rados_watch_notify: do not unwatch on invalid handle

    It is not safe to call rados_unwatch on an undefined handle.

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

commit 27ceb16903d8d3856638e9e56221799720e835da
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 16:20:20 2014 -0800

    ceph_test_rados_api_watch_notify: test ENOENT case

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

commit 1a36eb370d7b0b9402d89df07b9cde8ccc43d1fd
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 16:20:06 2014 -0800

    PendingReleaseNotes: a few notes about watch/notify changes

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

commit a824be974c106ecf6a287b41493c1d21448b8fbf
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 12:42:49 2014 -0800

    test_async_driver: fix warning

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

commit 7f8ffae88bacb544c931495010d438c2d80a4675
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 12:13:45 2014 -0800

    osdc/Objecter: set last_error before async error event delivery

    No reason to delay this.

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

commit 26440fd72d9b3dca28d9665b85fe893849dfaff6
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 12:06:27 2014 -0800

    osdc/Objecter: use RWLock for watch_lock

    This makes the linger_check fast path an RWLock read lock.  Drop the
    unnecessary write lock on rwlock and drop the unused Cond.

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

commit 5c0a8c411f3b5ac0ec37c2859a0a11a697f9e2a3
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 11:28:21 2014 -0800

    osdc/Objecter: make watch_check time reflect async delivery

    When a librados user calls watch_check(), the age they get back should
    establish a timestamp for which:

     1) we know that the watch was registered at least through this time,
     2) we have received and processed notifies sent as of this time,
     3) we have processed any async error events as of this time.

    We already accomplish 1 by updating watch_valid_thru based on the time
    the ping is sent (not received).

    This patch gets us 2 and 3 by using the MIN of watch_valid_thru and the
    oldest queued async event for the watch_check result.

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

commit 955a2f0ee95f30ae09f4d937c889423ecdba17e2
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 10:27:49 2014 -0800

    osdc/Objecter: use recast LingerOp* as OTW cookie, too

    This makes the OSD reply's cookie values match up with what the librados
    users see.  And it makes life less confusing when debugging.

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

commit 14e933d2b01ce06d6817a3809b5b07e16147c958
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 10:08:55 2014 -0800

    librados: use (gid,cookie) to identify notify participants

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

commit 5e994508580ba720dbc7b6578f792b1b5e6bbab1
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 08:02:55 2014 -0800

    librados: include missed watchers in notify reply data

    Include a list of who missed their notify in the notify reply.

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

commit 32043a38395aef0f2a16ca929f7a496ea6770737
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 09:45:55 2014 -0800

    encoding: multiset encode/decode

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

commit 9d9e66e663996a9646c761206ff7c1b779f4c8f7
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 08:01:15 2014 -0800

    osd: rejigger watch connect/disconnect callers

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

commit 88233696ff17cfcaa7d5fc017f1da38fc097397d
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 08:00:34 2014 -0800

    osdc/Objecter: ignore pings from previous registrations

    If we have a ping in flight and then reregister (due to interval change
    or whatever), ignore the result of the previous ping.

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

commit 45aaa340a9ab27425daac34807233f87bb7c5700
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 07:32:12 2014 -0800

    osdc/Objecter: only reconnect watches; skip ack unless needed

    Only watches get a RECONNECT op; lingers just get resent.

    Only request an ACK in the non-watch reconnect case and when an ack
    callback is specified.

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

commit e8df0771267a5eb1949226703408040c678d9ce4
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 07:30:44 2014 -0800

    osdc/Objecter: drop ACK callback for watch

    It is semantically useless.

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

commit e72035f3f5bc2eb2b6d16a5cad4b691ec638fa5e
Author: Sage Weil <sage@redhat.com>
Date:   Sun Nov 16 13:44:08 2014 -0800

    librados: move watch/notify into the Objecter

    Several things here:
     - we move all of the junk from librados' RadosClient into Objecter
     - we use fast-dispatch to schedule the watch-notify events (this will
       keep them ordered wrt ping)
     - we use the LingerOp * as the librados-exposed handle so that we can
       avoid any lookups for watch-check.

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

commit cd6a4aa9ee5d2b3567bde105f3928764ebd68cca
Author: Sage Weil <sage@redhat.com>
Date:   Sun Nov 16 11:50:42 2014 -0800

    rados: break out notify replies by client

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

commit de9f18ddcc407b90f2cc44e1a52c7d7da01f85b2
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 14 14:47:05 2014 -0800

    osdc/Objecter: take Finisher ref from creator

    Only needed for watch/notify users, so most can pass NULL.

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

commit 8ec0af473e1f0839b757ae9dfc7d198937729ae9
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 14 13:35:05 2014 -0800

    librados: use Objecter's linger_id as the cookie

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

commit 34c9d729092f52a091935227d3aca3dbfc49967c
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 14 13:32:12 2014 -0800

    osdc/Objecter: spit out linger register step

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

commit 5f90c20dd41170bb30cd2e2bba11393cb7c6fa51
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 14 11:21:05 2014 -0800

    osdc/Objecter: expose LingerOp instead of linger_id

    We want a reference-counted handle, not an id.

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

commit 889cd874e2ded7a1350659449d777af8f4a7a918
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 15:19:23 2014 -0800

    messages/MWatchNotify: print more nicer

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

commit 03778502c22f3025d3ac235c793fab8a41a07f19
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 15:19:05 2014 -0800

    librados: watch_check() to check on status of watch

    Return either an accumulated error code, or the time since the watch was
    last confirmed.

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

commit 8c867b8f776e331455c61625d346e3601bd9ea3b
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 14:28:14 2014 -0800

    ceph_test_rados: use new watch/notify API

    Ignore error events for now; we are just stressing the OSD.

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

commit 42e4baa06ab87690808b33307735c1c4e11716ab
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 21 21:03:09 2014 -0800

    librados: unwatch doesn't need the oid argument

    The handle is like a file handle: there is internal state that is getting
    freed and the user needn't provide it again.

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

commit 85f336d5c87866a91ab476ff83d684ff512f7ece
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 14:11:45 2014 -0800

    rados: use new notify API

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

commit ea53983a9ff2d41f9e8bf49b529cb8e13218c606
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 14:01:10 2014 -0800

    librados: no need for '2' suffix in c++

    Compiler disambiguates based on the rest of the signature.

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

commit 219f824894c02973f4a0ee6f61e1c1cfa27cc85f
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 13:53:37 2014 -0800

    librados: mark old rollback call deprecated

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

commit d3ec70ee13245f3aa30939c61bd1d260883ced61
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 13:53:23 2014 -0800

    librados: mark old watch calls deprecated

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

commit 5e794c11c17f6a31fa984c6aec9306f42d82b813
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 14:09:40 2014 -0800

    librados: mark old object listing api deprecated

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

commit 1b6bcfe327dfc02db17bc13adb9afa034c98f91f
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 14:09:28 2014 -0800

    librados: mark old rollback method deprecated

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

commit 6c83ec57339470a869952ad07252c6f2a8e52f57
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 14:09:20 2014 -0800

    librados: mark deprecated watch/notify methods with deprecated attribute

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

commit b5751947e11f081a69e596369aea32df40f282b9
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 14:08:08 2014 -0800

    scratchtoolpp: suppress deprecation warnings

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

commit cdc9f5f261281757d171452e9fbe021eaca2b436
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 13:08:27 2014 -0800

    ceph_test_rados_api_watch_notify: test watch disconnect, reconnect

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

commit 300131eaab7ebdc9e2400b66ea641230417a3044
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 13:01:44 2014 -0800

    osd: send watch DISCONNECT to client when a watch is removed

    This is an explicit notification to the client that a watch is no longer
    valid and needs to be re-registered.

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

commit 14cd71978b622cf9ed74adf241c0b71f2aaa5458
Author: Sage Weil <sage@redhat.com>
Date:   Wed Nov 12 16:51:23 2014 -0800

    ceph_test_rados_api_watch_notify: reorder tests

    Group by function, not language/pool type.

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

commit a4eeaf5ad41a9e3f15705b3cfabd597a1bb5e7ee
Author: Sage Weil <sage@redhat.com>
Date:   Wed Nov 12 16:47:46 2014 -0800

    ceph_test_rados_api_watch_notify: drop 'Test' suffix

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

commit 0601b5f9080e254bc2a59279eb5fc4c430cca9ec
Author: Sage Weil <sage@redhat.com>
Date:   Wed Nov 12 16:38:18 2014 -0800

    ceph_test_rados_watch_notify: fix signed/unsigned warnings

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

commit 2c6076b09f28c5239e454ec1e315c79eb1b5cf2e
Author: Sage Weil <sage@redhat.com>
Date:   Wed Nov 12 16:33:46 2014 -0800

    ceph_test_rados_api_watch_notify: verify notify after missed notify works

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

commit b4d769cf45cf350bd97aca44c9abdf2e0569baa5
Author: Sage Weil <sage@redhat.com>
Date:   Wed Nov 12 16:32:59 2014 -0800

    osdc/Objecter: fix whitespace

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

commit 485daaba84a8be50418ca65e8b11520e8db93135
Author: Sage Weil <sage@redhat.com>
Date:   Sun Nov 9 07:43:01 2014 -0800

    osdc/Objecter: factor out _send_op_account()

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

commit 872012f1aeb06eba2833870ff992ca36bd3261a0
Author: Sage Weil <sage@redhat.com>
Date:   Sun Nov 9 07:42:34 2014 -0800

    osdc/Objecter: skip ping if PAUSERD

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

commit f68fcc0f74c75e70204fb15e4fa8553fa6ad587a
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 20:01:50 2014 -0800

    osdc/Objecter: objecter_inject_no_watch_ping

    Tunable to prevent PINGs.  This will let us test paths the client gets
    disconnected from the OSD (at least from the client's perspective).

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

commit b583152e83b4fce0be83eaf97703ba7da3dbe74e
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 19:47:53 2014 -0800

    osdc/Objecter: stop sending pings once we get an error

    If we get ENOTCONN or ETIMEDOUT we can stop pinging.

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

commit 26e2fc73210a14d6b61ac8bff83c68bceb2cfac1
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 19:45:21 2014 -0800

    osd/Watch: set timeout event for new watchers

    For a new watcher, we set the timeout event on connect, and reset it when
    we get a ping.

    For an old watcher, we continue to set the timeout on disconnect() and
    rely on the msgr Connection reset.

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

commit 83189b07da8cc26a93db431bfc2cfa8979eef72d
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 19:38:24 2014 -0800

    make ping verify we are connected

commit b76fc39a4290eb0dfac7286f70ebbfadaadbe0b8
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 19:26:03 2014 -0800

    osdc/Objecter: only ping watches (not notifies)

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

commit 1a82cc3926fc7bc4cfbdd2fd4dfee8660d5107a1
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 17:47:09 2014 -0800

    osd, librados: distinguish between old and new watchers

    Use a new watch op code that is different from the legacy one so we can
    tell when the client is doing all the new stuff (like sending pings).

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

commit 10ac6295802edcf6aded2e1deabe691192f2c57d
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 17:12:54 2014 -0800

    librados: tell watcher if we cause a notify timeout

    If we are a watcher and we fail to notify in a timely manner, or
    circumstances otherwise conspire to prevent out ack from arriving in time,
    initiate a callback.

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

commit 7f00b722efce71189d622ee14ec8931cb5bdaa16
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 16:36:43 2014 -0800

    osd/Watch: inform watchers when they cause a notify timeout

    If a watcher doesn't ack in time, let them know that they triggered a
    notify failure.

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

commit e0e90f71e4e3aaca5813e82975e7aefe5235bf9f
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 17:10:18 2014 -0800

    librados: EINVAL on bad args to watch2

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

commit aa7ea5b9d8f1dc1fdb1b951b6ae5356c24b1e2a7
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 17:04:37 2014 -0800

    librados: behave if errcb is NULL

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

commit 7c8a1cd31f174cd391f0b215c72f34ee24f7061f
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 16:35:41 2014 -0800

    osd/Watch: drop redundant in_progress_watchers

    This is essentially watchers.size() at all times and obfuscates the code.
    In particular this makes the maybe_complete_notify() logic much clearer.

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

commit 66747c8bbd23f53385ede8ee5dbaca1aa3aedfac
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 16:18:30 2014 -0800

    osd/Watch: fix comment typo

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

commit e8f36efd45e6d67bb7c42f052594e47c076fb414
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 16:13:23 2014 -0800

    ceph_test_rados_api_watch_notify: verify we get the right # of notifies

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

commit 29802bf5deb054a31628e39d10dae93406875286
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 16:04:25 2014 -0800

    ceph_test_rados_api_watch_notify: s/handle/cookie/

    Use consist nameing for C and C++ tests.

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

commit 89e033c75b09edc63bc6da24a6b18b2bc5aea1cc
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 15:35:24 2014 -0800

    clean up CEPH_WATCH_EVENT_* namespace, and make COMPLETE distinct

    Use a proper prefix and make a separate event for the notify completion
    message.

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

commit bdef13c9527e3d729f59481a22a2ee6435b21210
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 16 20:19:00 2014 -0700

    osdc/Objecter: send regular PING ops

    Send a full PING op to the object to ensure we are still connected. For
    now just use the existing ping interval; we may want to change this in
    the future.

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

commit 909bdbc5a7a2326580f85f2f6b2eb10d810828b9
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 16 20:17:40 2014 -0700

    osdc/Objecter: queue an error if reconnect fails

    If we fail to reconnect, trigger the on_error (reusable) context to
    let the user know about it.

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

commit e424103301904dc0d97de92438554a7ae7b755b3
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 16 20:16:07 2014 -0700

    osdc/Objecter: separate WATCH from RECONNECT

    Use WATCH op for the initial registration.  This is idempotent in that
    it will succeed whether the watch information has been persisted or not.
    It is used by the client if it does not know that it is registered.

    The RECONNECT op is used for any subsequent session reconnect.  It will
    fail if the watch state isn't already persisted on the OSD.

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

commit 5e113ce2ea36173d1a853caae5d1f4afc4e6523b
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 16 20:12:22 2014 -0700

    rados: improve watch command output

    - hexdump the notify payload, and include all of the new metadata
    - print error events too

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

commit 22572a39777be12661750147fd2828223f178ac6
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 16 20:11:43 2014 -0700

    librados: add infrastructure to deliver an error notification

    Use a reusable context in the WatchNotifyInfo to trigger an error
    event, delivered via the existing Finisher thread.  Re-lookup the cookie
    in the thread to cope with races with unregister (just as we do with
    notify events).

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

commit c973c93f3fa23a2b5d9171c2db3d45a03c0e1cb9
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 16 20:09:07 2014 -0700

    librados: define error callback

    This is the async notification of a watch error (failure to reconnect to
    the object's OSD after a peering event or network disconnect).

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

commit 97661e1a65d85533b82edc99fbd626e7abbe5087
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 16 19:52:52 2014 -0700

    librados: remove crufty declaration

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

commit d44bd2b0c84a57cf8067495826ce52ef85a4afd2
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 16 19:28:53 2014 -0700

    osd/ReplicatedPG: handle PING and RECONNECT watch ops

    The ping will essentially assert that a watch is still valid.

    A reconnect will reestablish session state *only* if the watch is
    still persistent.  If not, it will fail (and the client will know it
    may have missed something).

    Note that the only difference here is that a PING is a bit lighter
    weight; it will not reestablish the session state (which should already
    be established).  We could use a single op here but the unique op
    code makes the messages easier to understand and simplifies the code
    path a bit for PING.

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

commit 2288f318e1b1f6a1c42b185fc1b4c41f23995247
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 16 19:26:17 2014 -0700

    librados: define RECONNECT and PING watch ops

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

commit 2e508d055ef03717076466e96547ad1c64d61aae
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 9 18:14:53 2014 -0700

    osdc/Objecter: fix assert_src_version

    Don't use the add_watch() helper; do it like assert_version
    does it.

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

commit 73720130c34424bf1fe36058ebe8da66976f40fb
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 9 18:14:15 2014 -0700

    librados: use new watch op codes; simplify Objecter helpers

    - drop the useless add_watch() helper; do it explicitly
    - drop the unused var arg everywhere
    - make a separate notify member of the union that excludes
      the other unused fields

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

commit 0d6aa20d4fb04c552e660576606c9250808a4d5d
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 9 18:11:44 2014 -0700

    librados: define CEPH_OSD_WATCH_OP_*

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

commit 6af4e1f68ef2e882e8dcaa16c49e123ed2479914
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 9 17:42:14 2014 -0700

    librados: unconditionally pass WATCH_NOTIFY to legacy callback

    This was always WATCH_NOTIFY; just pass that explicitly.  No need to
    pay attention to what's in the message.

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

commit 6183dccd37121a148545194699b1a9566b418795
Author: Sage Weil <sage@redhat.com>
Date:   Wed Oct 8 08:25:45 2014 -0700

    osd: allow multiple watchers/notify replies per client

    It is perfectly valid to register multiple watchers via the same
    librados client.  Make the notify_replies a multimap to capture all
    of the acks.

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

commit 8b409d498e96918bd7970fe4880b46e0949d4460
Author: Sage Weil <sage@redhat.com>
Date:   Tue Oct 7 15:56:52 2014 -0700

    librados: include notifier's gid in notify

    The notify replies include the identify of everyone who acked the
    notify.  For symmetry, inform the notified client who sent the notify.

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

commit e1a3bc870341321c43edcbe866133b412ce50905
Author: Sage Weil <sage@redhat.com>
Date:   Tue Oct 7 15:28:55 2014 -0700

    ceph_test_rados_api_watch_notify: test notify2 api

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

commit 7589bfcc9071062cc28337263252962efbc59bb0
Author: Sage Weil <sage@redhat.com>
Date:   Thu Aug 21 14:52:34 2014 -0700

    librados: update notify2 API to accept reply payloads

    Allow the notify2 callers to provide bufferlists or char ** pointers
    so that we can pass the reply buffer back to them.

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

commit 81cdff275aec97f851b2344cf046d6ee9c31769b
Author: Sage Weil <sage@redhat.com>
Date:   Thu Aug 21 14:46:35 2014 -0700

    osd: implement notify ack payloads

    If the notified send back reply payloads, pass them back to the notifier.

    Note that we have changed the on-wire behavior of the watch completion
    message a bit: instead of sending the original notify payload back to the
    notifier, we send the map of notified to replies.  Note that only users of
    the new API will know what to do with the notify acknowledgement
    information.  At the same time, we stop sending the original payload.
    However, the old API users never saw that data; we were uselessly sending
    it over the wire.

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

commit 7e0c4efcd494224baf1e2f50aec020c46415bd9b
Author: Sage Weil <sage@redhat.com>
Date:   Thu Aug 21 14:32:48 2014 -0700

    librados: define updated watch/notify interface

    - new notify callback with the correct values:
      - notify_id
      - watch handle
      - payload
    - new notify_ack call
      - not implicit when the callback returns (for new api only)
      - optional payload
    - new watch2 call
      - that provides the new callback
    - new notify2 call
      - with the right arguments, and optional timeout

    A couple refactors in here:
    - IoCtx notify_ack is now called unlocked (Note: this will soon change
      with pending Objecter locking changes)
    - Objecter notify_ack takes a buffer

    TODO:
    - no timeout on the individual watch, yet...

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

commit 12940c9f86aa57a5a7561705a5178e797a3115b9
Author: Sage Weil <sage@redhat.com>
Date:   Thu Aug 21 13:38:17 2014 -0700

    librados: drop useless ver arg to _notify_ack

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

commit 96d06a5f5c5a3a0b45f9ffddff3fc46609127f1e
Merge: 19e6c58 e42df6a
Author: Gregory Farnum <greg@gregs42.com>
Date:   Thu Dec 4 10:31:34 2014 -0800

    Merge pull request #3076 from ceph/wip-mon-mdsdne

    MDSMonitor.cc: fix assertion caused by MDSMap::STATE_DNE state

    Reviewed-by: Greg Farnum <gfarnum@redhat.com>

commit 19e6c5862254dc6855ae5fd9124aee966de3f1cf
Merge: 12098b4 6edaf4e
Author: Sage Weil <sage@redhat.com>
Date:   Thu Dec 4 10:13:55 2014 -0800

    Merge pull request #3072 from ceph/wip-10231-gperftools-location

    heap_profiler: support new gperftools header locations

    gitbuilders are happy

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

commit 12098b4115b3f8bc1e20af115de442e7fc1b592d
Merge: f9c602a 22c1d9b
Author: Sage Weil <sage@redhat.com>
Date:   Thu Dec 4 10:11:18 2014 -0800

    Merge pull request #3084 from ceph/wip-rados-include

    librados: Fix rados include problem reported by "sponce"

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

commit 22c1d9b0cf496ae66cb511aa862bb5e261b15076
Author: David Zafman <dzafman@redhat.com>
Date:   Thu Dec 4 10:02:38 2014 -0800

    librados: Fix rados include problem reported by "sponce"

    Caused by a03f85a8e7fab296ea2df70a929a1c5e4aa0f7fb

    Signed-off-by: David Zafman <dzafman@redhat.com>

commit f9c602a2ce204fc45644bd82686736a562bb8e80
Merge: cad4edc 7b621f4
Author: Sage Weil <sage@redhat.com>
Date:   Thu Dec 4 10:04:30 2014 -0800

    Merge pull request #3059 from dachary/wip-10125-radosgw-init

    rgw: run radosgw as apache with systemd

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

commit 7b621f4abf63456272dec3449aa108c89504a7a5
Author: Loic Dachary <ldachary@redhat.com>
Date:   Tue Dec 2 18:10:48 2014 +0100

    rgw: run radosgw as apache with systemd

    Same as sysv.

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

    Signed-off-by: Loic Dachary <loic@dachary.org>

commit cad4edceda03291bfb3ca537a7a2756e5f141f23
Merge: a6a8aea 0d4dd10
Author: Samuel Just <sam.just@inktank.com>
Date:   Thu Dec 4 09:30:44 2014 -0800

    Merge pull request #2997 from ceph/wip-snapmapper

    osd: require SNAPMAPPER feature; drop tolerate_collection_add_enoent

    Reviewed-by: Samuel Just <sjust@redhat.com>

commit a6a8aeaefbd813ca5cdd6769b48bd178f472c570
Merge: d212ced 0d6c803
Author: Samuel Just <sam.just@inktank.com>
Date:   Thu Dec 4 09:29:31 2014 -0800

    Merge pull request #2979 from ceph/wip-kill-category

    osd: kill 'category' from pg_stats_t

    Reviewed-by: Samuel Just <sjust@redhat.com>

commit d212ced82bca0ce30e952df125501a4f8539bf65
Merge: 08aa6d3 cb820f8
Author: Samuel Just <sam.just@inktank.com>
Date:   Thu Dec 4 09:26:48 2014 -0800

    Merge pull request #2694 from dachary/wip-9728-jerasure-neon

    erasure-code: jerasure support for NEON

    Reviewed-by: Samuel Just <sjust@redhat.com>

commit 08aa6d3ee924d876b6d4374f59bf4ec61685e9bd
Merge: 473e36c 237b29c
Author: Sage Weil <sage@redhat.com>
Date:   Thu Dec 4 09:25:40 2014 -0800

    Merge pull request #3082 from scuttlemonkey/wip-doc-10247

    Changed os-recommendation table sorting to remove implied bias.

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

commit 473e36ca0b542517401eb057c52069b47e886465
Merge: 6b27089 01df222
Author: Samuel Just <sam.just@inktank.com>
Date:   Thu Dec 4 09:25:14 2014 -0800

    Merge pull request #3048 from ceph/wip-10209

    osd: tolerate sessionless con in fast dispatch path

    Reviewed-by: Greg Farnum <gfarnum@redhat.com>

commit 6b27089808eddaf0ce660001f5fe2c47dae3288a
Merge: 3f2f42d 4e955f4
Author: Samuel Just <sam.just@inktank.com>
Date:   Thu Dec 4 09:24:14 2014 -0800

    Merge pull request #3049 from dachary/wip-10211-erasure-code-buffer-alignement

    erasure-code: enforce chunk size alignment

    Reviewed-by: Samuel Just <sjust@redhat.com>

commit 3f2f42dda4fca24dbf88341f18c8be6a215fc283
Author: Sage Weil <sage@redhat.com>
Date:   Thu Dec 4 09:15:37 2014 -0800

    doc/release-notes: v0.89

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

commit c0685ec70914215e55441c1f8e737bd281723f58
Merge: ec2677e f11fd66
Author: Sage Weil <sage@redhat.com>
Date:   Thu Dec 4 08:39:56 2014 -0800

    Merge remote-tracking branch 'gh/next'

commit 237b29c24843d932f2bd4af1e225040ee3413bea
Author: scuttlemonkey <patrick@inktank.com>
Date:   Thu Dec 4 11:27:35 2014 -0500

    Changed os-recommendation table sorting to remove implied bias.

    Fixes: #10247

    signed-of by: Patrick McGarry <pmcgarry@redhat.com>

commit ec2677eaa661e0eb7901dcfa5305fadd10c5ea56
Merge: f9bd970 dbb5a48
Author: Loic Dachary <dachary@users.noreply.github.com>
Date:   Thu Dec 4 15:10:10 2014 +0100

    Merge pull request #3024 from ceph/wip-librados-symbols

    librados: Only public API symbols from the shared library

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

commit e42df6afbbdbe680ddb5a6021e268d7cc125f403
Author: Yan, Zheng <zyan@redhat.com>
Date:   Thu Dec 4 20:26:59 2014 +0800

    MDSMonitor.cc: fix assertion caused by MDSMap::STATE_DNE state

    Signed-off-by: Yan, Zheng <zyan@redhat.com>

commit f9bd970ea31b307b0042e7f3a7c3a8173c810e77
Merge: d5e2c2c 8e5dbe7
Author: Loic Dachary <dachary@users.noreply.github.com>
Date:   Thu Dec 4 07:39:40 2014 +0100

    Merge pull request #3028 from majianpeng/fix4

    Add perf reset command.

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

commit f11fd66f80a828f29fb6ed63c05f993a9a37f1de
Merge: 68fdc0f d3ee89a
Author: Yan, Zheng <ukernel@gmail.com>
Date:   Thu Dec 4 13:32:32 2014 +0800

    Merge pull request #3074 from ceph/wip-10229

    osdc/Filer: use finisher to execute C_Probe and C_PurgeRange

commit d3ee89ace660161df7796affbf9a70f3d0dedce1
Author: Yan, Zheng <zyan@redhat.com>
Date:   Thu Dec 4 12:18:47 2014 +0800

    osdc/Filer: use finisher to execute C_Probe and C_PurgeRange

    Currently contexts C_Probe/C_PurgeRange are executed while holding
    OSDSession::completion_lock. C_Probe and C_PurgeRange may call
    Objecter::stat() and Objecter::remove() respectively, which acquire
    Objecter::rwlock. This can cause deadlock because there is intermediate
    dependency between Objecter::rwlock and OSDSession::completion_lock:

     Objecter::rwlock -> OSDSession::lock -> OSDSession::completion_lock

    The fix is exexcute C_Probe/C_PurgeRange in finisher thread.

    Fixes: #10229
    Signed-off-by: Yan, Zheng <zyan@redhat.com>

commit 6edaf4e79673682d7d77a05b14e3f6bdc9d2613c
Author: Ken Dreyer <kdreyer@redhat.com>
Date:   Mon Dec 1 18:24:22 2014 -0700

    heap_profiler: support new gperftools header locations

    The google/ headers location has been deprecated as of gperftools 2.0.
    As of gperftools 2.2rc, the google/ headers will now give deprecation
    warnings, and they will probably disappear in a future gperftools
    update.

    Signed-off-by: Ken Dreyer <kdreyer@redhat.com>

commit d5e2c2cf10bcb2e84ca3c50e5d5faa3aa6b99427
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Dec 3 10:45:52 2014 -0800

    mon: fix signed/unsigned comparison warning

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 68fdc0f68e6a04e283d2c5140832a3175b4f9840
Author: Jenkins <jenkins@inktank.com>
Date:   Wed Dec 3 08:18:33 2014 -0800

    0.89

commit 6e69955ab52b53d21cd2670e6bc0b0253e6b52b7
Merge: cbac460 d98cec7
Author: Loic Dachary <dachary@users.noreply.github.com>
Date:   Wed Dec 3 16:28:51 2014 +0100

    Merge pull request #3065 from ceph/wip-cephtool-exec

    qa: fix cephtool tests not getting run

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

commit d98cec7f9c652da570aa2c29558f5651d4a62bdf
Author: John Spray <john.spray@redhat.com>
Date:   Tue Dec 2 21:43:03 2014 +0000

    qa: fix teardown in cephtool's test_mon_mds

    This was missing from 17b5fc9a but we didn't notice
    because the test wasn't being run by the gitbuilders.

    Signed-off-by: John Spray <john.spray@redhat.com>

commit c4f934997a811f20aa394193267424338bda8d2f
Merge: f152bc6 929fcd6
Author: Sage Weil <sage@redhat.com>
Date:   Tue Dec 2 20:56:55 2014 -0800

    Merge pull request #3044 from osynge/wip=suse-systemd

    better systemd support

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

commit cbac4609501f18bcd516937b4fff044828bc2189
Merge: adaa291 3047c9e
Author: Sage Weil <sage@redhat.com>
Date:   Tue Dec 2 20:53:12 2014 -0800

    Merge pull request #3067 from dachary/wip-cephtool

    fix cephtools running only part of the tests + avoid killing wrong daemons

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

commit 8e5dbe7dffbb8b1bf0453809a9c8d796bfb1b684
Author: Jianpeng Ma <jianpeng.ma@intel.com>
Date:   Wed Dec 3 10:28:00 2014 +0800

    common/perf_counters: Remove the duplicated code.

    Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>

commit 963b76494b889a253dff7d014c47444e4f4f3b4c
Author: Jianpeng Ma <jianpeng.ma@intel.com>
Date:   Wed Dec 3 10:26:26 2014 +0800

    test/perf_counters: Replace perfcounters_dump to perf dump.

    The func of command  perfcounters_dump and 'perf dump' are the same .
    But from the print 'ceph --admin-daemon help', it only print 'perf
    dump'. So replace.
    In order to keep consistent, still keep perfcounters_dump in code for
    old user.

    Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>

commit eafb22453fa17a9d0e2f0810d486a48c67de8598
Author: Jianpeng Ma <jianpeng.ma@intel.com>
Date:   Wed Dec 3 10:23:03 2014 +0800

    test/perf_counters: Add test case for cmd 'perf reset'

    Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>

commit 5f8186b1062aa3f5d94a0df5a73b6a360a953caf
Author: Jianpeng Ma <jianpeng.ma@intel.com>
Date:   Wed Dec 3 10:10:03 2014 +0800

    common/perf_counters: Add 'perf reset all|perfcountername' for 'ceph
    --admin-daemon'

    Using this command, we can reset all perfcounters or reset on specified
    perfcounter.

    Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>

commit f152bc69d0586cc81f5d5ec03a646f52169e364c
Merge: e83321e 5d3bff0
Author: Loic Dachary <dachary@users.noreply.github.com>
Date:   Wed Dec 3 01:23:52 2014 +0100

    Merge pull request #3068 from ktdreyer/doc-os-recommendations-cleanup

    doc: os recommendations cleanup

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

commit 5d3bff0494cca8f55183517f1fe572315e7c8602
Author: Ken Dreyer <kdreyer@redhat.com>
Date:   Tue Dec 2 16:31:06 2014 -0700

    doc: rm Fedora minor versions in os recommendations

    Fedora doesn't have point releases, so it doesn't make sense to talk
    about "Fedora 18.0" or "Fedora 19.0" - it's just "Fedora 18" or "Fedora
    19".

    Signed-off-by: Ken Dreyer <kdreyer@redhat.com>

commit 0d4dd10bb6e564f309be21f85b0bfe4dc36d3e7e
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 24 09:23:13 2014 -0800

    os/ObjectStore: drop tolerate_collection_add_enoent

    This is no longer needed and clutters the interface.

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

commit bc5a22b5dc30dfa162384760037577d43051f301
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 24 09:22:30 2014 -0800

    osd: require SNAPMAPPER feature from peers

    This was introduced before cuttlefish.  We require users to upgrade first
    to a newer release, so there is no need to support a mixed cluster with
    such old code.

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

commit e83321ee0977e1778499aa5d25221521152ce1de
Merge: 56dae09 b743a95
Author: Loic Dachary <dachary@users.noreply.github.com>
Date:   Wed Dec 3 00:18:50 2014 +0100

    Merge pull request #3061 from ktdreyer/rpm-ceph-disk-man-page

    packaging: package ceph-disk(8)

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

commit b743a951114b00bbb6e14fb88f1928b504bc0f8b
Author: Ken Dreyer <kdreyer@redhat.com>
Date:   Tue Dec 2 13:58:10 2014 -0700

    packaging: package ceph-disk(8)

    The ceph-disk man page was added in
    a450cab2b8148cb8a9b043d629feccf89e5aabac, but this was not added to the
    RPM or DEB packaging. Add it here.

    Signed-off-by: Ken Dreyer <kdreyer@redhat.com>

commit 2497f16a046ad441a82b0b38e003c455c43a0755
Author: Ken Dreyer <kdreyer@redhat.com>
Date:   Tue Dec 2 15:54:22 2014 -0700

    doc: rm old releases in os recommendations page

    Similar to the change in commit
    4cdc9c793627eec13c65543c09c604ec27a4dd8a, remove the references to old
    Ceph releases.

    Signed-off-by: Ken Dreyer <kdreyer@redhat.com>

commit 0bb2e1ed5ee038e9ec1ee2b19dd7ea80ecf7337c
Author: Ken Dreyer <kdreyer@redhat.com>
Date:   Tue Dec 2 15:52:58 2014 -0700

    doc: clarify "B" flag in os recommendations page

    We don't exactly do continuous builds on all the platforms marked with
    "B", but we have published binary RPMs for them. Adjust the "B"
    footnote definition to reflect this.

    Signed-off-by: Ken Dreyer <kdreyer@redhat.com>

commit 3047c9e000f9a7aec5d0a82b36461a0f150433bc
Author: Loic Dachary <ldachary@redhat.com>
Date:   Tue Dec 2 23:16:05 2014 +0100

    qa: cephtool/test.sh use regular strings to list tests

    Using the array notation to list test is error prone and more
    complicated to write.

    It also fixes a bug : only the first test of each series (MON, OSD, MDS)
    was run and the others were ignored.

    Signed-off-by: Loic Dachary <loic@dachary.org>

commit e3e5741581aa2d8a2c1bc9859826f62a3b406cf0
Author: Loic Dachary <ldachary@redhat.com>
Date:   Tue Dec 2 07:37:15 2014 +0100

    tests: vstart_wrapper.sh must call vstart.sh with a list of daemons

    The list of daemons is provided in the $CEPH_START environment variable
    but vstart_wrapper.sh incorrectly uses the $VSTART_ARGS empty variable.

    As a consequence vstart.sh calls init-ceph stop which kills daemons that
    do not belong to the test.

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

    Signed-off-by: Loic Dachary <loic@dachary.org>

commit 4e955f41297283798236c505c3d21bdcabb5caa0
Author: Loic Dachary <ldachary@redhat.com>
Date:   Tue Dec 2 01:07:34 2014 +0100

    erasure-code: enforce chunk size alignment

    Let say the ErasureCode::encode function is given a 4096 bytes
    bufferlist made of a 1249 bytes bufferptr followed by a 2847 bytes
    bufferptr, both properly starting on SIMD_ALIGN address. As a result the
    second 2048 had to be reallocated when bufferlist::substr_of gets the
    second 2048 buffer, the address starts at 799 bytes after the beginning
    of the 2847 buffer ptr and is not SIMD_ALIGN'ed.

    The ErasureCode::encode must enforce a size alignment based on the chunk
    size in addition to the memory alignment required by SIMD operations,
    using the bufferlist::rebuild_aligned_size_and_memory function instead of
    bufferlist::rebuild_aligned.

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

    Signed-off-by: Loic Dachary <loic@dachary.org>

commit 73ad2d63d479b09037d50246106bbd4075fbce80
Author: Loic Dachary <ldachary@redhat.com>
Date:   Tue Dec 2 02:04:14 2014 +0100

    common: allow size alignment that is not a power of two

    Do not assume the alignment is a power of two in the is_n_align_sized()
    predicate. When used in the context of erasure code it is common
    for chunks to not be powers of two.

    Signed-off-by: Loic Dachary <loic@dachary.org>

commit 9ade88e8dacc9b96c042bb668f4452447139a544
Author: Loic Dachary <ldachary@redhat.com>
Date:   Tue Dec 2 00:59:08 2014 +0100

    common: add bufferlist::rebuild_aligned_size_and_memory

    The function bufferlist::rebuild_aligned checks memory and size
    alignment with the same variable. It is however useful to separate
    memory alignment constraints from size alignment constraints. For
    instance rebuild_aligned could be called to allocate an erasure coded
    buffer where each 2048 bytes chunk needs to start on a memory address
    aligned on 32 bytes.

    Signed-off-by: Loic Dachary <loic@dachary.org>

commit 56dae09b9c22c43492f26812847f76d3a07c491d
Author: John Wilkins <john.wilkins@inktank.com>
Date:   Tue Dec 2 11:23:55 2014 -0800

    doc: Reformatting on rbd replay doc.

    Signed-off-by: John Wilkins <john.wilkins@inktank.com>

commit b8f6b5f77c8ba909627ae3ba107828566d6e9a5c
Author: John Wilkins <john.wilkins@inktank.com>
Date:   Tue Dec 2 11:23:29 2014 -0800

    doc: Added rbd-replay-many and restructured index.

    Signed-off-by: John Wilkins <john.wilkins@inktank.com>

commit 54d5ed3732c5f8faf3fcc216002080791c737c98
Author: John Wilkins <john.wilkins@inktank.com>
Date:   Tue Dec 2 11:23:00 2014 -0800

    doc: Fixed index syntax.

    Signed-off-by: John Wilkins <jowilkin@redhat.com>

commit deaae3f5dd37de5f09f172f448f8f35259207679
Merge: b1aa23e 70e1a5d
Author: John Wilkins <john.wilkins@inktank.com>
Date:   Tue Dec 2 11:09:13 2014 -0800

    Merge pull request #3051 from ceph/wip-doc-rbd-replay

    doc: Document RBD Replay

    Reviewed-by: John Wilkins <jowilkin@redhat.com>

commit b1aa23ee6e7d85fe70c89a287835bb3a4cef3b6f
Merge: 06fe0f6 3012c4a
Author: John Wilkins <john.wilkins@inktank.com>
Date:   Tue Dec 2 11:07:07 2014 -0800

    Merge pull request #3060 from ktdreyer/doc-os-recommendations-centos-7

    doc: add CentOS 7 to recommended OSes

    Reviewed-by: John Wilkins <jowilkin@redhat.com>

commit 3012c4a097a74926f03c14b8e726400963a8d455
Author: Ken Dreyer <kdreyer@redhat.com>
Date:   Tue Dec 2 10:45:26 2014 -0700

    doc: add CentOS 7 to recommended OSes

    CentOS 7 was missing from the list of recommended OSes for Firefly. Add
    it to the list.

    Reported-By: Frank Even <lists+ceph.com@elitists.org>
    Signed-off-by: Ken Dreyer <kdreyer@redhat.com>

commit 06fe0f6ff45b3679210c9c80387c76a6dada1dcd
Merge: 2604ae0 4b35ae0
Author: Yehuda Sadeh <yehuda@redhat.com>
Date:   Tue Dec 2 09:39:02 2014 -0800

    Merge pull request #2993 from theanalyst/s3/keystone-date-fixes

    rgw: check for timestamp for s3 keystone auth

    Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>

commit 2604ae09076598a9c07a2f1913cf4c478c278bb8
Merge: 017f669 6862891
Author: Loic Dachary <dachary@users.noreply.github.com>
Date:   Tue Dec 2 18:16:56 2014 +0100

    Merge pull request #3058 from nilamdyuti/wip-doc-ceph-disk

    doc: Adds man page for ceph disk in TOC.

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

commit 6862891c9c60b813dacd8d5323915f3798d50832
Author: Nilamdyuti Goswami <ngoswami@redhat.com>
Date:   Tue Dec 2 22:34:57 2014 +0530

    doc: Adds man page for ceph disk in TOC.

    Signed-off-by: Nilamdyuti Goswami <ngoswami@redhat.com>

commit adaa291e8174539acfccd18f0d83526aa5fd36e2
Merge: 25fc21b 491da51
Author: John Spray <jcspray@gmail.com>
Date:   Tue Dec 2 14:19:06 2014 +0000

    Merge pull request #3056 from ceph/wip-9997-1

    client: invalidate kernel dentries one by one

    Reviewed-by: John Spray <john.spray@redhat.com>

commit 491da5173fc33fec944865f0e2e9a506ec71fc5b
Author: Yan, Zheng <zyan@redhat.com>
Date:   Mon Dec 1 21:54:52 2014 +0800

    client: invalidate kernel dentries one by one

    Our trick to trim the whole kernel dentry tree does not work for 3.18+ kernel.
    The fix is trim kernel dentries one by one.

    Fixes: #9997
    Signed-off-by: Yan, Zheng <zyan@redhat.com>

commit 017f669cdb667c99e282d224e0ea39612af39ef1
Merge: d0641b0 2fa4884
Author: John Spray <jcspray@gmail.com>
Date:   Tue Dec 2 13:18:10 2014 +0000

    Merge pull request #3052 from ceph/wip-flush-journal-fix

    mds: fix race of trimming log segments

    Reviewed-by: John Spray <john.spray@redhat.com>

commit d0641b0e85e3ac40f7032a0f3907de5336f5e310
Merge: 9e3e4c8 0659381
Author: Loic Dachary <dachary@users.noreply.github.com>
Date:   Tue Dec 2 10:32:15 2014 +0100

    Merge pull request #2994 from dachary/wip-10175-compile-dependencies

    script replacement for deps.{rpm,deb}.txt

    Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
    Reviewed-by: Thorsten Behrens <tbehrens@suse.com>
    Reviewed-by: Sage Weil <sage@redhat.com>
    Reviewed-by: Sahid Orentino Ferdjaoui <sahid.ferdjaoui@redhat.com>

commit 2fa4884fd8c0bc70e4dd17a957693a636024c608
Author: Yan, Zheng <zyan@redhat.com>
Date:   Tue Dec 2 13:59:11 2014 +0800

    mds: fix race of trimming log segments

    trimming old log segments can start new log segments, make sure
    MDLog::trim_all() not expire newly started log segments.

    Signed-off-by: Yan, Zheng <zyan@redhat.com>

commit 9e3e4c8e51b0e9d336520aab351a459e23ba9370
Merge: 772a0d5 3376fee
Author: Sage Weil <sage@redhat.com>
Date:   Mon Dec 1 20:47:29 2014 -0800

    Merge pull request #3041 from xiaoxichen/cleanup-noop

    Cleanup noop in message

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

commit 70e1a5dcbb1b817a935782037f9a2b11d12f4d53
Author: Adam Crume <adamcrume@gmail.com>
Date:   Mon Dec 1 20:44:02 2014 -0800

    doc: Document RBD Replay

    Signed-off-by: Adam Crume <adamcrume@gmail.com>

commit 01df2227125abf94571b4b0c7bccca57098ed2dc
Author: Sage Weil <sage@redhat.com>
Date:   Mon Dec 1 18:15:59 2014 -0800

    osd: tolerate sessionless con in fast dispatch path

    We can now get a session cleared from a Connection at any time.  Change
    the assert to an if in ms_fast_dispatch to cope.  It's pretty rare, but it
    can happen, especially with delay injection.  In particular, a racing
    thread can call mark_down() on us.

    Fixes: #10209
    Backport: giant
    Signed-off-by: Sage Weil <sage@redhat.com>

commit 25fc21b837ba74bab2f6bc921c78fb3c43993cf5
Merge: 310a3f1 17b5fc9
Author: Gregory Farnum <greg@gregs42.com>
Date:   Mon Dec 1 18:05:02 2014 -0800

    Merge pull request #3008 from ceph/wip-10135

    mon: OSDMonitor: allow adding tiers to FS pools

    Reviewed-by: Greg Farnum <gfarnum@redhat.com>

commit 772a0d538ae26c58d2ed52f62cc3417aabcb0fc0
Merge: f868ca0 0f1c9fd
Author: Gregory Farnum <greg@gregs42.com>
Date:   Mon Dec 1 17:30:36 2014 -0800

    Merge pull request #3050 from dachary/wip-10213-const

    msg: do not const methods that return a mutable pointer

    Reviewed-by: Greg Farnum <gfarnum@redhat.com>

commit 0f1c9fd1aa250fa9aceff330de6318ba404341c4
Author: Loic Dachary <ldachary@redhat.com>
Date:   Tue Dec 2 02:20:15 2014 +0100

    msg: do not const methods that return a mutable pointer

    Add remove misleading const on post_rx_buffer argument.

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

    Signed-off-by: Loic Dachary <loic@dachary.org>

commit 0d6c803ddef535fe90935959d48dfb2ed2c0037a
Author: Sage Weil <sage@redhat.com>
Date:   Fri Oct 31 09:52:27 2014 -0700

    osd/osd_types: drop category from object_info_t

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

commit 5ecdce3b8793c9edd3d33227a3475572a5deccc1
Author: Sage Weil <sage@redhat.com>
Date:   Fri Oct 31 09:52:16 2014 -0700

    osdc/Objecter: drop category from copy-get

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

commit d229548db500a7421309fe6c3804aa1231f144cd
Author: Sage Weil <sage@redhat.com>
Date:   Fri Oct 31 09:48:22 2014 -0700

    osd/ReplicatedPG: drop cateogry support from CREATE

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

commit 4e1f4cfed115e95bdf7905944f9e33a5ca2fa9ba
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 30 15:43:31 2014 -0700

    rados: drop optional 'create [category]' arg

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

commit 3008ca4eb114f2cefa99dbc218af8b9b5942e00c
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 30 15:42:38 2014 -0700

    rados: change 'df' output now that categories are gone

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

commit 39c46a2de7997df8f9a350e1364d3a841e7e5fc9
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 30 15:41:38 2014 -0700

    PendingReleaseNotes: not about dropping category

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

commit ee4f6d72882ee139d9f8d095d45be6c9cd2a23c7
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 30 15:14:47 2014 -0700

    osd/osd_types: drop useless conditionals on object_info_t decode

    The incompat decode version is 8, so we will never see struct_v < 5.

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

commit ee3b5b2661fa516d803005db9e1d1b5054e54faf
Author: Sage Weil <sage@redhat.com>
Date:   Fri Oct 31 09:46:46 2014 -0700

    osd/osd_types: remove cat_sum from object_stat_collection_t

    This type is now just a useless wrapper around object_stat_sum_t, but that
    is not easy to drop.

    Note that now if we load and reencode a legacy object we'll drop those
    fields.  We would mark the incompat flag in the object corpus accordingly,
    but nothing in there populates the cat fields.

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

commit c94c33b9a6e0a0bd2ddfdb73d270c09553e81148
Author: Sage Weil <sage@redhat.com>
Date:   Fri Oct 31 09:45:16 2014 -0700

    mon/PGMonitor: do not report per-category stats

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

commit 387d055f136e4dde201f8e5419860c1a4247245d
Author: Sage Weil <sage@redhat.com>
Date:   Fri Oct 31 09:44:41 2014 -0700

    osd: stop doing per-category accounting

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

commit bebcd1462b14ee901dc9c768e487a23d3a490489
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 30 11:47:40 2014 -0700

    librados: drop create category args

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

commit 5020bbe29686e6b051a31da5375be03c14dc303e
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 30 11:45:36 2014 -0700

    librados: add new get_pool_stats() variant; deprecate others

    A new call will return a simple map of pool -> stats.  Drop the old ones
    that did pool -> category -> stats, and deprecate the category one
    entirely.

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

commit 080fae6e92cb8c409da0b1353629e1d47239f807
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 30 09:51:04 2014 -0700

    librados: mark category args and ops as unused

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

commit f868ca04d2ee57b214837d824653e3a2d56e23da
Merge: 8cb8854 2fe5c4c
Author: Sage Weil <sage@redhat.com>
Date:   Mon Dec 1 09:23:39 2014 -0800

    Merge pull request #2825 from ceph/wip-9921

    SimpleMessenger: Pipe: do not block on takeover while holding global locks

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

commit 8cb8854f4d599c13df320c2092633c6999d2046f
Merge: 44b101c e0190bd
Author: Sage Weil <sage@redhat.com>
Date:   Mon Dec 1 09:10:17 2014 -0800

    Merge pull request #3046 from yuyuyu101/fix-kinetic

    KnieticStore: add necessary header file

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

commit 44b101c80dae6f87d463be8b60ccd5c6d46da268
Merge: 77deeaa 50f9edb
Author: Samuel Just <sam.just@inktank.com>
Date:   Mon Dec 1 09:08:13 2014 -0800

    Merge pull request #2922 from ceph/wip-da-SCA-20141111

    Coverity fixes

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

commit 77deeaa4ffa247a2c93599d2d135416d35912a3f
Merge: 42c85e8 cf2104d
Author: Samuel Just <sam.just@inktank.com>
Date:   Mon Dec 1 09:07:38 2014 -0800

    Merge pull request #2937 from simon3z/master

    common: do not unlock rwlock on destruction

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

commit 310a3f1c65d25ee1fc60398f0fe025e4b19f55fe
Merge: aa4d147 06fc39c
Author: Samuel Just <sam.just@inktank.com>
Date:   Mon Dec 1 09:05:44 2014 -0800

    Merge pull request #2945 from ceph/wip-9321

    mon: PaxosService: can be readable even if proposing

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

commit 42c85e80b649af107eac11ccdd44dc533a66bf3d
Merge: 34f0bfd e25724b
Author: Samuel Just <sam.just@inktank.com>
Date:   Mon Dec 1 09:05:04 2014 -0800

    Merge pull request #2788 from ceph/wip-warn-max-pg

    mon: warn when there are too many pgs per osd

    Reviewed-by: Joao Eduardo Luis <joao@redhat.com>
    Reviewed-by: Samuel Just <sjust@redhat.com>

commit 34f0bfd13238e2ac4a0be4edb2cd97efcab7af97
Merge: f9e2112 3776f07
Author: Samuel Just <sam.just@inktank.com>
Date:   Mon Dec 1 09:00:06 2014 -0800

    Merge pull request #2735 from ceph/wip-pg-stat

    mon: make 'pg stat -f json' not pg dump; make JSON dump of floats floats and not strings

    Reviewed-by: Samuel Just <sjust@redhat.com>

commit 06593813af2302584828bb743049164e70c6f67b
Author: Loic Dachary <ldachary@redhat.com>
Date:   Tue Nov 25 17:25:26 2014 +0100

    documentation: replace deps.{deb,rpm}.txt with scripts

    install-deps.sh installs the dependencies based on the content of
    debian/control (if apt-get is found) or ceph.spec.in (if yum is
    found). The manually maintained list of dependencies for deb based
    operating systems (deps.deb.txt) and rpm based operating
    systems (deps.rpm.txt) are deprecated.

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

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

commit e0190bd38e2d79ee844339907069f97b469a1dae
Author: Haomai Wang <haomaiwang@gmail.com>
Date:   Mon Dec 1 22:24:45 2014 +0800

    KnieticStore: add necessary header file

    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>

commit 929fcd67aa25334d8c2f77d00f2b4c44be305b51
Author: Owen Synge <osynge@suse.com>
Date:   Mon Dec 1 14:32:48 2014 +0100

    better systemd support

    Added ceph.target
    Made ceph-mds, ceph-mon, ceph-osd services part of ceph.target
    Made ceph-mds, ceph-mon, ceph-osd services require partitions to be available.
    Added ceph init script with sysV like behaviour.

    Provided by Tim Serong tserong@suse.com and Owen Synge osynge@suse.com

    Signed-off-by: Owen Synge <osynge@suse.com>

commit 3376fee957c916653c8b6035b971e2b76190233d
Author: Xiaoxi Chen <xiaoxi.chen@intel.com>
Date:   Mon Dec 1 21:35:10 2014 +0800

    Cleanup noop in message

    The noop loop are dead, so clean it up

    Signed-off-by: Xiaoxi Chen <xiaoxi.chen@intel.com>

commit f9e2112b8619cbf572b2494411b9967ffa34318e
Merge: efdfec4 5b5493d
Author: John Spray <jcspray@gmail.com>
Date:   Mon Dec 1 12:20:44 2014 +0000

    Merge pull request #2855 from ceph/wip-9881

    #9881 MDS flush journal asok command

    Reviewed-by: Yan, Zheng <zyan@redhat.com>

commit 5b5493db5b1aa4e61147a4bcafd173e25f93d832
Author: John Spray <john.spray@redhat.com>
Date:   Fri Oct 31 12:41:18 2014 +0000

    mds: implement "flush journal" asok

    Start a new segment and flush everything older
    to the backing store.

    Signed-off-by: John Spray <john.spray@redhat.com>

commit efeaaaa0b079abb29ca757077c304a6efe94ec73
Author: John Spray <john.spray@redhat.com>
Date:   Mon Nov 3 12:39:56 2014 +0000

    mds: in segment expiry, use end instead of start

    Previously we were always leaving the last log
    segment un-expired from Journaler's POV, because
    we were updating expire_pos to the *start* of the
    expired journal segment instead of the *end*.

    This was harmless, but cleaning it up makes it
    easier to see what's going on during journal flushes
    in testing.

    Signed-off-by: John Spray <john.spray@redhat.com>

commit 2ec67733ce10e5f89ac3ed4d88601a141163bb7b
Author: John Spray <john.spray@redhat.com>
Date:   Thu Nov 20 14:27:27 2014 +0000

    mds: fix MDLog I/O callback without finisher

    This could deadlock if another caller was waiting
    on a write_head callback while holding mds_lock.

    Signed-off-by: John Spray <john.spray@redhat.com>

commit efdfec487a7a6ac683d99a2e1111f3dbb33aee0c
Merge: f1296fd 62a8f2d
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Sun Nov 30 23:31:17 2014 +0100

    Merge pull request #3037 from stiopaa1/cleanup

    added some consts, some cleanup

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

commit 62a8f2d978accef41268b29262c76977884cee9a
Author: Michal Jarzabek <stiopa@gmail.com>
Date:   Sun Nov 30 20:18:25 2014 +0000

    added consts, cleanup
    Signed-off-by: Michal Jarzabek <stiopa@gmail.com>

commit f1296fd87a579ef89d00ce25d6c573de9f5ee8ec
Merge: f3d9728 faa4cbb
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Sun Nov 30 10:23:43 2014 +0100

    Merge pull request #3019 from theanalyst/doc/typo/ceph-auth

    doc: minor fix in ceph-authtool man page

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

commit f3d972828cc778d1b4dbd28060eba1a6fa2ed54e
Merge: 936542c 6a98dac
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Sun Nov 30 10:18:26 2014 +0100

    Merge pull request #3023 from ktdreyer/rpm-rbd-replay-prep-conditional

    rpm: unconditionally package rbd-replay-prep(8)

    Reviewed-by: Adam Crume <adamcrume@gmail.com>

commit faa4cbbef24697b52e8d2cb8e6047833b5f4fc6e
Author: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
Date:   Wed Nov 26 21:43:10 2014 +0530

    doc: minor fix in ceph-authtool man page

    Signed-off-by: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>

commit 936542c665a98355ac1b080f8f18196acd7f790a
Merge: bc90df1 0fe5bc6
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Sat Nov 29 00:04:49 2014 +0100

    Merge pull request #3032 from dachary/wip-osd-log-cosmetics

    osd: log message content cosmetics

    Reviewed-by: Sahid Orentino Ferdjaoui <sahid.ferdjaoui@redhat.com>

commit 0fe5bc601112a101b37c9a229a13f4011436c949
Author: Loic Dachary <ldachary@redhat.com>
Date:   Fri Nov 28 16:20:00 2014 +0100

    osd: log message content cosmetics

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

commit bc90df1ed48a513a518853c9c6369d16edd8af7f
Merge: d3e286e 0d89db5
Author: John Spray <jcspray@gmail.com>
Date:   Fri Nov 28 12:59:29 2014 +0000

    Merge pull request #2769 from ceph/wip-9557

    mds: verify backtrace when fetching dirfrag

    Reviewed-by: John Spray <john.spray@redhat.com>

commit d3e286e73b0ddb5a8218cec05c78ddf95e7e7d1c
Merge: 50de36e b9d7f79
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Fri Nov 28 08:12:50 2014 +0100

    Merge pull request #3027 from majianpeng/fix1

    Add "make check" dep python-virtualenv in deps.rpm.txt

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

commit b9d7f794cfc40f88d1d3176ff1ef7cbd8b6cf59d
Author: Jianpeng Ma <jianpeng.ma@intel.com>
Date:   Fri Nov 28 14:24:58 2014 +0800

    Add "make check" dep python-virtualenv in deps.rpm.txt

    In fedora20, When 'make  check' and met those error messages:
    /src/test/run-cli-tests: virtualenv not installed, skipping python-using
    tests.

    Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>

commit 50de36edffcc39e7481226a08aa97807462f2411
Merge: 8766ca3 c10d639
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Thu Nov 27 09:56:03 2014 +0100

    Merge pull request #3025 from majianpeng/fix1

    Add isa-erasure yasm dep for deps.rpm.txt

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

commit c10d6390449535f284d915b8fd3eacc4f59d6ef7
Author: Jianpeng Ma <jianpeng.ma@intel.com>
Date:   Thu Nov 27 15:11:09 2014 +0800

    Add isa-erasure yasm dep for deps.rpm.txt

    Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>

commit 6a98dacde1d42f5c599feb53b45c3c5ee8515e51
Author: Ken Dreyer <kdreyer@redhat.com>
Date:   Wed Nov 26 16:49:53 2014 -0700

    rpm: unconditionally package rbd-replay-prep(8)

    The build system will conditionally build and install the
    rbd-replay-prep utility based on the presence of lttng.

    Commit 230c5b8e7f58e2e8be32c3f31c6abcc5bdabc5ca adjusted the RPM
    packaging so that we only package and ship the rbd-replay-prep utility
    and its man page when we're on a platform that has lttng.

    The problem is that this is only half-correct. The build system
    unconditionally installs the man page for rbd-replay-prep, regardless of
    whether lttng was present or absent, and (by extension,) without regard
    for whether we've built and installed the rbd-replay-prep binary or not.

    We have two options: either the build system should be adjusted to
    conditionally skip installing rbd-replay-prep(8), or else we should just
    adjust the RPM packaging to always ship the man page. This commit does
    the latter.

    Backport: firefly
    Signed-off-by: Ken Dreyer <kdreyer@redhat.com>

commit dbb5a48e4adb17f75994257d0c233e9a9ccbaec0
Author: Jason Dillaman <dillaman@redhat.com>
Date:   Sat Nov 15 06:00:30 2014 -0500

    librados: Only public API symbols from the shared library

    The librados shared library was previously exporting all
    symbols.  librados public API methods are now explicitly
    exported and all other symbols are hidden.

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

commit 8766ca338dc2f53cbf7963898ae5930dc50cb98b
Merge: c2c53d7 03a61d2
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Wed Nov 26 22:37:31 2014 +0100

    Merge pull request #3022 from leseb/fix-opts

    Minor typos and trailing spaces

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

commit 03a61d27efcfdf0c97cc53e6976e43754af21830
Author: Sébastien Han <sebastien.han@enovance.com>
Date:   Wed Nov 26 22:33:31 2014 +0100

    Minor typos and trailing spaces

    Fix typos and trailing spaces.

    Signed-off-by: Sébastien Han <sebastien.han@enovance.com>

commit c2c53d72599d4782bd205ba5f35ab389086ff4b4
Merge: 60e7fdd 782a74c
Author: Josh Durgin <jdurgin@redhat.com>
Date:   Wed Nov 26 11:30:16 2014 -0800

    Merge pull request #3016 from yuyuyu101/fix-kinetic-support

    KineticStore: Fix compile error and add _test_init

    Reviewed-by: Josh Durgin <jdurgin@redhat.com>

commit 782a74cddd4a72c8106a25fbe9c255d4d4209d28
Author: Haomai Wang <haomaiwang@gmail.com>
Date:   Wed Nov 26 20:37:53 2014 +0800

    KineticStore: Fix compile error and add _test_init

    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>

commit 60e7fddf79149c4b4280079a9f0205b7f1bbc3df
Merge: 76892c3 016080d
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Wed Nov 26 19:24:56 2014 +0100

    Merge pull request #2995 from nilamdyuti/wip-doc-ceph-disk

    doc: Adds man page for ceph-disk utility.

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

commit 76892c3bef9f333cd3f8f7dc046b9019b5e59fcc
Merge: 5b500fa 21798f9
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Wed Nov 26 19:21:18 2014 +0100

    Merge pull request #3021 from tchaikov/wip-fix-typos

    doc: fix some typos in ObjectStore.h

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

commit 21798f9a7d37fb2d5763ad8ef0b857fffa8f2119
Author: Kefu Chai <tchaikov@gmail.com>
Date:   Thu Nov 27 02:03:27 2014 +0800

    doc: fix some typos in ObjectStore.h

    Signed-off-by: Kefu Chai <tchaikov@gmail.com>

commit 016080d2c39919d73956e5e138ba5f079327aa44
Author: Nilamdyuti Goswami <ngoswami@redhat.com>
Date:   Wed Nov 26 22:21:32 2014 +0530

    doc: Adds the updated man page for ceph-disk utility.

    Signed-off-by: Nilamdyuti Goswami <ngoswami@redhat.com>

commit 8a48847cd46d4807ca1dbd13d3a561a693cdc877
Author: Nilamdyuti Goswami <ngoswami@redhat.com>
Date:   Wed Nov 26 22:19:01 2014 +0530

    doc: Updates the man page for ceph-disk utility with some changes.

    Signed-off-by: Nilamdyuti Goswami <ngoswami@redhat.com>

commit 5b500facc1c75e1c9326f6b776b64711626ff8eb
Merge: 80c816c e6410eb
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Wed Nov 26 00:20:24 2014 +0100

    Merge pull request #3011 from stiopaa1/someConsts

    added some consts

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

commit e6410ebf394a8b084d7d18a0a041e9c2ef7daecd
Author: Michal Jarzabek <stiopa@gmail.com>
Date:   Tue Nov 25 20:58:04 2014 +0000

    added some consts
    Signed-off-by: Michal Jarzabek <stiopa@gmail.com>

commit 17b5fc9a40440e76dd1fa64f7fc19577ae3b58ce
Author: John Spray <john.spray@redhat.com>
Date:   Tue Nov 25 16:54:42 2014 +0000

    mon: OSDMonitor: allow adding tiers to FS pools

    This was an overly-strict check.  In fact it is perfectly
    fine to set an overlay on a pool that is already in use
    as a filesystem data or metadata pool.

    Fixes: #10135

    Signed-off-by: John Spray <john.spray@redhat.com>

commit 9a118d56d4a5b0a0456e9f092f5ae9293f7bf3f3
Author: Nilamdyuti Goswami <ngoswami@redhat.com>
Date:   Tue Nov 25 21:23:08 2014 +0530

    doc: Adds man page for ceph-disk utility.

    Signed-off-by: Nilamdyuti Goswami <ngoswami@redhat.com>

commit 242dd1c0bbb728475a94f47740790b8a196d9804
Author: Nilamdyuti Goswami <ngoswami@redhat.com>
Date:   Tue Nov 25 21:16:16 2014 +0530

    doc: Removes ceph-deploy usage instances from ceph-disk man page.

    Signed-off-by: Nilamdyuti Goswami <ngoswami@redhat.com>

commit cb820f81901f7688a938202c48127449a8709485
Author: Loic Dachary <ldachary@redhat.com>
Date:   Mon Nov 24 17:48:59 2014 +0100

    erasure-code: test NEON arch selection logic

    The jerasure plugin loads the plugin that matches the architecture
    supported by the CPU at runtime. Include the NEON plugin in the tests.

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

commit a7888290aed04a918141612568cc332c1e10a571
Author: Loic Dachary <ldachary@redhat.com>
Date:   Mon Nov 24 17:21:27 2014 +0100

    erasure-code: include new headers in distribution

    The NEON optimization introduced new headers that must be listed
    explicitly to be included in tarbals.

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

commit 59f78b0652fa34298ce1dc9205d41a2731c20a8a
Author: Loic Dachary <ldachary@redhat.com>
Date:   Mon Nov 24 16:17:38 2014 +0100

    erasure-code: always compile SSE and NEON tests

    They do not actually depend on CPU features and are required to validate
    the plugin selection logic.

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

commit 990c6d5b40a00fdffbe7835ced8227cbfc6eeecd
Author: Janne Grunau <j@jannau.net>
Date:   Tue Sep 9 11:17:39 2014 +0200

    erasure-code: build and use a NEON jerasure variant

commit 8351fd6955caa8d4807b1ce849c757068d4e4ee4
Author: Janne Grunau <j@jannau.net>
Date:   Thu Sep 11 13:56:45 2014 +0200

    erasure-code: gf-complete use neon enabled branch

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

commit 987d54b7cd9d35e58f642e976b6582c8ca7377d0
Author: Janne Grunau <j@jannau.net>
Date:   Thu Sep 18 22:15:30 2014 +0200

    aarch64: add support for HW_CAP based neon runtime detection

commit cec00c9f4ad99fd50334339bf6cc0727692f3b0f
Author: Janne Grunau <j@jannau.net>
Date:   Tue Sep 9 09:47:16 2014 +0200

    autotools: ARM/AArch64 NEON detection similar to x86

commit ba520bf73b6c7d52b8dc0047185f0ca2c74eb961
Author: Janne Grunau <j@jannau.net>
Date:   Thu Sep 18 20:14:10 2014 +0200

    erasure-code: conditionally build jerasure sse3/sse4 plugins

commit 80c816c7941186d8ba1a507758565b464ebaf731
Merge: 2e1664c 0b985d2
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Tue Nov 25 14:14:20 2014 +0100

    Merge pull request #3003 from dachary/wip-10185-neon

    arch: fix neon feature detection

    Reviewed-by: Sahid Orentino Ferdjaoui <sahid.ferdjaoui@redhat.com>

commit 0b985d2b11df9b34bbc8ebb300b2ec493d7dc5b8
Author: Loic Dachary <ldachary@redhat.com>
Date:   Tue Nov 25 10:39:21 2014 +0100

    arch: fix neon feature detection

    The fread function returns the number of elements read, not the number
    of bytes.

    Introduced by 1cef8339f7a2a503327c20c014e696c91d36281e , after giant.

    Add tests for protection against similar regressions.

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

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

commit 2e1664c5188e3dbd4dfca982a2da1d46ece146bc
Merge: c5d272c 24eb564
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Tue Nov 25 12:07:37 2014 +0100

    Merge pull request #3002 from thesues/fix-init

    Remove pidfile and asok after stopping ceph

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

commit 24eb5647685ebba5e04e0171fae24033badca656
Author: Dongmao Zhang <deanraccoon@gmail.com>
Date:   Tue Nov 25 15:34:46 2014 +0800

    Remove pidfile and asok after stopping ceph

    Signed-off-by: Dongmao Zhang <deanraccoon@gmail.com>

commit aa4d1478647ce416e9cf4e8fcd32411230639f40
Merge: 9ba17a3 0c33930
Author: Gregory Farnum <greg@gregs42.com>
Date:   Mon Nov 24 17:19:46 2014 -0800

    Merge pull request #2996 from ceph/wip-10151

    mon: fix MDS health status from peons

    Reviewed-by: Greg Farnum <gfarnum@redhat.com>

commit c5d272c9f24c1272a0c4314c2ee0085b2337722c
Merge: 29fa2ad 9d84d2e
Author: David Zafman <david.zafman@inktank.com>
Date:   Mon Nov 24 13:26:21 2014 -0800

    Merge pull request #2872 from dachary/wip-10018-primary-erasure-code-hinfo

    osd: erasure code deep scrub must not abort if hinfo is missing

    Reviewed-by: David Zafman <dzafman@redhat.com>

commit 29fa2ad31aab752a444ed9918862408b00966177
Merge: 5c92a0c e983230
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 24 12:47:43 2014 -0800

    Merge pull request #2984 from stiopaa1/includeFix

    remove unneeded include file

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

commit 7dcc85042b0c0a26e495f7574ce144d1083d15f8
Author: Nilamdyuti Goswami <ngoswami@redhat.com>
Date:   Tue Nov 25 02:06:39 2014 +0530

    doc: Updates man page for ceph-disk utility.

    Signed-off-by: Nilamdyuti Goswami <ngoswami@redhat.com>

commit e983230c621610bb60a3792d13f43520e20490cb
Author: Michal Jarzabek <stiopa@gmail.com>
Date:   Sun Nov 23 20:42:20 2014 +0000

    remove unneeded include file

    Signed-off-by: Michal Jarzabek <stiopa@gmail.com>

commit 5c92a0cb16abcd986da24f18a25b169980bea148
Merge: a4222b4 a1ba385
Author: John Wilkins <john.wilkins@inktank.com>
Date:   Mon Nov 24 11:35:26 2014 -0800

    Merge pull request #2998 from theanalyst/doc/rgw-s3-bucket-loc

    doc: rgw document s3 bucket location features.

    Reviewed-by: John Wilkins <jowilkin@redhat.com>

commit a1ba3852cc9475c6b5595728df14b7f4fa12727b
Author: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
Date:   Mon Nov 24 22:57:44 2014 +0530

    doc: rgw document s3 bucket location features

    Fixes: #10142
    Reported-by: Neil Levine <nlevine@redhat.com>
    Signed-off-by: Abhishek Lekshmanan <abhishek.lekshmanan@ril.com>

commit 0c33930e3a90f3873b7c7b18ff70dec2894fce29
Author: John Spray <john.spray@redhat.com>
Date:   Mon Nov 24 11:00:25 2014 +0000

    mon: fix MDS health status from peons

    The health data was there, but we were attempting
    to enumerate MDS GIDs from pending_mdsmap (empty on
    peons) instead of mdsmap (populated from paxos updates)

    Fixes: #10151
    Backport: giant

    Signed-off-by: John Spray <john.spray@redhat.com>

commit a450cab2b8148cb8a9b043d629feccf89e5aabac
Author: Nilamdyuti Goswami <ngoswami@redhat.com>
Date:   Mon Nov 24 22:05:11 2014 +0530

    doc: Adds man page for ceph-disk utility.

    Signed-off-by: Nilamdyuti Goswami <ngoswami@redhat.com>

commit a4222b43eefa86949a622e96dde9022eb5c6685c
Merge: 42974e1 61cae54
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 24 07:33:59 2014 -0800

    Merge pull request #2992 from dachary/wip-10173-autogen

    autogen.sh: git submodule sync

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

commit 4b35ae067fef9f97b886afe112d662c61c564365
Author: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
Date:   Mon Nov 17 17:37:00 2014 +0530

    rgw: check for timestamp for s3 keystone auth

    This commit ensures that we check for timestamp of s3 request is within
    acceptable grace time of radosgw
    Addresses some failures in #10062
    Fixes: #10062
    Signed-off-by: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>

commit 61cae5413775cf0b3590336ad587d7bf501926f3
Author: Loic Dachary <ldachary@redhat.com>
Date:   Mon Nov 24 12:35:50 2014 +0100

    autogen.sh: git submodule sync

    It is not enough to git submodule update on a existing git clone: if the
    URL of the repository has been changed, the

       git submodule sync

    command must be called to synchronizes submodules' remote URL
    configuration setting to the value specified in .gitmodules.

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

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

commit 42974e12f63b182b5b678d9ad131dd4022c11372
Merge: 47bc8da 12f1f21
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Mon Nov 24 08:27:51 2014 +0100

    Merge pull request #2936 from ceph/wip-mailmap

    Update Inktank attribution to point to Red Hat

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

commit 12f1f21aceca84ac7334e4b9b42fc4e090f635d5
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 14:17:38 2014 -0800

    mailmap: Update Warren Usui's attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 43c75ee4efa4aec5d5fd79effbe918083ab2785b
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 14:16:56 2014 -0800

    mailmap: Update Tyler Brekke's attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 9df4624454911fe45db1b2d44b9ea5a0a75ce9f0
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 14:16:00 2014 -0800

    mailmap: Update Tamil Muthamizhan's attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit fb741524df024904737accb582f89b7a79ee830f
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 14:14:16 2014 -0800

    mailmap: Update Sandon Van Ness' attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit c5d5e0636de7f2161138370770e791583d0b258e
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 14:12:00 2014 -0800

    mailmap: Update Samuel Just's attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit a6a2a0551849e35a44756deb765f0c15a87749fc
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 14:09:38 2014 -0800

    mailmap: Update Patrick McGarry's attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 4d2f63e73da368073e1afd2a16c69d0939c1e458
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 14:07:07 2014 -0800

    mailmap: Update Noah Watkins' attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 4ee3a87691f389de69758a2ceeee544201d98ae7
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 14:06:19 2014 -0800

    mailmap: Update Neil Levine's attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 12e511b5376cd9880e866e4e5cf52fdf1b5bdb3e
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 14:06:05 2014 -0800

    mailmap: Update Mark Nelson's attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit bdf534a5433f5100704875c134ff9e6994fedd87
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 14:04:26 2014 -0800

    mailmap: Update Ken Dreyer's attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit df19410610c1d504b55d3b7e3434de7ac12e3794
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 14:01:35 2014 -0800

    mailmap: Update Josh Durgin's attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit d9ee8d601cb49b82ce39a4cf1ce2a91d133a5a37
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 14:01:23 2014 -0800

    mailmap: Update John Wilkins' attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit c84aa394209d903cfb6a82a1354fdc997ac0be46
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 13:57:53 2014 -0800

    mailmap: Update Joao Luis' attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 806a478edcd60947afd34fef7ceeef8604e9e25f
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 13:53:39 2014 -0800

    mailmap: Update Ilya Dryomov's attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit eaa9889bde3adce910026ed8ed2bcb4282265419
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 13:51:10 2014 -0800

    mailmap: Update Dan Mick's attribution

    Point his addresses at Red Hat now, but revert the Inktank->Redhat mappings
    so we have more historical accuracy.

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 330b09de1ab9dcd2731b9c7f3634ca4ec0e5384a
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 13:50:22 2014 -0800

    mailmap: Update Alfredo Deza's attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 1853af3dcd85d8d5d45c725d3fab9ae381eae8d7
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Nov 14 13:41:20 2014 -0800

    mailmap: Update Greg Farnum's attribution to Red Hat

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 47bc8da32952dd0617de6cf9e4f7d4d22ba4cf40
Merge: ca13ce1 9ba17a3
Author: Sage Weil <sage@redhat.com>
Date:   Sun Nov 23 18:55:32 2014 -0800

    Merge remote-tracking branch 'gh/next'

commit ca13ce1b35f0aba769bed8f057a14915264ee48f
Merge: eb5d211 5470914
Author: Sage Weil <sage@redhat.com>
Date:   Sun Nov 23 12:59:42 2014 -0800

    Merge pull request #2983 from tchaikov/wip-fix-lock-dep

    lockdep: do not use $CEPH_LOCKDEP for g_lockdep

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

commit 5470914f73d95d0af1fff7e40930c83facf663c6
Author: Kefu Chai <tchaikov@gmail.com>
Date:   Mon Nov 24 03:12:24 2014 +0800

    lockdep: do not use $CEPH_LOCKDEP for g_lockdep

    * a non-zero CEPH_LOCKDEP brings ceph down because g_lockdep_ceph_ctx
      is still being constructed when dout_impl() dereferences it.
    * fix a typo in comment.
    * remove dead code.

    Signed-off-by: Kefu Chai <tchaikov@gmail.com>

commit 9ba17a321db06d3d76c9295e411c76842194b25c
Author: Yehuda Sadeh <yehuda@redhat.com>
Date:   Thu Nov 20 10:36:05 2014 -0800

    rgw-admin: create subuser if needed when creating user

    Fixes: #10103
    Backport: firefly, giant
    This turned up after fixing #9973. Earlier we also didn't create the
    subuser in this case, but we didn't really read the subuser info when it
    was authenticating. Now we do that as required, so we end up failing the
    authentication. This only applies to cases where a subuser was created
    using 'user create', and not the 'subuser create' command.

    Reviewed-by: Sage Weil <sage@redhat.com>
    Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>

commit eb5d2117fdb08e5a15dec232a8c0d651b1e51850
Merge: 6070f4a d12fa35
Author: Samuel Just <sam.just@inktank.com>
Date:   Fri Nov 21 16:18:25 2014 -0800

    Merge pull request #2895 from yuyuyu101/wip-10022

    AsyncMessenger: Fix several problems

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

commit 6070f4ad685377cb4690d1d26258758b1c07851f
Merge: e0ab267 0d350b6
Author: Josh Durgin <jdurgin@redhat.com>
Date:   Fri Nov 21 14:35:24 2014 -0800

    Merge pull request #2980 from ceph/wip-10123

    librbd: protect list_children from invalid child pool IoCtxs

    Reviewed-by: Josh Durgin <jdurgin@redhat.com>

commit e0ab267c757ca82e52d4139d6b09dd6bfe627f97
Merge: 4884d3e 25fe088
Author: Haomai Wang <yuyuyu101@163.com>
Date:   Fri Nov 21 17:27:10 2014 +0800

    Merge pull request #2981 from yuyuyu101/quick-fix

    GenericObjectMap: Avoid master branch compile error

commit 25fe088b752d753d152c8a0c1fa260585cb7e7c5
Author: Haomai Wang <haomaiwang@gmail.com>
Date:   Fri Nov 21 17:25:06 2014 +0800

    GenericObjectMap: Fix typo

    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>

commit 4884d3e3d18d115bd78032e948b125e6841f77a0
Merge: 7d29952 5177759
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 20 21:41:23 2014 -0800

    Merge pull request #2966 from yuyuyu101/wip-10119

    KeyValueStore: Fix EC+ KV OSDs crashing

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

commit 7d299528b54d3beaf14f12f7592c1a29b6cad6f0
Merge: cb001e7 6c7bb8c
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 20 20:51:38 2014 -0800

    Merge pull request #2978 from majianpeng/fix4

    blkdev: using strncpy instead of strcpy.

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

commit 6c7bb8c068c975fd91843897a620000f6fddc8e4
Author: Jianpeng Ma <jianpeng.ma@intel.com>
Date:   Fri Nov 21 09:55:02 2014 +0800

    blkdev: using strncpy instead of strcpy.

    Coverity Scan reported this bug:
    > New defect(s) Reported-by: Coverity Scan Showing 1 of 1 defect(s)
    > *** CID 1255369:  Copy into fixed size buffer  (STRING_OVERFLOW)
    > /common/blkdev.cc: 34 in block_device_support_discard(const char *)()
    > 28     bool block_device_support_discard(const char *devname)
    > 29     {
    > 30       bool can_trim = false;
    > 31       char *p = strstr((char *)devname, "sd");
    > 32       char name[32] = {0};
    > 33
    > >>>     CID 1255369:  Copy into fixed size buffer  (STRING_OVERFLOW)
    > >>>     You might overrun the 32 byte fixed-size string "name" by
    > >>>     copying "p" without checking the length.
    > 34       strcpy(name, p);
    > 35       for (unsigned int i = 0; i < strlen(name); i++) {
    > 36         if(isdigit(name[i])) {
    > 37           name[i] = 0;
    > 38           break;
    > 39         }
    >

    Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>

commit cb001e7a6bebdf03a26116c555ae8dd897cbf647
Merge: 257ae0d 627f138
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 20 11:34:36 2014 -0800

    Merge pull request #2974 from ceph/wip-sepia-update

    Updated sepia hardware list.

commit 627f138a72d19c9e387d4bed1e30b30185c862a0
Author: Sandon Van Ness <sandon@redhat.com>
Date:   Thu Nov 20 11:13:38 2014 -0800

    Updated sepia hardware list.

    Added missing details and additional list of hardware.

    Signed-off-by: Sandon Van Ness <sandon@redhat.com>

commit 257ae0dc2183d498db5f123c80a1542d13e5745b
Merge: e60ff7a f76a676
Author: Samuel Just <sam.just@inktank.com>
Date:   Thu Nov 20 09:45:33 2014 -0800

    Merge pull request #2752 from dachary/wip-9817-deep-scrub-start

    osd: log when scrub,deep scrub, repair starts

    Reviewed-by: Samuel Just <sjust@redhat.com>

commit e60ff7a1d0ecba62b1ab664b3b64a436a0704952
Merge: c25e912 197a2ab
Author: Samuel Just <sam.just@inktank.com>
Date:   Thu Nov 20 09:44:09 2014 -0800

    Merge pull request #2891 from XinzeChi/master

    OSD: batch trim for pg_log

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

commit c25e9126d68b1953a2941f1ca0e94b98b438a883
Merge: b14dc28 f80499e
Author: Samuel Just <sam.just@inktank.com>
Date:   Thu Nov 20 09:42:47 2014 -0800

    Merge pull request #2885 from ceph/wip-flush-snaps

    osd/ReplicatedPG: flush snaps immediately

    Reviewed-by: Samuel Just <sjust@redhat.com>

commit b14dc28fbc56b55d3188a18213130e1341f38087
Merge: 9877bea 7a868fd
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Thu Nov 20 11:19:37 2014 +0100

    Merge pull request #2973 from wonzhq/unused-parm

    ReplicatedPG: remove unused parameter in function write_update_size_and_usage

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

commit 7a868fd64b3a10951964e6ac0c84ecfe3d17f9d0
Author: Zhiqiang Wang <zhiqiang.wang@intel.com>
Date:   Thu Nov 20 16:26:32 2014 +0800

    ReplicatedPG: remove unused parameter in function write_update_size_and_usage

    Signed-off-by: Zhiqiang Wang <zhiqiang.wang@intel.com>

commit 0d89db5d3e5ae5d552d4058a88a4e186748ab1d2
Author: Yan, Zheng <zyan@redhat.com>
Date:   Fri Nov 7 11:38:37 2014 +0800

    mds: store backtrace for straydir

    Signed-off-by: Yan, Zheng <zyan@redhat.com>

commit a79ba32d2444c58c47bde1785d3d08138d87c5d4
Author: Yan, Zheng <zyan@redhat.com>
Date:   Tue Oct 21 18:02:21 2014 +0000

    mds: verify backtrace when fetching dirfrag

    Fixes: #9557
    Signed-off-by: Yan, Zheng <zyan@redhat.com>

commit 5177759cd17ec619ceae67b8c4a64bbc0f204139
Author: Haomai Wang <haomaiwang@gmail.com>
Date:   Thu Nov 20 11:03:17 2014 +0800

    KeyValueStore: Fix parse_header_key

    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>

commit 9d84d2e8309d26e39ca849a75166d2d7f2dec9ea
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Thu Nov 6 17:11:20 2014 +0100

    osd: deep scrub must not abort if hinfo is missing

    Instead it should set read_error.

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

    Signed-off-by: Loic Dachary <loic-201408@dachary.org>

commit 47d6780849fe08191e5c0cf71d09f348609894aa
Merge: d32477e 8dde6a6
Author: Samuel Just <sam.just@inktank.com>
Date:   Wed Nov 19 11:49:07 2014 -0800

    Merge pull request #2926 from ceph/wip-10052

    ceph_test_rados_api_tier: fix whiteout cleanup (10052)

    Reviewed-by: Samuel Just <sjust@redhat.com>

commit 9877beae0f3ca86b5bd7274b404226edaa320e5f
Merge: 0ea29a5 f3dab44
Author: David Zafman <david.zafman@inktank.com>
Date:   Wed Nov 19 11:37:22 2014 -0800

    Merge pull request #2967 from ceph/wip-10077

    ceph_objectstore_tool shard feature handling

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

commit 0ea29a55d45216f888f70e0e38aff2da372bb900
Merge: cb60a3e 92662a9
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Wed Nov 19 20:30:38 2014 +0100

    Merge pull request #2971 from dachary/wip-mailmap

    mailmap: Loic Dachary name normalization

commit 92662a9b574bf35c7eeebf534a40d7aafc1f61cc
Author: Loic Dachary <ldachary@redhat.com>
Date:   Wed Nov 19 20:25:24 2014 +0100

    mailmap: Loic Dachary name normalization

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

commit cb60a3e8dd80753b6b8aded69f949c19b1ce7e9b
Merge: 5997635 78d1e6c
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Wed Nov 19 19:27:15 2014 +0100

    Merge pull request #2962 from ceph/wip-9439

    osd: Check filter ops for pgls and pgnls

    Reviewed-by: Loic Dachary <ldachary@dachary.org>

commit 5997635d0bc973024e599363013b345813cf0192
Merge: 9c1b199 a4b42d6
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Wed Nov 19 11:24:01 2014 +0100

    Merge pull request #2969 from dachary/wip-erasure-code-documentation

    doc: erasure-code developer documentation typo

    Reviewed-by: Pavan Rallabhandi <Pavan.Rallabhandi@sandisk.com>

commit 2601a25a2e8e2ca99bd4ab2eab1c358062965358
Author: Haomai Wang <haomaiwang@gmail.com>
Date:   Wed Nov 19 14:42:39 2014 +0800

    StoreTest: Add scrub situation to tests

    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>

commit b4fa384fc023558b0c4af781cbe34a35315f4967
Author: Haomai Wang <haomaiwang@gmail.com>
Date:   Wed Nov 19 14:34:52 2014 +0800

    KeyValueStore: Add KEY_ENDING sign to the end of key

    Keys stored in alphabetical order and need to follow ghobject_t comparison
    rule. "generation" and "shard_id" are optional fields for object key, but
    a default ghobject with UINT64_MAX generation(by default) will larger than
    the same ghobject with other generation. GenericObjectMap rejects to store
    generation if generation is UINT64_MAX in order to reduce too much words
    in key. So we need to add a MAX sign to the end of key to make ordering
    is same with ghobject's comparison rule.

    For example:

    _GHOBJTOSEQ_:1%e1ds0_head!D168A7E8!!1!!benchmark_last_metadata!head
    _GHOBJTOSEQ_:1%e1ds0_head!D168A7E8!!1!!benchmark_last_metadata!head!78!0

    The first key should larger than the second in ghobject_t ordering because
    of generation. But the first key less than the second in GenericObjectMap.

    _GHOBJTOSEQ_:1%e1ds0_head!D168A7E8!!1!!benchmark_last_metadata!head
    _GHOBJTOSEQ_:1%e1ds0_head!D168A7E8!!1!!benchmark_last_metadata!head!78!0

    After we add KEY_ENDING, '!' is (21) in hexadecimal:

    _GHOBJTOSEQ_:1%e1ds0_head!D168A7E8!!1!!benchmark_last_metadata!head(21)78!0(FF)
    _GHOBJTOSEQ_:1%e1ds0_head!D168A7E8!!1!!benchmark_last_metadata!head(FF)

    Fix bug #10119
    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>

commit f3dab446fc8e58b3b3d9334b8c38722e73881b9e
Author: David Zafman <dzafman@redhat.com>
Date:   Tue Nov 18 13:00:15 2014 -0800

    ceph_objectstore_tool: Add feature called set-allow-sharded-objects

    Uses --op set-allow-sharded-objects option
    This operation will be rejected if on the target OSD's osdmap there is
        at least one OSD which does not support ERASURE CODES.
    Prompt the user that they could import if sharded state allowed
    Prompt the user to use new feature if sharded state found inconsistent

    Fixes: #10077

    Signed-off-by: David Zafman <dzafman@redhat.com>

commit b3021b0d3362000b5938d406ed2e032a8eb38405
Author: David Zafman <dzafman@redhat.com>
Date:   Tue Nov 18 11:59:18 2014 -0800

    ceph_objectstore_tool: Add utility routine get_osdmap()

    Signed-off-by: David Zafman <dzafman@redhat.com>

commit 86baf2d38170ef19de2dd5e9ce3f280237d8474d
Author: David Zafman <dzafman@redhat.com>
Date:   Wed Nov 12 21:14:11 2014 -0800

    ceph_objectstore_tool: Clear ...INCOMPAT_SHARDS from feature if exporting replicated pg

    Don't require importing OSD to have shards feature for replicated pg

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

    Signed-off-by: David Zafman <dzafman@redhat.com>

commit 0d350b6817d7905908a4e432cd359ca1d36bab50
Author: Jason Dillaman <dillaman@redhat.com>
Date:   Mon Nov 17 21:49:26 2014 -0500

    librbd: protect list_children from invalid child pool IoCtxs

    While listing child images, don't ignore error codes returned
    from librados when creating an IoCtx. This will prevent seg
    faults from occurring when an invalid IoCtx is used.

    Fixes: #10123
    Backport: giant, firefly, dumpling
    Signed-off-by: Jason Dillaman <dillaman@redhat.com>

commit 06fc39c8af2bf17628f58122fc7a79f012a82ba4
Author: Joao Eduardo Luis <joao@redhat.com>
Date:   Mon Nov 17 17:56:48 2014 +0000

    mon: PaxosService: can be readable even if proposing

    As long as we have a stable version in memory that is lower or equal to
    the version we want.

    Fixes: #9321
    Fixes: #9322

    Signed-off-by: Joao Eduardo Luis <joao@redhat.com>

commit d32477e8cdaef7fd53d3f1c7f00e503e395cfb0f
Merge: 31a9da0 d8a7db8
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 17 08:06:00 2014 -0800

    Merge pull request #2944 from ceph/wip-9913

    mon: auth entity name for forwarded messages

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

commit d8a7db889a14892eaaf8512d211959f49df6535b
Author: Joao Eduardo Luis <joao@redhat.com>
Date:   Fri Nov 14 21:10:28 2014 +0000

    mon: Monitor: use session's entity name for audit log

    Fixes: #9913
    Backport: giant

    Signed-off-by: Joao Eduardo Luis <joao@redhat.com>

commit 125b58d925d38d9d4934795edd36af6e16ed25d2
Author: Joao Eduardo Luis <joao@redhat.com>
Date:   Fri Nov 14 21:09:27 2014 +0000

    mon: Monitor: forward session entity name to leader

    And populate mock session (for forwarded request) with forwarded entity
    name.

    Backport: giant

    Signed-off-by: Joao Eduardo Luis <joao@redhat.com>

commit ca8e1efc0be9bffcfbdce5593526d257aa498062
Author: Joao Eduardo Luis <joao@redhat.com>
Date:   Fri Nov 14 21:03:54 2014 +0000

    mon: Monitor: stash auth entity name in session

    Backport: giant

    Signed-off-by: Joao Eduardo Luis <joao@redhat.com>

commit 87734747dca113d6a13d1e78da52e6009a9e935a
Author: Joao Eduardo Luis <joao@redhat.com>
Date:   Fri Nov 14 21:01:39 2014 +0000

    messages: MForward: stash auth entity name

    This will allow us to assess the entity name, used during auth, for a
    forwarded request, which is otherwise unavailable to the receiving
    party.

    Fixes: #9913 (partially)
    Backport: giant

    Signed-off-by: Joao Eduardo Luis <joao@redhat.com>

commit cf2104d4d991361c53f6e2fea93b69de10cd654b
Author: Federico Simoncelli <fsimonce@redhat.com>
Date:   Sat Nov 15 14:14:04 2014 +0000

    common: do not unlock rwlock on destruction

    According to pthread_rwlock_unlock(3p):

     Results are undefined if the read-write lock rwlock is not held
     by the calling thread.

    and:

     https://sourceware.org/bugzilla/show_bug.cgi?id=17561

     Calling pthread_rwlock_unlock on an rwlock which is not locked
     is undefined.

    calling pthread_rwlock_unlock on RWLock destruction could cause
    an unknown behavior for two reasons:

    - the lock is acquired by another thread (undefined)
    - the lock is not acquired (undefined)

    Moreover since glibc-2.20 calling pthread_rwlock_unlock on a
    rwlock that is not locked results in a SIGILL that kills the
    application.

    This patch removes the pthread_rwlock_unlock call on destruction
    and replaces it with an assertion to check that the RWLock is
    not in use.

    Any code that relied on the implicit release is now going to
    break the assertion, e.g.:

     {
       RWLock l;
       l.get(for_write);
     } // implicit release, wrong.

    Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>

commit e25724b22f5917e99629d62efb261465fd347502
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 23 15:38:12 2014 -0700

    mon: tighten pg vs osd warning bounds to 3x above/below 100 (target)

    Previously we were warning at (effectively) 60, so this is still less
    noisy than before on the min.  The max threshold is new.

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

commit 7f3dcdb089b4342e8624d37abfe5437db8a15c39
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 23 15:21:37 2014 -0700

    mon/PGMonitor: add max pgs per osd warning

    This is just like the min warning, but a max.  It should help warn users
    away from having too many PGs in their cluster, which can be very
    dangerous.

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

commit b70be56119f18cd86eb2a8aaaf9c0d7eac14f99f
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 23 15:20:27 2014 -0700

    mon/PGMonitor: make min pg warning based on pg *instances*

    This makes the effective number of PGs we are using the number of instances
    of PGs on an OSD, not the nubmer of PGs an OSD will be primary for.  Our
    check becomes less aggressive since we are now less likely to trigger a
    warning.

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

commit 5eb662ce7d3319c58214fc7e8651e5e8ca9268e0
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 23 16:43:12 2014 -0700

    mon/PGMonitor: fix summation when we adjust up/acting

    We're touching up/acting, which now affect the sum.

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

commit d671e1cc4632bc9298891bf8c38556a146554cb1
Author: Sage Weil <sage@redhat.com>
Date:   Tue Nov 11 13:41:43 2014 -0800

    mon/PGMap: allow stat_pg_{add,sub} that only touches stats

    Some callers don't want the auxiliary structures to be updated because
    they are (a) traversing them and (b) the relevant fields are not being
    changed.  Allow it.

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

commit cf241170a8a4b9b7615d172f2dd6bd6470e5d05f
Author: Sage Weil <sage@redhat.com>
Date:   Thu Oct 23 15:18:09 2014 -0700

    osd/osd_types: include up and acting count in pool_sum_t

    Sum up the up and acting instances of the PGs in the pool.

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

commit 50f9edb17dedf7d672a1e48b887a7079e4cbf657
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Fri Nov 14 23:16:54 2014 +0100

    FileJournal.cc: fix _open() to return negative value in error case

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 31a9da0c0baee4343f06682c72136e9f985a7594
Merge: cba4ed4 699fc05
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 14 11:10:39 2014 -0800

    Merge pull request #2916 from ceph/wip-10057

    msg/simple: ms_die_on_skipped_message

    Reviewed-by: Greg Farnum <greg@inktank.com>

commit 8dde6a61921798aa188bd69406c8fa7afeb96b45
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 22:33:10 2014 -0800

    ceph_test_rados_api_tier: fix cleanup of whiteouts

    Doing a normal DELETE on a whiteout returns ENOENT.  Use the IGNORE_CACHE
    flag to make sure it removes the whiteout, too.

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

commit 34e4d24391c25899d6099eb4f3b69c474039182e
Author: Sage Weil <sage@redhat.com>
Date:   Thu Nov 13 22:32:20 2014 -0800

    osd/ReplicatedPG: allow whiteout deletion with IGNORE_CACHE flag

    If the client specifies IGNORE_CACHE, allow a regular DELETE to zap a
    whiteout.  Expand test case to verify this works.

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

commit cba4ed44f2a4a93b0e7caca33571c46be92ec5b2
Author: David Zafman <dzafman@redhat.com>
Date:   Wed Nov 12 17:43:24 2014 -0800

    librados: Fix operator= null ptr references

    Fixes: #10082

    dzafman-2014-11-13_10:42:58-rgw-wip-10082-testing-basic-multi

    Reviewed-by: Sage Weil <sage@redhat.com>
    Signed-off-by: David Zafman <dzafman@redhat.com>

commit 156d17c1bdab72dfe8ca4a14463a153e40776d93
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Thu Nov 13 20:14:32 2014 +0100

    os/FileJournal.cc: fix potential use after close cases

    Fix checks after _open() calls to make sure to use the
    filehandle only if open returns '0'.

    Fix for:

    CID 1128395 (#1 of 1): Use after close (USE_AFTER_FREE)
     pass_closed_arg: Passing closed handle this->fd as an argument
     to pwrite.

    CID 1128396 (#1 of 2): Use after close (USE_AFTER_FREE)
     pass_closed_arg: Passing closed handle this->fd as an argument
     to read_header.

    CID 1128397 (#1 of 1): Use after close (USE_AFTER_FREE)
     pass_closed_arg: Passing closed handle this->fd as an argument
     to read_header.

    CID 1128398 (#1 of 1): Use after close (USE_AFTER_FREE)
     pass_closed_arg: Passing closed handle this->fd as an argument
     to read_header.

    CID 1128400 (#1 of 1): Use after close (USE_AFTER_FREE)
     pass_closed_arg: Passing closed handle this->fd as an argument
     to read_header.

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 9314fe2808e7bd496cf9b2ebc24570e3cfed92e1
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Thu Nov 13 17:29:12 2014 +0100

    c_read_operations.cc: prevent potential null pointer deref

    CID 1251575 (#1 of 1): Dereference after null check (FORWARD_NULL)
     var_deref_model: Passing null pointer key to basic_string, which
     dereferences it.

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 10fc8a24fcba822656b5679dd34b149c817d3101
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Thu Nov 13 14:57:23 2014 +0100

    tools/psim.cc: catch ceph::buffer::end_of_buffer exception

    Fix for:

    CID 717163 (#1 of 1): Uncaught exception (UNCAUGHT_EXCEPT)
     root_function: In function main(int, char **) an exception of type
     ceph::buffer::end_of_buffer is thrown and never caught.

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 5f6b0910373c023e2280be3abf51ab7009a239f6
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Thu Nov 13 14:47:49 2014 +0100

    librados-config.cc: catch ceph::FailedAssertion exception

    CID 717157 (#1-2): Uncaught exception (UNCAUGHT_EXCEPT)
     root_function: In function main(int, char const **) an exception
     of type ceph::FailedAssertion is thrown and never caught.

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 6fd2123b15716fb004a8c13f40ef048e963491b6
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Wed Nov 12 17:46:43 2014 +0100

    ceph_authtool.cc: catch ceph::FailedAssertion exception

    Fix for:

    CID 717141 (#1-19): Uncaught exception (UNCAUGHT_EXCEPT)
     root_function: In function main(int, char const **) an exception
     of type ceph::FailedAssertion is thrown and never caught.

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit fa986059b38ad03d9fb87b029780e3396ad6611e
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Wed Nov 12 16:11:49 2014 +0100

    ceph_authtool.cc: catch ceph::buffer::end_of_buffer exception

    Fix for:

    CID 717142 (#1 of 1): Uncaught exception (UNCAUGHT_EXCEPT)
     root_function: In function main(int, char const **) an exception
     of type ceph::buffer::end_of_buffer is thrown and never caught.

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 3674c8c099beacb64ced1639de5f6c7c45086794
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Wed Nov 12 15:11:02 2014 +0100

    MDSMonitor.cc: remove cmd_getval for poolid

    Remove useless check for invalid parameter for
    "mds remove_data_pool", we have already the poolid
    from the correct parameter 'poolname'.

    Fix for:

    CID 1251445 (#1 of 1): Unchecked return value (CHECKED_RETURN)
     check_return: Calling cmd_getval without checking return value
     (is done elsewhere 19 out of 22 times).

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit ed0d3eded19a4ccab0114a87a9d261b857000367
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Wed Nov 12 12:00:32 2014 +0100

    st_rados_list_objects.cc: free resources in error case

    Fix for:

    CID 1251453 (#2 of 2): Resource leak (RESOURCE_LEAK)
     leaked_storage: Variable io_ctx going out of scope leaks the
     storage it points to.

    CID 1251454 (#1 of 1): Resource leak (RESOURCE_LEAK)
     leaked_storage: Variable h going out of scope leaks the storage it
     points to.

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 4814cf7b627f7729f46e75b5f5f140b667d1f0d6
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Wed Nov 12 11:51:29 2014 +0100

    net_handler.cc: close another socket leak

    Close socket if ::setsockopt() fails before return.

    Fix for:

    CID 1249632 (#1 of 1): Resource leak (RESOURCE_LEAK)
    9. leaked_handle: Handle variable s going out of scope leaks the handle.

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 72c0156e09d48bc760b3c731f0912ee1b45cfb86
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Wed Nov 12 11:35:57 2014 +0100

    net_handler.cc: close socket leak

    Close socket if set_nonblock() fails before return.

    Fix for:

    CID 1249633 (#1 of 1): Resource leak (RESOURCE_LEAK)
    7. leaked_handle: Handle variable s going out of scope leaks the handle.

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 0e035515473d95fc215a9e32f52170a90e705cb4
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Tue Nov 11 15:55:18 2014 +0100

    ceph_erasure_code_benchmark.cc: don't check unsigned for < 0

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 13504a3d86e46db3cbdb18953df5f8f99716d4d6
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Tue Nov 11 15:52:44 2014 +0100

    ceph_erasure_code_non_regression.cc: prefer ++op for non-primitive iterators

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit c73c47e0253b7fff1373d3532764d3321fa77754
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Tue Nov 11 15:52:02 2014 +0100

    ceph_erasure_code_benchmark.cc: prefer ++operator for non-primitive iterators

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 3b31e74d629d22c0492057d40088791bcf27c06c
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Tue Nov 11 15:50:52 2014 +0100

    crush/CrushWrapper.cc: prefer ++operator for non-primitive iterators

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 35ab4d79e58f5b8188565181a71fc69220f4125d
Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Date:   Tue Nov 11 15:46:07 2014 +0100

    rgw/rgw_gc.cc: silence cppcheck

    Silence cppcheck warning about std::remove, clarify the
    used remove() function from RGWGC.

    Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>

commit 699fc054a8604caae637b4de8c0e7c204ddcc25e
Author: Sage Weil <sage@redhat.com>
Date:   Mon Nov 10 16:04:38 2014 -0800

    msg/simple: ms_die_on_skipped_message

    Assert if we skip an incoming seq.  The SimpleMessenger never does this,
    but the kernel messenger does.  Hopefully useful for tracking down bugs
    like #10057.

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

commit 2fe5c4c305218fdb1771857e4e0ef7c98a8d0fb6
Author: Sage Weil <sage@redhat.com>
Date:   Fri Oct 31 16:25:09 2014 -0700

    msg/Pipe: inject delay in stop_and_wait

    Inject a delay in stop_and_wait.  This will mostly affect the connection
    race Pipe takeover code which currently calls stop_and_wait while holding
    the msgr->lock.  This should make it easier for a racing fast_dispatch
    method to get stuck on a call that (indirectly) needs the msgr lock.
    See #9921.

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

commit 2d6980570af2226fdee0edfcfe5a8e7f60fae615
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Oct 28 16:45:43 2014 -0700

    SimpleMessenger: Pipe: do not block on takeover while holding global lock

    We previously were able to cause deadlocks:
    1) Existing pipe is fast_dispatching
    2) Replacement incoming pipe is accepted
      *) blocks on stop_and_wait() of existing Pipe
    3) External things are blocked on SimpleMessenger::lock() while
      blocking completion of the fast dispatch.

    To resolve this, if we detect that an existing Pipe we want to take over is
    in the process of fast dispatching, we unlock our locks and wait on it to
    finish. Then we go back to the lookup step and retry.

    The effect of this should be safe:
    1) We are not making any changes to the existing Pipe in new ways
    2) We have not registered the new Pipe anywhere
    3) We have not sent back any replies based on Messenger state to
       the remote endpoint.

    Backport: giant

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 78d1e6cee20ee8321be894ae50a6181f12791d48
Author: David Zafman <dzafman@redhat.com>
Date:   Wed Nov 12 17:52:58 2014 -0800

    osd: Check filter ops for pgls and pgnls

    Fixes: #9439

    Signed-off-by: David Zafman <dzafman@redhat.com>

commit 3776f078c0ec23a3f67744c0ad708e426262f235
Author: Sage Weil <sage@redhat.com>
Date:   Tue Sep 9 15:08:31 2014 -0700

    common/Formatter: fix JSON dump of floating point values

    These are numbers -- they should not be quoted.

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

commit 1b6cf7c36a7ac6c39ba1b1ee9575c499168a2349
Author: Sage Weil <sage@redhat.com>
Date:   Tue Sep 9 14:55:53 2014 -0700

    mon/PGMap: fix {recovery,degraded,unfound}_ratio units, type

    These are floats, and *not* percentages!

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

commit e27b0d9e42b7ac3de896c3398689bbdbe03f1bbb
Author: Sage Weil <sage@redhat.com>
Date:   Tue Sep 9 14:55:19 2014 -0700

    mon: fix formatted 'pg stat'

    Previously it did a full pg dump, which is almost certainly not what the
    user wants.

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

commit d12fa35d00ff22a9ce50933cf2ce61e2f18c0b0d
Author: Haomai Wang <haomaiwang@gmail.com>
Date:   Tue Nov 11 23:54:17 2014 +0800

    AsyncMessenger: Fix large bufferlist send segment fault

    If send long bufferlist exceed IOV_LEN(1024), try_send will stuck in looping
    send the first IOV_LEN(1024) ptrs and raise segment fault.

    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>

commit d145ccadb851f6d1b5296e4bdc361a325108c078
Author: Haomai Wang <haomaiwang@gmail.com>
Date:   Tue Nov 11 23:14:03 2014 +0800

    AsyncMessenger: Try send in queue bufferlist

    If previous try_send failed to send all buffers, it will create write event
    for next write. But if the message queue is empty and no need to send
    in_seq_acked, handle_write will skip to send and in this condition buffers
    in queue won't be send forever.

    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>

commit 123d364b704531be4bdaeb0a1b829798f23316f3
Author: Haomai Wang <haomaiwang@gmail.com>
Date:   Tue Nov 11 18:36:32 2014 +0800

    AsyncMessenger: Normalise log informations

    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>

commit fc4e4f25cdf4934970da82dbe9c380395b92544f
Author: Haomai Wang <haomaiwang@gmail.com>
Date:   Tue Nov 11 12:02:12 2014 +0800

    AsyncMessenger: Release connection if stopped

    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>

commit 12913c029445ad45126020f703cc483f927597b9
Author: Haomai Wang <haomaiwang@gmail.com>
Date:   Mon Nov 10 16:18:57 2014 +0800

    AsyncMessenger: Eating up pipe buffer for waking up

    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>

commit 197a2ab0718a87ffe02567c77f06dadb1abb79d8
Author: Xinze Chi <xmdxcxz@gmail.com>
Date:   Mon Nov 10 16:52:09 2014 +0000

    OSD: batch trim for pg_log

    Signed-off-by: Xinze Chi <xmdxcxz@gmail.com>

commit f80499edeac9087fb2a51e66d59f985c33fd2fe1
Author: Sage Weil <sage@redhat.com>
Date:   Fri Nov 7 16:28:43 2014 -0800

    osd/ReplicatedPG: flush snaps immediately

    Snaps are immutable, so there is no point in delaying flush and hoping
    to capture additional updates first.

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

commit f76a676b4917a9ff163b618c5fc47e202844b960
Author: Loic Dachary <loic-201408@dachary.org>
Date:   Sun Oct 19 09:41:41 2014 -0700

    osd: log when scrub,deep scrub, repair starts

    So it can be matched, in the logs, with the log messages announcing it
    is complete.

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

    Signed-off-by: Loic Dachary <loic-201408@dachary.org>
librbd: Stub out new exclusive image feature

When an image is flagged with the exclusive feature, only a
single client can modify the image.  This is groundwork for
an RBD object map optimization and for RBD mirroring.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
encoding: wrap ENCODE_START/FINISH arguments

Wrapped the bufferlist argument with parentheses to prevent
compile errors when attempting to pass a dereferenced bufferlist
pointer to the ENCODE_START/FINISH macros.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
librbd: Create image exclusive lock watch/notify handler

The new watch/notify handler replaces the existing header
update watch/notify handler and add support for managing
image exclusive lock leadership.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
librbd: Integrate librbd with new exclusive lock feature

Operations that update the image now require the exclusive lock
if the feature is enabled.  AIO write and discard operations will
automatically request the exclusive lock from the current leader
to support live-migration.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
rbd: Allow CLI to optionally create shared images

Images that are flagged as shared cannot use the RBD
object map nor RBD mirroring features.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
librbd: Add convenience library to support unit tests

Unit tests need access to the private symbols of librbd no
longer exported from librbd.so.  A new librbd_internal
convenience library was created to allow access.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
librbd: Add ImageWatcher unit test cases

Directly unit test the new ImageWatcher class to complement
the existing librbd integration tests of exclusive lock
handling.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
librbd: Add internal unit test cases

The new unit tests cover the modifications made to integrate
the internal librbd functionality with the new ImageWatcher.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
librbd: differentiate between R/O vs R/W RBD features

The new RBD exclusive lock feature should be treated as a
feature that is only applied when the image is opened in
R/W mode.

Older clients will need to handle the updated
cls_rbd::get_features method in order to properly determine
the incompatible features for an image depending on the
current mode.

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