Commit Graph

67749 Commits

Author SHA1 Message Date
Venky Shankar
ac4e6cc2b6 test / librbd: create few empty objects during flatten
Fixes: http://tracker.ceph.com/issues/15028
Signed-off-by: Venky Shankar <vshankar@redhat.com>
2017-01-21 16:29:27 +05:30
Venky Shankar
8419036659 test / librbd: Write ones instead of zeroes to test images
Signed-off-by: Douglas Fuller <dfuller@redhat.com>
Signed-off-by: Venky Shankar <vshankar@redhat.com>
2017-01-21 16:29:27 +05:30
Venky Shankar
c455711c2f librbd: Create few empty objects during copyup
This is based out of Doug's (@fullerdj) work (PR #9329)
as an attempt to avoid creating empty objects when
flattening an image and otherwise whenever unnecessary.

This gives good optimization benefit when a parent image
is sparsely populated. Moreover, this change is required
for correct behavior when checking disk usage of a clone
(which used to report fully allocated image due to all,
including empty objects being created during flatten).

Signed-off-by: Douglas Fuller dfuller@redhat.com
Signed-off-by: Venky Shankar <vshankar@redhat.com>
2017-01-21 16:29:27 +05:30
Venky Shankar
ad0dcff47f librbd: make has_parent() prone to callers from copyup
This is required when CopyupRequest would need to invoke
pre_object_map_update() as part of upcoming changes to
create fewer child image objects whenever possible.

CopyupRequest constructor accepts image extents as an
rvalue forcing the caller to transfer ownership to it
and leaving the original variable in an unspecified
stated making has_parent() return incorrect state when
invoked from CopyupRequest. Therefore, introduce a
private tracking state that can be used in place of
checking emptiness of parent image extents.

Signed-off-by: Venky Shankar <vshankar@redhat.com>
2017-01-21 16:29:27 +05:30
Mykola Golub
af9152f34a Merge pull request #12991 from dillaman/wip-17447
librbd: avoid possible recursive lock when racing acquire lock

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
2017-01-20 19:50:02 +02:00
Mykola Golub
709198ae02 Merge pull request #12982 from dillaman/wip-18524
librbd: remove unnecessary dependencies of ManagedLock

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
2017-01-20 19:49:36 +02:00
Sage Weil
4b7258a8ad Merge pull request #13010 from liewegas/wip-bluestore-allocator
os/bluestore: fix Allocator::allocate() int truncation

Reviewed-by: Igor Fedotov <ifedotov@mirantis.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-01-20 11:13:47 -06:00
Kefu Chai
d8e4a2c204 Merge pull request #12908 from tchaikov/wip-rocksdb
rocksdb: build with ppc64

Reviewed-by: Nathan Cutler <ncutler@suse.com>
2017-01-20 22:41:04 +08:00
John Spray
2d253c30d8 Merge pull request #12830 from renhwztetecs/renhw-wip-libcephfs-misc
libcephfs: cleanups

Reviewed-by: John Spray <john.spray@redhat.com>
2017-01-20 15:29:30 +01:00
John Spray
abb2608b6b Merge pull request #12994 from ukernel/wip-18487
mds: add authority check for delay dirfrag split

Reviewed-by: John Spray <john.spray@redhat.com>
2017-01-20 15:28:12 +01:00
Sage Weil
e19aa84846 os/bluestore: fix Allocator::allocate() int truncation
An allocation of size 0x80000000 gets truncated to 0.  Larger values can
break things in similar ways.

Introduced in 5ab034345d.

Fixes: http://tracker.ceph.com/issues/18595
Signed-off-by: Sage Weil <sage@redhat.com>
2017-01-19 19:51:45 -06:00
Alfredo Deza
3e75c6bea6 Merge pull request #12947 from smatzek/fix_18538
ceph-disk: use correct user in check_journal_req

Reviewed-by: Alfredo Deza <adeza@redhat.com>
2017-01-19 18:39:59 -05:00
Casey Bodley
5db320ce93 Merge pull request #12865 from ceph/wip-rgw-18476
rgw: fix handling RGWUserInfo::system in RGWHandler_REST_SWIFT.

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2017-01-19 11:00:12 -05:00
Sage Weil
00222af585 Merge pull request #12968 from liewegas/wip-kraken-notes
doc/release-notes: final kraken notes
2017-01-19 06:57:54 -06:00
Sage Weil
04980b7d83 Merge pull request #12963 from liewegas/wip-bluestore-extents
os/bluestore: fix reclaim_blocks and clean up Allocator interface

