initial code repo
[stor4nfv.git] / src / ceph / doc / changelog / v0.80.2.txt
diff --git a/src/ceph/doc/changelog/v0.80.2.txt b/src/ceph/doc/changelog/v0.80.2.txt
new file mode 100644 (file)
index 0000000..1b4a857
--- /dev/null
@@ -0,0 +1,1187 @@
+commit 198236d68deceb16b6b590d807786a140209bfea (tag: refs/tags/v0.80.2, refs/remotes/gh/last)
+Author: Jenkins <jenkins@inktank.com>
+Date:   Wed Jul 9 19:32:26 2014 +0000
+
+    0.80.2
+
+commit 0b6bd2545925b5e8a80d41de1fda13ffe9d30e2b
+Author: Josh Durgin <josh.durgin@inktank.com>
+Date:   Wed Jul 9 12:04:49 2014 -0700
+
+    Revert "rgw: if extra data pool name is empty, use data pool name instead"
+    
+    This breaks multipart uploads on firefly, though not on master.
+    Revert for now so we can release 0.80.2.
+    
+    This reverts commit 5fd8b0d1639c67e355f0fc0d7e6d7036618d87a1.
+
+commit 9426c4faa9ca327f18f20a57ba772b08d6f069e7
+Merge: b81a277 4733178
+Author: Sage Weil <sage@inktank.com>
+Date:   Tue Jul 8 10:06:01 2014 -0700
+
+    Merge pull request #2083 from ceph/wip-8727.firefly
+    
+    messages: MForward: fix compat version
+    
+    Reviewed-by: Sage Weil <sage@redhat.com>
+
+commit 4733178c3a8f57c54196f176b20154415783dba0
+Author: Joao Eduardo Luis <joao.luis@inktank.com>
+Date:   Tue Jul 8 16:46:27 2014 +0100
+
+    messages: MForward: fix compat version
+    
+    A while ago we bumped the head version and reset the compat version to 0.
+    Doing this so happens to make the messenger assume that the message does
+    not support the compat versioning and sets the compat version to the head
+    version -- thus making compat = 2 when it should have been 1.
+    
+    The nasty side-effect of this is that upgrading from emperor to firefly
+    will have emperor-leaders being unable to decode forwarded messages from
+    firefly-peons.
+    
+    Fixes: #8727
+    
+    Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
+    (cherry picked from commit c92feebb81f90344a085f8256f0ed03cdc2f14e1)
+
+commit b81a2777aea636ffe544e737cd8e17dc892ba328
+Author: Dan Mick <dan.mick@inktank.com>
+Date:   Thu Jul 3 16:11:24 2014 -0700
+
+    ceph.spec.in: add bash completion file for radosgw-admin
+    
+    Signed-off-by: Sandon Van Ness <sandon@inktank.com>
+    (cherry picked from commit b70096307130bcbac176704493a63c5d039d3edc)
+
+commit 4649d7e90ffec89b452aef69cf833522bdb81f88
+Author: Dan Mick <dan.mick@inktank.com>
+Date:   Thu Jul 3 16:10:55 2014 -0700
+
+    ceph.spec.in: rhel7-related changes:
+    
+    udev rules: /lib -> /usr/lib
+    /sbin binaries move to /usr/sbin or %{_sbindir}
+    
+    Signed-off-by: Sandon Van Ness <sandon@inktank.com>
+    (cherry picked from commit 235e4c7de8f8efe491edefbdde8e5da4dfc44034)
+    
+    Conflicts:
+       ceph.spec.in
+
+commit 38a9566e70d3a2de80c7547fd4e84c8372639f80
+Author: Dan Mick <dan.mick@inktank.com>
+Date:   Thu Jul 3 16:08:44 2014 -0700
+
+    Fix/add missing dependencies:
+    
+    - rbd-fuse depends on librados2/librbd1
+    - ceph-devel depends on specific releases of libs and libcephfs_jni1
+    - librbd1 depends on librados2
+    - python-ceph does not depend on libcephfs1
+    
+    Signed-off-by: Sandon Van Ness <sandon@inktank.com>
+    (cherry picked from commit 7cf81322391b629b241da90181800ca1f138ce78)
+    
+    Conflicts:
+       ceph.spec.in
+
+commit 733c89dc6af89321ee58ad78b30bc6a0c4e78291
+Author: Dan Mick <dan.mick@inktank.com>
+Date:   Thu Jul 3 16:05:00 2014 -0700
+
+    ceph.spec.in: whitespace fixes
+    
+    Signed-off-by: Sandon Van Ness <sandon@inktank.com>
+    (cherry picked from commit ec8af52a5ede78511423a1455a496d46d580c644)
+    
+    Conflicts:
+       ceph.spec.in
+
+commit 21b03bc96ab1a0877235f1e3e4a96899cba2b4fa
+Author: Dan Mick <dan.mick@inktank.com>
+Date:   Thu Jul 3 16:04:10 2014 -0700
+
+    ceph.spec.in: split out ceph-common as in Debian
+    
+    Move files, postun scriptlet, and add dependencies on ceph-common
+    where appropriate
+    
+    Signed-off-by: Sandon Van Ness <sandon@inktank.com>
+    (cherry picked from commit e131b9d5a5e90e87d8a8346cb96cb5a26135c144)
+
+commit dbee797d1344aec47fedc8d3fdd6c9460e0ffa16
+Merge: 6d6039a 9e81fc1
+Author: Sage Weil <sage@inktank.com>
+Date:   Mon Jul 7 09:40:51 2014 -0700
+
+    Merge pull request #2057 from ceph/wip-8593-firefly
+    
+    mon: backport health check improvements
+    
+    Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
+
+commit 6d6039a5a56743c006a0d081157cb6ee9e3b7af6
+Author: Greg Farnum <greg@inktank.com>
+Date:   Thu Jul 3 16:30:49 2014 -0700
+
+    mon: check changes to the whole CRUSH map and to tunables against cluster features
+    
+    When we change the tunables, or set a new CRUSH map, we need to make sure it's
+    supported by all the monitors and OSDs currently participating in the cluster.
+    
+    Fixes: #8738
+    
+    Signed-off-by: Greg Farnum <greg@inktank.com>
+    (cherry picked from commit 54af8104816ccc76aad251aa47a6efc1bf879e7d)
+
+commit 0a8d194f2c44a73c31ae8c52fabb430d66d4a1b1
+Author: Greg Farnum <greg@inktank.com>
+Date:   Thu Jul 3 15:24:30 2014 -0700
+
+    OSDMonitor: fix quorum_features comparison in check_cluster_features
+    
+    We need to see if there's a feature which is not in the quorum_features,
+    not if there are no features in common!
+    
+    Signed-off-by: Greg Farnum <greg@inktank.com>
+    (cherry picked from commit 2280c0eaa9f3f733062085a5e7f7dc23c3bbe291)
+
+commit a49c61222f8014db533d8f505ec44d10dc5478e6
+Author: Sage Weil <sage@inktank.com>
+Date:   Mon Jun 16 12:57:36 2014 -0700
+
+    ceph_test_rados_api_tier: disable LibRadosTierECPP::HitSetWrite
+    
+    Disable this test until hitget-get reliably works on EC pools (currently
+    it does not, and this test usually passes only because we get the in-memory
+    HitSet).
+    
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit c5b5ed672c039cc4fa04772e065a59d3b1df803a)
+
+commit 828ce4055c8580e42175159c02a9dfa76bc414ff
+Merge: b9b498e b1a4a7c
+Author: Sage Weil <sage@inktank.com>
+Date:   Fri Jul 4 21:18:32 2014 -0700
+
+    Merge pull request #2073 from ceph/wip-rgw-firefly-2
+    
+    rgw: more firefly backports
+    
+    Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
+
+commit b1a4a7cb91e164d1f8af8ce9319e3b3c1949858d
+Author: Yehuda Sadeh <yehuda@inktank.com>
+Date:   Wed Jun 11 16:50:41 2014 -0700
+
+    rgw: set a default data extra pool name
+    
+    Fixes: #8585
+    Have a default name for the data extra pool, otherwise it would be empty
+    which means that it'd default to the data pool name (which is a problem
+    with ec backends).
+    
+    Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
+    (cherry picked from commit b2542f8e880e45bb6d052f13eb3ef6a7c61e4cd4)
+
+commit b9b498e6a7794205af8aa99ffe5266e478c0e711
+Merge: f285266 053c261
+Author: Sage Weil <sage@inktank.com>
+Date:   Thu Jul 3 07:00:52 2014 -0700
+
+    Merge pull request #2028 from ceph/wip-rgw-firefly
+    
+    rgw: a couple backports for firefly
+    
+    Passed the rgw suite, modulo a python bootstrap issue.
+    
+    sage-2014-07-01_09:50:22-rgw-wip-rgw-firefly-testing-basic-plana/337393
+    
+    Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
+
+commit 9f06e2c16e409a9a8284af9964f0cfff6e222164
+Author: Sage Weil <sage@inktank.com>
+Date:   Mon Jun 30 12:55:45 2014 -0700
+
+    rgw: fix uninit ofs in RGWObjManifect::obj_iterator
+    
+    Valgrind picked this up:
+    
+      <kind>UninitCondition</kind>
+      <what>Conditional jump or move depends on uninitialised value(s)</what>
+      <stack>
+        <frame>
+          <ip>0x5145B8</ip>
+          <obj>/usr/bin/radosgw</obj>
+          <fn>RGWObjManifest::obj_iterator::seek(unsigned long)</fn>
+          <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.82-354-g62027ec/src/rgw</dir>
+          <file>rgw_rados.cc</file>
+          <line>562</line>
+        </frame>
+        <frame>
+          <ip>0x5672A4</ip>
+          <obj>/usr/bin/radosgw</obj>
+          <fn>list_multipart_parts(RGWRados*, req_state*, std::string const&amp;, std::string&amp;, int, int, std::map&lt;unsigned int, RGWUploadPartInfo, std::less&lt;unsigned int&gt;, std::allocator&lt;std::pair&lt;unsigned int const, RGWUploadPartInfo&gt; &gt; &gt;&amp;, int*, bool*, bool)</fn>
+          <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.82-354-g62027ec/src/rgw</dir>
+          <file>rgw_rados.h</file>
+          <line>217</line>
+        </frame>
+        <frame>
+          <ip>0x5688EE</ip>
+          <obj>/usr/bin/radosgw</obj>
+          <fn>RGWListMultipart::execute()</fn>
+          <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.82-354-g62027ec/src/rgw</dir>
+          <file>rgw_op.cc</file>
+          <line>2956</line>
+        </frame>
+    ...
+    
+    Fixes: #8699
+    Backport: firefly
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit e0d3b78b6af523ae77b0cee385cd40f67f7a0ab6)
+
+commit 5fd8b0d1639c67e355f0fc0d7e6d7036618d87a1
+Author: Yehuda Sadeh <yehuda@inktank.com>
+Date:   Fri May 30 14:47:25 2014 -0700
+
+    rgw: if extra data pool name is empty, use data pool name instead
+    
+    Fixes: #8311
+    An empty pool name could be used as the extra data pool.
+    
+    Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
+    (cherry picked from commit b300318113b162522759d4794b1cfa3d1d9398e4)
+
+commit cbad09e1907ceac4feb069f9cf257e580f36da91
+Author: Yehuda Sadeh <yehuda@inktank.com>
+Date:   Tue May 6 15:35:20 2014 -0700
+
+    rgw: extend manifest to avoid old style manifest
+    
+    In case we hit issue #8269 we'd like to avoid creating an old style
+    manifest. Since we need to have parts that use different prefix we add a
+    new rule param that overrides the manifest prefix.
+    
+    Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
+    (cherry picked from commit 545d8ad1d2dfe53b967ab1bd17dfeb1780abbb5e)
+
+commit ea68b9372319fd0bab40856db26528d36359102e
+Author: Yehuda Sadeh <yehuda@inktank.com>
+Date:   Fri May 2 17:06:05 2014 -0700
+
+    rgw: don't allow multiple writers to same multiobject part
+    
+    Fixes: #8269
+    Backport: firefly, dumpling
+    
+    A client might need to retry a multipart part write. The original thread
+    might race with the new one, trying to clean up after it, clobbering the
+    part's data.
+    The fix is to detect whether an original part already existed, and if so
+    use a different part name for it.
+    
+    Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
+    (cherry picked from commit bd8e026f88b812cc70caf6232c247844df5d99bf)
+
+commit f285266a320bf22df8b09a669d1c1fd400b05765
+Merge: d43e711 6a0dd1b
+Author: Sage Weil <sage@inktank.com>
+Date:   Tue Jul 1 16:16:09 2014 -0700
+
+    Merge pull request #2056 from ceph/wip-8010
+    
+    Revert "mon: OSDMonitor: Refuse to delete CephFS pools"
+    
+    Reviewed-by: Sage Weil <sage@redhat.com>
+
+commit 9e81fc180a3999ebec95949a2cb31fea970573fb
+Author: Sage Weil <sage@inktank.com>
+Date:   Mon Jun 16 17:00:51 2014 -0700
+
+    mon: ensure HealthService warning(s) include a summary
+    
+    The low disk space check would change our status to HEALTH_WARN and include
+    a detail message, but no summary.  We need both.
+    
+    Backport: firefly
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 3ed7f2dd4345633ff34017b201082f4c261ef387)
+
+commit e96637c2e33ec092f28af0ce96bfe2e4d7748ff8
+Author: Sage Weil <sage@inktank.com>
+Date:   Mon Jun 16 16:58:14 2014 -0700
+
+    mon: refactor check_health()
+    
+    Refactor the get_health() methods to always take both a summary and detail.
+    Eliminate the return value and pull that directly from the summary, as we
+    already do with the PaxosServices.
+    
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 82e47db8073b622183a5e33f6e0b999a3a144804)
+
+commit 28584200df36dda5d434d4d7f58585933905de30
+Author: Sage Weil <sage@inktank.com>
+Date:   Mon Jun 16 16:40:05 2014 -0700
+
+    mon: fix typos, punctuation for mon disk space warning(s)
+    
+    Backport: firefly
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 98883f6308ce72f69a71feab29ef00e13f319cdb)
+    
+    Conflicts:
+    
+       src/mon/DataHealthService.cc
+
+commit 4f0666085e2fd553ccc05cef8510aae820849aca
+Author: Sage Weil <sage@inktank.com>
+Date:   Mon Jun 16 16:27:05 2014 -0700
+
+    mon/OSDMonitor: make down osd count sensible
+    
+    We currently log something like
+    
+     1/10 in osds are down
+    
+    in the health warning when there are down OSDs, but this is based on a
+    comparison of the number of up vs the number of in osds, and makes no sense
+    when there are up osds that are not in.
+    
+    Instead, count only the number OSDs that are both down and in (relative to
+    the total number of OSDs in) and warn about that.  This means that, if a
+    disk fails, and we mark it out, and the cluster fully repairs itself, it
+    will go back to a HEALTH_OK state.
+    
+    I think that is a good thing, and certainly preferable to the current
+    nonsense.  If we want to distinguish between down+out OSDs that were failed
+    vs those that have been "acknowledged" by an admin to be dead, we will
+    need to add some additional state (possibly reusing the AUTOOUT flag?), but
+    that will require more discussion.
+    
+    Backport: firefly (maybe)
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 55a97787088b79356c678a909b2410b3924e7f5b)
+
+commit 6a0dd1be909b423f52e2c7f11531b278dc8838ae
+Author: John Spray <john.spray@redhat.com>
+Date:   Tue Jul 1 22:04:25 2014 +0100
+
+    Revert "mon: OSDMonitor: Refuse to delete CephFS pools"
+    
+    This reverts commit c7d265a9b276aad5caf9b35f3ce8bc7bdd169f0f.
+    
+    Because this pre-dates the `fs rm` command, this change was
+    preventing firefly users from ever deleting their filesystem pools.
+    
+    Fixes: #8010
+    
+    Signed-off-by: John Spray <john.spray@redhat.com>
+
+commit 053c261e5bfcb4d39770048775515eb6a667f987
+Author: Yehuda Sadeh <yehuda@inktank.com>
+Date:   Wed Jun 4 09:24:33 2014 -0700
+
+    rgw: set meta object in extra flag when initializing it
+    
+    As part of the fix for 8452 we moved the meta object initialization.
+    Missed moving the extra flag initialization that is needed. This breaks
+    setups where there's a separate extra pool (needed in ec backends).
+    
+    Reported-by: Sylvain Munaut <s.munaut@whatever-company.com>
+    Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
+    (cherry picked from commit 703d0eb9bffdf6c553b659728a3a07f068fb15ee)
+
+commit d43e7113dd501aea1db33fdae30d56e96e9c3897
+Author: Sage Weil <sage@inktank.com>
+Date:   Mon Jun 30 07:05:04 2014 -0700
+
+    qa/workunits/suites/fsx.sh: don't use zero range
+    
+    Zero range is not supported by cephfs.
+    
+    Fixes: #8542
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 2dec8a810060f65d022c06e82090b4aa5ccec0cb)
+
+commit ee0d322c0b1ebaba2f225b8bed9af2948fdcf4c3
+Merge: 3ceafcf a7119c3
+Author: Loic Dachary <loic@dachary.org>
+Date:   Mon Jun 30 17:01:03 2014 +0200
+
+    Merge pull request #1991 from dachary/wip-8307-erasure-code-profile-implicit-creation
+    
+    erasure code profile implicit creation (firefly backport)
+    
+    Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
+
+commit a7119c31e9a1b415f56426d2b4cd362357ad8b17
+Author: Loic Dachary <loic@dachary.org>
+Date:   Wed Jun 11 22:44:57 2014 +0200
+
+    erasure-code: pool create must not create profiles
+    
+    If a non existent profile is provided as an argument to osd pool create,
+    it must exit on error and not create the profile as a side effect.
+    
+    http://tracker.ceph.com/issues/8307 refs: #8307
+    
+    Signed-off-by: Loic Dachary <loic@dachary.org>
+    (cherry picked from commit ff2eb234e63cd281b40405cb3397da5babda943f)
+
+commit a67c1c1c51b111f40819643530e07f8026227caa
+Author: Loic Dachary <loic@dachary.org>
+Date:   Wed Jun 11 22:47:49 2014 +0200
+
+    erasure-code: OSDMonitor::get_erasure_code is a const
+    
+    If it is not, the non const version of OSDMap::get_erasure_code_profile
+    is called and a profile is created as a side effect, which is not
+    intended.
+    
+    http://tracker.ceph.com/issues/8307 refs: #8307
+    
+    Signed-off-by: Loic Dachary <loic@dachary.org>
+    (cherry picked from commit 3c638111a4943758b6089c63a42aabbf281ac257)
+
+commit 3ceafcf3576efaef58dffbe70654baf1db4f3a1d
+Author: Loic Dachary <loic@dachary.org>
+Date:   Tue May 27 10:06:46 2014 +0200
+
+    mon: fix set cache_target_full_ratio
+    
+    It was a noop because it was incorrectly using the variable n. Add a
+    test to protect against regression.
+    
+    http://tracker.ceph.com/issues/8440 Fixes: #8440
+    
+    Reported-by: Geoffrey Hartz <hartz.geoffrey@gmail.com>
+    Signed-off-by: Loic Dachary <loic@dachary.org>
+    (cherry picked from commit c2225f874dcf37222d831b65b5a319d598d2fcd9)
+
+commit 5f66a2c99fdef2c8d609126740ca790ce10e67a4
+Author: Yehuda Sadeh <yehuda@inktank.com>
+Date:   Mon Jun 16 11:48:24 2014 -0700
+
+    rgw: allocate enough space for bucket instance id
+    
+    Fixes: #8608
+    Backport: dumpling, firefly
+    Bucket instance id is a concatenation of zone name, rados instance id,
+    and a running counter. We need to allocate enough space to account zone
+    name length.
+    
+    Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
+    (cherry picked from commit d2e86a66ca55685e04ffbfaa58452af59f381277)
+
+commit 84d7971c8e50e7d35d7a5fac9353e687f168a1a1
+Author: Alfredo Deza <alfredo.deza@inktank.com>
+Date:   Fri Jun 20 11:14:25 2014 -0400
+
+    log the command that is being run with subprocess
+    
+    Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
+    (cherry picked from commit e189a668285f9ab73116bc19f9df1cc515473541)
+
+commit 291d448478360a1be0a9826ada58c94ecd643ad0
+Author: Yehuda Sadeh <yehuda@inktank.com>
+Date:   Fri May 30 16:17:47 2014 -0700
+
+    rgw: fetch object attrs on multipart completion
+    
+    Fixes: #8452
+    Backport: firefly
+    This fixes a regression following a code cleanup.
+    
+    Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
+    (cherry picked from commit 70afaaabf979d4cc1a14dbc2b772224cbafcac2f)
+
+commit 2fd808fe93fe0cbd8754eb81d281c83254411039
+Author: Yehuda Sadeh <yehuda@inktank.com>
+Date:   Thu May 22 18:27:58 2014 -0700
+
+    rgw: check appropriate entity permission on put_metadata
+    
+    Fixes: #8428
+    Backport: firefly
+    
+    Cannot use verify_object_permission() to test acls, as the operation
+    here might either be on object or on bucket.
+    
+    Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
+    (cherry picked from commit 2ceb13af34bc38b418bb88d81131d770a71159bf)
+
+commit d1afeb38b522baae1b15a7a3548002c830bb7567
+Author: Ilya Dryomov <ilya.dryomov@inktank.com>
+Date:   Thu Jun 5 10:08:42 2014 +0400
+
+    XfsFileStoreBackend: call ioctl(XFS_IOC_FSSETXATTR) less often
+    
+    No need to call ioctl(XFS_IOC_FSSETXATTR) if extsize is already set to
+    the value we want or if any extents are allocated - XFS will refuse to
+    change extsize in that's the case.
+    
+    Fixes: #8241
+    Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
+    (cherry picked from commit bc3b30ed09b8f3eb86b61e3a05ccacfd928faa95)
+
+commit 7b8e5c99a4a40ae788ad29e36b0d714f529b12eb
+Author: John Spray <john.spray@inktank.com>
+Date:   Tue May 20 16:25:19 2014 +0100
+
+    mon: Fix default replicated pool ruleset choice
+    
+    Specifically, in the case where the configured
+    default ruleset is CEPH_DEFAULT_CRUSH_REPLICATED_RULESET,
+    instead of assuming ruleset 0 exists, choose the lowest
+    numbered ruleset.
+    
+    In the case where an explicit ruleset is passed to
+    OSDMonitor::prepare_pool_crush_ruleset, verify
+    that it really exists.
+    
+    The idea is to eliminate cases where a pool could
+    exist with its crush ruleset set to something
+    other than a value ruleset ID.
+    
+    Fixes: #8373
+    
+    Signed-off-by: John Spray <john.spray@inktank.com>
+    (cherry picked from commit 1d9e4ac2e2bedfd40ee2d91a4a6098150af9b5df)
+    
+    Conflicts:
+    
+       src/crush/CrushWrapper.h
+
+commit 25a4a874c8e53cd644d6705478fbea4fdb232c4d
+Author: Yehuda Sadeh <yehuda@inktank.com>
+Date:   Fri May 23 14:58:54 2014 -0700
+
+    rgw: calc md5 and compare if user provided appropriate header
+    
+    Fixes: #8436
+    Backport: firefly
+    
+    This was broken in ddc2e1a8e39a5c6b9b224c3eebd1c0e762ca5782. The fix
+    resurrects and old check that was dropped.
+    
+    Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
+    Reviewed-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 9c56c86bdac6bcb8e76c3f04e7d393e4eaadd721)
+
+commit ad18a45a71be34899d9400c8bdef39d0548f9aaf
+Author: Yehuda Sadeh <yehuda@inktank.com>
+Date:   Mon Apr 21 15:07:12 2014 -0700
+
+    rgw: calculate user manifest
+    
+    Fixes: #8169
+    Backport: firefly
+    We didn't calculate the user manifest's object etag at all. The etag
+    needs to be the md5 of the contantenation of all the parts' etags.
+    
+    Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
+    (cherry picked from commit ddc2e1a8e39a5c6b9b224c3eebd1c0e762ca5782)
+
+commit 6aa7f7ee4e082819decc48da1f0eaffc4e616302
+Author: Sage Weil <sage@inktank.com>
+Date:   Tue Jun 3 11:45:20 2014 -0700
+
+    librados: simplify/fix rados_pool_list bounds checks
+    
+    We were not breaking out of the loop when we filled up the buffer unless
+    we happened to do so on a pool name boundary.  This means that len would
+    roll over (it was unsigned).  In my case, I was not able to reproduce
+    anything particularly bad since (I think) the strncpy was interpreting the
+    large unsigned value as signed, but in any case this fixes it, simplifies
+    the arithmetic, and adds a simple test.
+    
+    - use a single 'rl' value for the amount of buffer space we want to
+      consume
+    - use this to check that there is room and also as the strncat length
+    - rely on the initial memset to ensure that the trailing 0 is in place.
+    
+    Fixes: #8447
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 3ec32a6bb11d92e36a0e6381b40ce2fd1fbb016a)
+
+commit 2ba03e08f1bce0a8af87014583d635eb5c0aa376
+Merge: 50dc246 3ad451e
+Author: Sage Weil <sage@inktank.com>
+Date:   Wed Jun 25 12:42:11 2014 -0700
+
+    Merge pull request #1982 from accelazh/firefly-fix-issue-8256
+    
+    Make <poolname> in "ceph osd tier --help" clearer (fix issue 8256).
+    
+    Reviewed-by: Loic Dachary <loic@dachary.org>
+
+commit 50dc2462ab96c3457b08c50b4cc07676b50dbf72
+Author: Samuel Just <sam.just@inktank.com>
+Date:   Tue Jun 3 16:14:15 2014 -0700
+
+    OSD::calc_priors_during: handle CRUSH_ITEM_NONE correctly
+    
+    Fixes: #8507
+    Signed-off-by: Samuel Just <sam.just@inktank.com>
+    (cherry picked from commit 0bd6f6797c69af9aff851033c57c42121671c684)
+    
+    Conflicts:
+       src/osd/OSD.cc
+
+commit a53bcf2357c7f351ad520039774d895b8c27987f
+Author: Samuel Just <sam.just@inktank.com>
+Date:   Tue Jun 3 16:11:32 2014 -0700
+
+    OSD::calc_priors_during: fix confusing for loop bracing (cosmetic)
+    
+    Confusing lack of braces is confusing.
+    
+    Signed-off-by: Samuel Just <sam.just@inktank.com>
+    (cherry picked from commit d76936b92300be5cc403fd5a36616a2424c7877d)
+    
+    Conflicts:
+       src/osd/OSD.cc
+
+commit 178e6f0f422c9f1b8a51d0e9c364773397a4555f
+Author: Samuel Just <sam.just@inktank.com>
+Date:   Tue Jun 24 10:11:21 2014 -0700
+
+    rados.cc: fix pool alignment check
+    
+    Only check pool alignment if io_ctx is initialized.
+    
+    Introduced in 304b08a23a3db57010078046955a786fe3589ef8
+    Fixes: #8652
+    Signed-off-by: Samuel Just <sam.just@inktank.com>
+    
+    (cherry picked from commit d7350a3741bf4cdb270c6361e68090fe280cf36d)
+    
+    Conflicts:
+       src/tools/rados/rados.cc
+
+commit a9f97f8cae5b9d0245e0b0842c5c581cdacbb2da
+Author: Sage Weil <sage@inktank.com>
+Date:   Tue Jun 17 13:33:14 2014 -0700
+
+    osd: fix filestore perf stats update
+    
+    Update the struct we are about to send, not the (unlocked!) one we will
+    send the next time around.
+    
+    Backport: firefly, dumpling
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 4afffb4a10a0bbf7f2018ef3ed6b167c7921e46b)
+
+commit b758fd5f0ebcccdb1641a852d40ee880bad01107
+Author: Greg Farnum <greg@inktank.com>
+Date:   Thu Apr 24 15:34:24 2014 -0700
+
+    FileStore: set XATTR_NO_SPILL_OUT when creating new files.
+    
+    Fixes: #8205
+    Backport: firefly
+    
+    Signed-off-by: Greg Farnum <greg@inktank.com>
+    (cherry picked from commit e3b995e1567f3ccc6d00ae27ab2aa99ca157228a)
+
+commit d6f302314fc3580dfc746c9d82bd2f7f0bc87d42
+Author: Haomai Wang <haomaiwang@gmail.com>
+Date:   Sat Jun 7 14:32:23 2014 +0800
+
+    FileStore: make _clone() copy spill out marker
+    
+    Previously we were not doing so, and that resulted in unpredictable loss
+    of xattrs from the client's perspective.
+    
+    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
+    Reviewed-by: Greg Farnum <greg@inktank.com>
+    (cherry picked from commit 239476a92849159d2a8966d90ca055c116bee91e)
+
+commit bb2ed23d8129c8db628475d744656b9b43f839c0
+Author: Loic Dachary <loic@dachary.org>
+Date:   Wed Jun 18 17:01:54 2014 +0200
+
+    erasure-code: verify that rados put enforces alignment
+    
+    http://tracker.ceph.com/issues/8622 refs: #8622
+    
+    Signed-off-by: Loic Dachary <loic@dachary.org>
+    (cherry picked from commit b46c4056014dd6de5e3bd736f2c41f096ea708b4)
+
+commit dece65064d949b5afcc359cd408615883b5e002a
+Author: Lluis Pamies-Juarez <lluis@pamies.cat>
+Date:   Wed Jun 18 10:00:09 2014 -0700
+
+    enforce rados put aligment
+    
+    Signed-off-by: Lluis Pamies-Juarez <lluis.pamies-juarez@hgst.com>
+    (cherry picked from commit 304b08a23a3db57010078046955a786fe3589ef8)
+
+commit 203318b8eb3753723277ec7a459239c81097f090
+Author: Sage Weil <sage@inktank.com>
+Date:   Fri Jun 6 13:31:29 2014 -0700
+
+    osd/OSDMap: do not require ERASURE_CODE feature of clients
+    
+    Just because an EC pool exists in the cluster does not mean tha tthe client
+    has to support the feature:
+    
+    1) The way client IO is initiated is no different for EC pools than for
+       replicated pools.
+    2) People may add an EC pool to an existing cluster with old clients and
+       locking those old clients out is very rude when they are not using the
+       new pool.
+    3) The only direct client user of EC pools right now is rgw, and the new
+       versions already need to support various other features like CRUSH_V2
+       in order to work.  These features are present in new kernels.
+    
+    Fixes: #8556
+    Backport: firefly
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 3fe1699f9620280d0070cfe6f01cfeb2332e7470)
+
+commit 6340b14b9c9a9c786b5448f2ea2a5556055a02e9
+Author: Sage Weil <sage@inktank.com>
+Date:   Thu Jun 12 16:44:53 2014 -0700
+
+    osd/OSDMap: make get_features() take an entity type
+    
+    Make the helper that returns what features are required of the OSDMap take
+    an entity type argument, as the required features may vary between
+    components in the cluster.
+    
+    Backport: firefly
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 250677c965365edf3ecd24ef73700fc6d992ea42)
+
+commit 400fa88f6cf8b1e5b4b15d9e36b1de8c3d1c3970
+Author: Haomai Wang <haomaiwang@gmail.com>
+Date:   Wed May 21 18:12:22 2014 +0800
+
+    Avoid extra check for clean object
+    
+    We needn't to check clean object via buffer state, skip the clean object.
+    
+    Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
+    (cherry picked from commit f51e33bd9c5a8e1cfc7065b30785696dc45918bc)
+
+commit 3ad451ef57e2ab3fc644c94d44c2de7a17cced45
+Author: Accela Zhao <accelazh@gmail.com>
+Date:   Wed Jun 18 17:17:03 2014 +0800
+
+    Make <poolname> in "ceph osd tier --help" clearer.
+    
+    The ceph osd tier --help info on the left always says <poolname>.
+    It is unclear which one to put <tierpool> on the right.
+    
+    $ceph osd tier --help
+    osd tier add <poolname> <poolname> {--   add the tier <tierpool> to base pool
+    force-nonempty}                          <pool>
+    osd tier add-cache <poolname>            add a cache <tierpool> of size <size>
+    <poolname> <int[0-]>                     to existing pool <pool>
+    ...
+    
+    This patch modifies description on the right to tell which <poolname>:
+    
+    osd tier add <poolname> <poolname> {--   add the tier <tierpool> (the second
+     force-nonempty}                          one) to base pool <pool> (the first
+                                               one)
+    ...
+    
+    Fix: http://tracker.ceph.com/issues/8256
+    
+    Signed-off-by: Yilong Zhao <accelazh@gmail.com>
+
+commit f290a021bc8ec31c18b91cb37323345692f2f198
+Merge: 5722419 d02d46e
+Author: Sage Weil <sage@inktank.com>
+Date:   Mon Jun 16 09:25:32 2014 -0700
+
+    Merge pull request #1962 from dachary/wip-8599-ruleset-firefly
+    
+    mon: pool set <pool> crush_ruleset must not use rule_exists (firefly)
+    
+    Reviewed-by: Sage Weil <sage@inktank.com>
+
+commit d02d46e25080d5f7bb8ddd4874d9019a078b816b
+Author: John Spray <john.spray@inktank.com>
+Date:   Tue May 20 16:50:18 2014 +0100
+
+    mon: pool set <pool> crush_ruleset must not use rule_exists
+    
+    Implement CrushWrapper::ruleset_exists that iterates over the existing
+    rulesets to find the one matching the ruleset argument.
+    
+    ceph osd pool set <pool> crush_ruleset must not use
+    CrushWrapper::rule_exists, which checks for a *rule* existing, whereas
+    the value being set is a *ruleset*. (cherry picked from commit
+    fb504baed98d57dca8ec141bcc3fd021f99d82b0)
+    
+    A test via ceph osd pool set data crush_ruleset verifies the ruleset
+    argument is accepted.
+    
+    http://tracker.ceph.com/issues/8599 fixes: #8599
+    
+    Backport: firefly, emperor, dumpling
+    Signed-off-by: John Spray <john.spray@inktank.com>
+    Signed-off-by: Loic Dachary <loic@dachary.org>
+
+commit 572241942706e2f845a147f19717bf6c487f23f4
+Author: Sage Weil <sage@inktank.com>
+Date:   Sun Jun 8 20:18:49 2014 -0700
+
+    init-ceph: continue after failure doing osd data mount
+    
+    If we are starting many daemons and hit an error, we normally note it and
+    move on.  Do the same when doing the pre-mount step.
+    
+    Fixes: #8554
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 6a7e20147cc39ed4689809ca7d674d3d408f2a17)
+
+commit e5a291ef69316519b105b57193753f0bf8ac8e62
+Author: Steve Taylor <steve@DES-U1404-STETAY.stc.local>
+Date:   Tue Jun 10 12:42:55 2014 -0600
+
+    Fix for bug #6700
+    
+    When preparing OSD disks with colocated journals, the intialization process
+    fails when using dmcrypt. The kernel fails to re-read the partition table after
+    the storage partition is created because the journal partition is already in use
+    by dmcrypt. This fix unmaps the journal partition from dmcrypt and allows the
+    partition table to be read.
+    
+    Signed-off-by: Stephen F Taylor <steveftaylor@gmail.com>
+    (cherry picked from commit 673394702b725ff3f26d13b54d909208daa56d89)
+
+commit 34d9b2bc659c4107b30e1ebe7a55315512a0222a
+Author: John Wilkins <john.wilkins@inktank.com>
+Date:   Thu Jun 5 11:29:20 2014 -0700
+
+    doc: Added Disable requiretty commentary.
+    
+    Signed-off-by: John Wilkins <john.wilkins@inktank.com>
+
+commit 54a89bab15a945d47b3f44448910521a2ebf41c6
+Author: Samuel Just <sam.just@inktank.com>
+Date:   Fri May 16 16:56:33 2014 -0700
+
+    ReplicatedPG::start_flush: fix clone deletion case
+    
+    dsnapc.snaps will be non-empty most of the time if there
+    have been snaps before prev_snapc.  What we really want to
+    know is whether there are any snaps between oi.snaps.back()
+    and prev_snapc.
+    
+    Fixes: 8334
+    Backport: firefly
+    Signed-off-by: Samuel Just <sam.just@inktank.com>
+    (cherry picked from commit 29f615b7ac9e92f77cdef9927070727fee9d5e33)
+
+commit 308e2ef5c107bf04d3c5623f3c6bdffa10cf8c21
+Author: Samuel Just <sam.just@inktank.com>
+Date:   Mon May 12 15:08:07 2014 -0700
+
+    ReplicatedPG::start_flush: send delete even if there are no snaps
+    
+    Even if all snaps for the clone have been removed, we still have to
+    send the delete to ensure that when the object is recreated the
+    new snaps aren't included in the wrong clone.
+    
+    Signed-off-by: Samuel Just <sam.just@inktank.com>
+    (cherry picked from commit 2ec2182745fa7c22526a7cf3dedb25bc314c9db4)
+
+commit 8d04a7ece364c0a95b087990d6365401819b3efa
+Author: Samuel Just <sam.just@inktank.com>
+Date:   Thu May 15 20:53:27 2014 -0700
+
+    HashIndex: in cleanup, interpret missing dir as completed merge
+    
+    If we stop between unlinking the empty subdir and removing the root
+    merge marker, we get ENOENT on the get_info.  That's actually fine.
+    
+    Backport: firefly
+    Fixes: 8332
+    Signed-off-by: Samuel Just <sam.just@inktank.com>
+    (cherry picked from commit 5ff95dbdd2dbb533d344f37fea722ca4f140e670)
+
+commit b2bf8cb21761d88557fb2d5c0935c4a3678ee01f
+Author: Alfredo Deza <alfredo@deza.pe>
+Date:   Wed May 28 11:48:12 2014 -0400
+
+    add backport of collections.Counter for python2.6
+    
+    Using Raymond Hettinger's MIT backport
+    
+    Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
+    (cherry picked from commit 23b75b550507438c79b3aa75e06721e5f7b134a4)
+
+commit 0b00443eec4c372f2ef245f85dc7c1f497ba3778
+Author: Ailing <ailzhang@users.noreply.github.com>
+Date:   Wed May 28 12:37:48 2014 -0700
+
+    rest-api: key missing for per "rx" and "rwx"
+    
+    commit 85a1cf31e6 and db266a3fb2 introduce new per "rx" and "rwx", but key missing for per "rx" and "rwx" in permmap
+    
+    Signed-off-by: Ailing Zhang <ailzhang@cisco.com>
+    (cherry picked from commit 0b5a67410793ec28cac47e6e44cbbcf5684d77e7)
+
+commit a898ee56e01f971c12c0f7bebc22e59f850f27c0
+Author: Greg Farnum <greg@inktank.com>
+Date:   Wed May 21 21:41:23 2014 -0700
+
+    cephfs-java: build against older jni headers
+    
+    Older versions of the JNI interface expected non-const parameters
+    to their memory move functions. It's unpleasant, but won't actually
+    change the memory in question, to do a cast_const in order to satisfy
+    those older headers. (And even if it *did* modify the memory, that
+    would be okay given our single user.)
+    
+    Signed-off-by: Greg Farnum <greg@inktank.com>
+    (cherry picked from commit 4d4b77e5b6b923507ec4a0ad9d5c7018e4542a3c)
+
+commit 8a12a940817d957063c21ac71a6128f991801573
+Author: Ilya Dryomov <ilya.dryomov@inktank.com>
+Date:   Fri May 16 19:03:13 2014 +0400
+
+    OSDMonitor: set next commit in mon primary-affinity reply
+    
+    Commit 8c5c55c8b47e ("mon: set next commit in mon command replies")
+    fixed MMonCommand replies to include the right version, but the
+    primary-affinity handler was authored before that.  Fix it.
+    
+    Backport: firefly
+    Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
+    (cherry picked from commit a78b14ec1769ef37bef82bfda6faabb581b4cd7d)
+
+commit 6ba57da94a6e00040677d6e43abf10a36ed9a931
+Author: Dmitry Smirnov <onlyjob@member.fsf.org>
+Date:   Mon May 12 14:08:44 2014 +1000
+
+    prioritise use of `javac` executable (gcj provides it through alternatives).
+    
+     On Debian this fixes FTBFS when gcj-jdk and openjdk-7-jdk are installed at
+     the same time because build system will use default `javac` executable
+     provided by current JDK through `update-alternatives` instead of blindly
+     calling GCJ when it is present.
+    
+    Signed-off-by: Dmitry Smirnov <onlyjob@member.fsf.org>
+    (cherry picked from commit 8b682d167e4535df582f1c77542e2b1ea0981228)
+
+commit 9e335a494c6eff209cff64bd663b5aa2a7bbc242
+Author: Dmitry Smirnov <onlyjob@member.fsf.org>
+Date:   Mon May 12 14:02:53 2014 +1000
+
+    pass '-classpath' option (gcj/javah ignores CLASSPATH environment variable).
+    
+     This should not affect OpenJDK which understands '-classpath' as well.
+    
+     With gcj-jdk we still get FTBFS later:
+    
+     ~~~~
+        java/native/libcephfs_jni.cc:2878:55: error: invalid conversion from 'const jbyte* {aka const signed char*}' to 'jbyte* {aka signed char*}' [-fpermissive]
+                     reinterpret_cast<const jbyte*>(rawAddress));
+                                                               ^
+        In file included from java/native/libcephfs_jni.cc:27:0:
+        /usr/lib/gcc/x86_64-linux-gnu/4.8/include/jni.h:1471:8: error:   initializing argument 4 of 'void _Jv_JNIEnv::SetByteArrayRegion(jbyteArray, jsize, jsize, jbyte*)' [-fpermissive]
+           void SetByteArrayRegion (jbyteArray val0, jsize val1, jsize val2, jbyte * val3)
+                ^
+        make[5] *** [java/native/libcephfs_jni_la-libcephfs_jni.lo] Error 1
+     ~~~~
+    
+    Signed-off-by: Dmitry Smirnov <onlyjob@member.fsf.org>
+    (cherry picked from commit 89fe0353582bde7e2fbf32f1626d430a20002dd0)
+
+commit fcd30500790eac0266ffb70d83ee17b23aeaf209
+Author: Dmitry Smirnov <onlyjob@member.fsf.org>
+Date:   Mon May 12 13:57:20 2014 +1000
+
+    look for "jni.h" in gcj-jdk path, needed to find "jni.h" with gcj-jdk_4.9.0
+    
+    Signed-off-by: Dmitry Smirnov <onlyjob@member.fsf.org>
+    (cherry picked from commit 0f4120c0115e7977ae7c03458addcc2b2916db07)
+
+commit de43f6d2d813d2c7e5cf915c1b9037fe662d6afc
+Author: Sage Weil <sage@inktank.com>
+Date:   Thu May 8 08:52:51 2014 -0700
+
+    ceph-disk: partprobe before settle when preparing dev
+    
+    Two users have reported this fixes a problem with using --dmcrypt.
+    
+    Fixes: #6966
+    Tested-by: Eric Eastman <eric0e@aol.com>
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 0f196265f049d432e399197a3af3f90d2e916275)
+
+commit fe1fbfb7a43d6590efce99711e47f986249f0956
+Author: Greg Farnum <greg@inktank.com>
+Date:   Tue May 13 13:15:28 2014 -0700
+
+    test: fix some templates to match new output code
+    
+    Signed-off-by: Greg Farnum <greg@inktank.com>
+    Reviewed-by: Samuel Just <sam.just@inktank.com>
+    (cherry picked from commit 00225d739cefa1415524a3de45fb9a5a2db53018)
+
+commit 5c8afaa8861345efbcc5488e0336327a8a38d3bc
+Author: Greg Farnum <greg@inktank.com>
+Date:   Thu May 15 16:50:43 2014 -0700
+
+    OSD: fix an osdmap_subscribe interface misuse
+    
+    When calling osdmap_subscribe, you have to pass an epoch newer than the
+    current map's. _maybe_boot() was not doing this correctly -- we would
+    fail a check for being *in* the monitor's existing map range, and then
+    pass along the map prior to the monitor's range. But if we were exactly
+    one behind, that value would be our current epoch, and the request would
+    get dropped. So instead, make sure we are not *in contact* with the monitor's
+    existing map range.
+    
+    Signed-off-by: Greg Farnum <greg@inktank.com>
+    Reviewed-by: Samuel Just <sam.just@inktank.com>
+    (cherry picked from commit 290ac818696414758978b78517b137c226110bb4)
+
+commit eb98f4ab3a27aa8e00e0eb7e504ca7bec7c48a06
+Author: Sage Weil <sage@inktank.com>
+Date:   Mon May 19 10:32:12 2014 -0700
+
+    osd: skip out of order op checks on tiered pools
+    
+    When we send redirected ops, we do not assign a new tid, which means that
+    a given client's ops for a pool may not have strictly ordered tids.  Skip
+    this check if the pool is tiered to avoid false positives.
+    
+    Fixes: #8380
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit cf2b172c843da0599164901956b66c306a59e570)
+
+commit 29ee6faecb9e16c63acae8318a7c8f6b14367af7
+Author: Samuel Just <sam.just@inktank.com>
+Date:   Tue May 6 11:50:14 2014 -0700
+
+    ReplicatedPG: block scrub on blocked object contexts
+    
+    Fixes: #8011
+    Backport: firefly
+    Signed-off-by: Samuel Just <sam.just@inktank.com>
+    (cherry picked from commit 7411477153219d66625a74c5886530029c516036)
+
+commit 6078726e0b89d0202c3a4bc594be11fc346bed9d
+Author: Guang Yang <yguang@yahoo-inc.com>
+Date:   Fri May 9 09:21:23 2014 +0000
+
+    msg: Fix inconsistent message sequence negotiation during connection reset
+    
+    Backport: firefly, emperor, dumpling
+    
+    Signed-off-by: Guang Yang (yguang@yahoo-inc.com)
+    Reviewed-by: Greg Farnum <greg@inktank.com>
+    (cherry picked from commit bdee119076dd0eb65334840d141ccdf06091e3c9)
+
+commit 02557f8bc05ff28013e241611cb046b28f97b4c6
+Author: Samuel Just <sam.just@inktank.com>
+Date:   Tue Apr 15 12:55:47 2014 -0700
+
+    Objecter::_op_submit: only replace the tid if it's 0
+    
+    Otherwise, redirected ops will suddenly have a different tid
+    and will become uncancelable.
+    
+    Fixes: #7588
+    Signed-off-by: Samuel Just <sam.just@inktank.com>
+    (cherry picked from commit 76568aa0db4e16ac1af8fe6405edade1e61cbc81)
+
+commit 788b5fad515c48d4028f5a67d63052e373c81e66
+Author: Sage Weil <sage@inktank.com>
+Date:   Thu May 8 10:42:42 2014 -0700
+
+    mon/OSDMonitor: force op resend when pool overlay changes
+    
+    If a client is sending a sequence of ops (say, a, b, c, d) and partway
+    through that sequence it receives an OSDMap update that changes the
+    overlay, the ops will get send to different pools, and the replies will
+    come back completely out of order.
+    
+    To fix this, force a resend of all outstanding ops any time the overlay
+    changes.
+    
+    Fixes: #8305
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 63d92ab0969357f78fdade749785136a509bc81b)
+
+commit 268df4862d95bf506ef6f594fdfa8294671babc3
+Author: Sage Weil <sage@inktank.com>
+Date:   Thu May 8 10:50:51 2014 -0700
+
+    osd: discard client ops sent before last_force_op_resend
+    
+    If an op is sent before last_force_op_resend, and the client's feature is
+    present, drop the op because we know they will resend.
+    
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 45e79a17a932192995f8328ae9f6e8a2a6348d10)
+
+commit 8bc4992f434ed0b180d5e4a293d8191f4846358c
+Author: Sage Weil <sage@inktank.com>
+Date:   Thu May 8 10:52:11 2014 -0700
+
+    osdc/Objecter: resend ops in the last_force_op_resend epoch
+    
+    If we are a client, and process a map that sets last_force_op_resend to
+    the current epoch, force a resend of this op.
+    
+    If the OSD expects us to do this, it will discard our previous op.  If the
+    OSD is old, it will process the old one, this will appear as a dup, and we
+    are no worse off than before.
+    
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit dd700bdf7115223cb3e517b851f462d75dd76a2b)
+
+commit 83d03f0e1c65385dcf465108d544da84f8bfad97
+Author: Sage Weil <sage@inktank.com>
+Date:   Thu May 8 10:40:10 2014 -0700
+
+    osd/osd_types: add last_force_op_resend to pg_pool_t
+    
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 3152faf79f498a723ae0fe44301ccb21b15a96ab)
+
+commit c94ac44ab41fc62add3fc93c5c7ce06950eed3f1
+Author: Sage Weil <sage@inktank.com>
+Date:   Fri May 9 09:20:34 2014 -0700
+
+    osd: handle race between osdmap and prepare_to_stop
+    
+    If we get a MOSDMarkMeDown message and set service.state == STOPPING, we
+    kick the prepare_to_stop() thread.  Normally, it will wake up and then
+    set osd.state == STOPPING, and when we process the map message next we
+    will not warn.  However, if dispatch() takes the lock instead and processes
+    the map, it will fail the preparing_to_stop check and issue a spurious
+    warning.
+    
+    Fix by checking for either preparing_to_stop or stopping.
+    
+    Fixes: #8319
+    Backport: firefly, emperor, dumpling
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 6b858be0676f937a99dbd51321497f30c3a0097f)
+
+commit 22e2e7cff42970b00dc352513f1f138132f78d04
+Author: Sage Weil <sage@inktank.com>
+Date:   Sat May 10 10:29:11 2014 -0700
+
+    osd/ReplicatedPG: do not queue NULL dup_op
+    
+    We call start_flush() with a NULL op in a couple different places.  Do not
+    put a NULL pointer on the dup_ops list or we will crash later.
+    
+    Fixes: #8328
+    Signed-off-by: Sage Weil <sage@inktank.com>
+    (cherry picked from commit 0d67f9b0695765824bdc4a65fbed88edf8ea232e)