Reviewed-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
Reviewed-by: Igor Fedotov <ifedotov@mirantis.com>
2017-01-19 06:29:25 -06:00
John Spray
36874c8d0c Merge pull request #12550 from stiopaa1/B9935_segfaultInRmDir
client/Client.cc: prevent segfaulting

Reviewed-by: John Spray <john.spray@redhat.com>
2017-01-19 09:15:27 +01:00
Yan, Zheng
5de08f099b mds: add authority check for delay dirfrag split
the dirfrag can be migareted to other mds while waiting in the
timer.

Fixes: http://tracker.ceph.com/issues/18487
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
2017-01-19 15:30:19 +08:00
Kefu Chai
e1d13284e0 Merge pull request #12988 from SUSE/wip-submitting-patches
doc: clarify SubmittingPatches.rst

Reviewed-by: Loic Dachary <ldachary@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-01-19 13:30:03 +08:00
Jason Dillaman
5e46e8eb66 librbd: avoid possible recursive lock when racing acquire lock
Fixes: http://tracker.ceph.com/issues/17447
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-01-18 20:54:22 -05:00
Yehuda Sadeh
5c5147efdf Merge pull request #12492 from yehudasa/wip-func-oid-tracing
osd, messenger, librados: lttng oid tracing

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2017-01-18 15:19:21 -08:00
Jason Dillaman
7b62e5ec4c librbd: clean up pre-release lock handling
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-01-18 16:44:43 -05:00
Jason Dillaman
1a34fcefee test: separate testing of exclusive lock from managed lock
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-01-18 16:44:43 -05:00
Jason Dillaman
2a86f48c89 librbd: removed ManagedLock dependency from ancillary classes
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2017-01-18 16:44:43 -05:00
Matt Benjamin
611b7120fe Merge pull request #12972 from linuxbox2/wip-librgw-shut
rgw: librgw shut
2017-01-18 16:31:26 -05:00
Nathan Cutler
736b8039f5 doc: clarify SubmittingPatches.rst
This commit clarifies that folks opening bugfix PRs that need backporting to
one or more stable branches should always target master, and that the
backporting itself takes place only after the master PR is merged.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-01-18 22:20:17 +01:00
Casey Bodley
a18c7e1239 Merge pull request #12907 from theanalyst/wip-18064
rgw: sync status compares the current master period

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2017-01-18 14:21:41 -05:00
Casey Bodley
37ff492351 Merge pull request #12357 from dongbula/fix-versioned-bucket-datasync-fail
rgw: fix versioned bucket data sync fail when upload is busy

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2017-01-18 14:21:00 -05:00
Jason Dillaman
d82508da72 Merge pull request #12945 from jimmyway/wip-add-cmd-snap-set-limit-prompt
rbd: add error prompt when input command 'snap set limit' is incomplete

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-01-18 14:15:58 -05:00
Jason Dillaman
dacf4da901 Merge pull request #12886 from rjfd/wip-shared-managed-lock
librbd: support for shared locking in ManagedLock

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-01-18 14:15:03 -05:00
Radoslaw Zarzynski
8dac93392b rgw: fix handling RGWUserInfo::system in RGWHandler_REST_SWIFT.
Before this patch the flag was wrongly handled in the Swift API
implementation. In rare conditions this might result in setting
req_state::system_request.

This may happen only if both of those conditions are fulfilled:
 * RadosGW is running in a multi-site configuration (at least
   one user with the system flag turned on is present),
 * the "rgw_swift_account_in_url" configurable has been switched
   to true. The value is false by default and our documentation
   doesn't actually mention about the option.

The issue doesn't affect Jewel nor any previous release.

Fixes: http://tracker.ceph.com/issues/18476
Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
2017-01-18 17:57:38 +01:00
Matt Benjamin
4299bfcc73 librgw: remove call to crypto::shutdown
The call is cognate to removed code in radosgw, and triggers an
assert that the crypto module has already been shutdown.  With this
and preceding changes, I see clean shutdown on abnormal termination
of nfs-ganesha during startup.

Fixes: http://tracker.ceph.com/issues/18585

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2017-01-18 10:53:26 -05:00
Matt Benjamin
d633ecb1fd rgw: s/static std::map/static pointer/ for ext_mime_map
In some librgw shutdown cases, it appears that the shared
object runtime has partially destructed the static map when
our shutdown code is running.

Fixes: http://tracker.ceph.com/issues/18585

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2017-01-18 10:53:03 -05:00
Matt Benjamin
4efc4cab53 rgw_file: signal RGWLibFrontend shutdown correctly
The shutdown member of RGWLibProcess should be set.

Fixes: http://tracker.ceph.com/issues/18585

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2017-01-18 10:33:34 -05:00
Kefu Chai
80b749fe66 Merge pull request #12927 from rjfd/wip-fix-rpath-suse
cmake: fix rpath on shared libraries and binaries targets

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-01-18 23:08:09 +08:00
Daniel Gryniewicz
963dd121cc Merge pull request #12750 from zhangsw/feature-rgw-lc-validatei
rgw: add lifecycle validation according to S3.
2017-01-18 09:36:50 -05:00
Sage Weil
15ff48518a os/bluestore/BlueFS: dump allocator freelist on failure in reclaim_blocks
Signed-off-by: Sage Weil <sage@redhat.com>
2017-01-18 08:22:29 -06:00
Sage Weil
6dc1bcd9e7 os/bluestore/BlueFS: handle failure to reclaim blocks without crashing
We shouldn't fail to reclaim space in general, but if we do, do not treat
it as a fatal error.  Log loudly.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-01-18 08:22:29 -06:00
Daniel Gryniewicz
cf9e759269 Merge pull request #12827 from Liuchang0812/wip-18459
doc: correct S3 lifecycle support explain
2017-01-18 09:08:39 -05:00
Sage Weil
ebf7106b11 unitest_bit_alloc, unittest_alloc: fixes
Signed-off-by: Sage Weil <sage@redhat.com>
2017-01-18 07:38:44 -06:00
Sage Weil
b3fca67cc3 os/bluestore: prealloc/reserve extent vector for common alloc path
No need to worry about the gift/reclaim path--those are very rare.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-01-18 07:38:44 -06:00
Sage Weil
efabd177f8 os/bluestore/Allocator: drop unused and goofy release_extents
Signed-off-by: Sage Weil <sage@redhat.com>
2017-01-18 07:38:44 -06:00
Sage Weil
f012481787 os/bluestore: drop useless count arg to allocate
The vector<> has a size.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-01-18 07:38:44 -06:00
Sage Weil
5ab034345d os/bluestore: return blocks allocated from allocate()
Instead of having a separate output argument with the number of
blocks allocated, just return it via the return value.  Simplifies
the calling convention.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-01-18 07:38:44 -06:00
Sage Weil
5297858938 os/bluestore: manage vector from ExtentList
ExtentList was previous relying the caller to preallocate/size the
vector to be large enough for the worst case allocation of extents,
and keeping it's own manual count of the extent list size.  Instead,
manage that from ExtentList, and remove the preallocation from the
callers.

Fixes: http://tracker.ceph.com/issues/18573
Signed-off-by: Sage Weil <sage@redhat.com>
2017-01-18 07:38:44 -06:00
Sage Weil
01da8562a1 Merge pull request #12681 from xiexingguo/xxg-wip-bluestore-1227
os/bluestore: generate same onode extent-shard keys in a more efficient way

Reviewed-by: Igor Fedotov <ifedotov@mirantis.com>
2017-01-18 07:37:15 -06:00
Sage Weil
212522178c Merge pull request #12696 from xiexingguo/xxg-wip-improve-loops
os/bluestore: miscellaneous fixes to BitAllocator

Reviewed-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
2017-01-18 07:36:45 -06:00
Sage Weil
a9bdb11d74 Merge pull request #12719 from xiexingguo/xxg-wip-bluestore-1229
os/bluestore/BitmapFreelistManager: readability improvements

Reviewed-by: Sage Weil <sage@redhat.com>
2017-01-18 07:36:00 -06:00
Sage Weil
323a8eb856 Merge pull request #12942 from Liuchang0812/cleanup-bluestore
os/bluestore: avoid unnecessary memory copy, use variable reference in BlockDevice::Open

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Igor Fedotov <ifedotov@mirantis.com>
2017-01-18 07:35:41 -06:00
Sage Weil
15b25bf110 Merge pull request #12946 from ifed01/wip-bluestore-pextent-vector-mempooled
os/bluestore: Add bluestore pextent vector to mempool

Reviewed-by: Sage Weil <sage@redhat.com>
2017-01-18 07:35:18 -06:00
Ricardo Dias
235448879e
cmake: fix rpath on shared libraries and executables
The problem was due to the attempt of CMake to rewrite the RPATH of
the executables, or shared libraries, that didn't have any RPATH linked
during the building phase.

Currently INSTALL_RPATH is already set for all binaries. This patch
sets an empty INSTALL_RPATH for all binaries that don't depend on
any internal (also being built) target.

Signed-off-by: Ricardo Dias <rdias@suse.com>
2017-01-18 12:40:41 +00:00