]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Yan Jun [Mon, 27 Jun 2016 10:57:36 +0000 (18:57 +0800)]
rgw/test: use variable type 'size_t' instead of 'int' seems to be more reasonable
Signed-off-by: Yan Jun <yan.jun8@zte.com.cn>
Yan, Zheng [Mon, 27 Jun 2016 06:42:27 +0000 (01:42 -0500)]
Merge pull request #9742 from xiexingguo/xxg-wip-server_cmode
mds/server: fix rare race when waitting for osdmap
xie xingguo [Thu, 16 Jun 2016 09:16:28 +0000 (17:16 +0800)]
mds/server: fix rare race when waitting for osdmap
If wait_for_map() returns true, we have got the requested osdmap
at the specified epoch, so we shall try again to do further
verification whether we have the specific pool or not.
The above case can happen because we drop the objecter internal
rwlock during the switch between the objecter->with_osdmap()
and objecter->wait_for_map() methods.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
Mykola Golub [Sat, 25 Jun 2016 17:00:30 +0000 (20:00 +0300)]
Merge pull request #9922 from dillaman/wip-16470
librbd: do not propagate mirror status notification failures
Reviewed-by: Mykola Golub <mgolub@mirantis.com>
Sage Weil [Sat, 25 Jun 2016 16:51:35 +0000 (12:51 -0400)]
Merge pull request #9913 from xiexingguo/xxg-wip-fix-bitallocatorut
os/bluestore: fix ut failure when switching to bitmap-allocator
Reviewed-by: Ramesh Chander <Ramesh.Chander@sandisk.com>
xie xingguo [Sat, 25 Jun 2016 08:21:11 +0000 (16:21 +0800)]
os/bluestore: fix memory leak during bit_alloc ut
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
xie xingguo [Sat, 25 Jun 2016 00:50:10 +0000 (08:50 +0800)]
os/bluestore: use std limits for int16_t/int32_t
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
xie xingguo [Sat, 25 Jun 2016 00:43:04 +0000 (08:43 +0800)]
os/bluestore: update comment
We have decreased the default concurrent scans to 1,
so the comment is misleading.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
xie xingguo [Sat, 25 Jun 2016 00:36:24 +0000 (08:36 +0800)]
os/bluestore: allow total blocks fall into one single zone
So the blusfs ut will be happy with this.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
xie xingguo [Fri, 24 Jun 2016 02:23:43 +0000 (10:23 +0800)]
os/bluestore: update output of offset/length pair to hex version
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
Mykola Golub [Fri, 24 Jun 2016 19:21:52 +0000 (22:21 +0300)]
Merge pull request #9905 from dillaman/wip-16450
librbd: mark exclusive lock as released after journal is closed
Reviewed-by: Mykola Golub <mgolub@mirantis.com>
Mykola Golub [Fri, 24 Jun 2016 19:21:11 +0000 (22:21 +0300)]
Merge pull request #9899 from dillaman/wip-16350
librbd: ignore missing object map during snap remove
Reviewed-by: Mykola Golub <mgolub@mirantis.com>
Mykola Golub [Fri, 24 Jun 2016 19:20:24 +0000 (22:20 +0300)]
Merge pull request #9896 from dillaman/wip-16446
librbd: delete ExclusiveLock instance when switching to snapshot
Reviewed-by: Mykola Golub <mgolub@mirantis.com>
Mykola Golub [Fri, 24 Jun 2016 19:19:19 +0000 (22:19 +0300)]
Merge pull request #9895 from dillaman/wip-16445
librbd: ignore snap unprotect -EBUSY errors during journal replay
Reviewed-by: Mykola Golub <mgolub@mirantis.com>
John Spray [Fri, 24 Jun 2016 14:58:06 +0000 (15:58 +0100)]
Merge pull request #9746 from xiexingguo/xxg-wip-mdcache_hoir
mds/MDCache: fix leak of MMDSOpenInoReply
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Jason Dillaman [Fri, 24 Jun 2016 14:03:53 +0000 (10:03 -0400)]
librbd: do not propagate mirror status notification failures
These should be treated as a broadcast since no ACK is required. The
peer will eventually see the notification or its watch will have timed
out and it will re-sync.
Fixes: http://tracker.ceph.com/issues/16470
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Igor Fedotov [Fri, 24 Jun 2016 13:20:17 +0000 (15:20 +0200)]
Merge pull request #9921 from liewegas/wip-bluestore-fix-discard
os/bluestore: fix discard
Reviewed-by: Igor Fedotov <ifedotov@mirantis.com>
Sage Weil [Thu, 23 Jun 2016 21:09:20 +0000 (17:09 -0400)]
os/bluestore: un-inline some 2Q methods
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 23 Jun 2016 21:08:32 +0000 (17:08 -0400)]
os/bluestore: fix buffer discard accounting for 2Q
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 24 Jun 2016 12:56:44 +0000 (08:56 -0400)]
os/bluestore: simplify and fix blob invalidation
We can't invalidate based on any particular lextent we drop, as there may
be other lextents (in this onode or in another one) that reference the
same data. This can break even a single multi-write transaction that
relies on the buffer cache to fill out blocks.
Fix by just doing the unallocated version unconditionally.
Signed-off-by: Sage Weil <sage@redhat.com>
Jason Dillaman [Fri, 24 Jun 2016 12:56:28 +0000 (08:56 -0400)]
Merge pull request #9920 from zhouyuan/librd_remove
librbd: remove unused code block
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Sage Weil [Fri, 24 Jun 2016 12:38:32 +0000 (08:38 -0400)]
Merge pull request #9916 from xiexingguo/xxg-wip-fix-decode-bnode
os/bluestore: fix decoding pool from bnode key
Reviewed-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 24 Jun 2016 12:32:37 +0000 (08:32 -0400)]
Merge pull request #9910 from tchaikov/wip-cmake-drop-ceph-ra
cmake: ocf: drop ceph ra
Jason Dillaman [Thu, 23 Jun 2016 13:03:24 +0000 (09:03 -0400)]
librbd: memory leak possible if journal op event failed
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Yuan Zhou [Fri, 24 Jun 2016 07:44:28 +0000 (15:44 +0800)]
librbd: trivial fix to remove unused code block
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
xie xingguo [Fri, 24 Jun 2016 07:13:15 +0000 (15:13 +0800)]
os/bluestore: literal tidy-ups
There error codes are improperly arranged, which looks weird.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
xie xingguo [Fri, 24 Jun 2016 06:57:30 +0000 (14:57 +0800)]
os/bluestore: make fsck can catch bad bnode key too
The case may be rare but the check shall do no harm.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
xie xingguo [Fri, 24 Jun 2016 06:53:39 +0000 (14:53 +0800)]
os/bluestore: fix decoding pool from bnode key
The current result is raw and not properly translated.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
Kefu Chai [Fri, 24 Jun 2016 01:30:02 +0000 (09:30 +0800)]
cmake: ocf: drop ceph ra
Signed-off-by: Kefu Chai <kchai@redhat.com>
Sage Weil [Thu, 23 Jun 2016 20:48:17 +0000 (16:48 -0400)]
os/bluestore: default to bitmap allocator
Signed-off-by: Sage Weil <sage@redhat.com>
Kefu Chai [Fri, 24 Jun 2016 01:16:20 +0000 (09:16 +0800)]
Merge pull request #9906 from stiopaa1/msg_asyncmess_workepool_deleteCopycontrAndAss
msg/AsyncMessenger:delete cpy constr and assign op
Reviewed-by: Kefu Chai <kchai@redhat.com>
David Zafman [Thu, 23 Jun 2016 21:59:55 +0000 (14:59 -0700)]
Merge pull request #9273 from stiopaa1/osd_removeClosingBrace_
osd/OSD.h: remove closing brace } from comment
Reviewed-by: David Zafman <dzafman@redhat.com>
Sage Weil [Thu, 23 Jun 2016 21:43:11 +0000 (17:43 -0400)]
Merge pull request #9842 from jcsp/wip-vstart-len
vstart: set osd_check_max_object_name_len_on_startup
Sage Weil [Thu, 23 Jun 2016 21:24:58 +0000 (17:24 -0400)]
Merge pull request #8784 from ddiss/vstart_ifconfig
vstart: replace ifconfig usage with ip addr
Reviewed-by: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
Reviewed-by: Willem Jan Withagen <wjw@digiware.nl>
Samuel Just [Thu, 23 Jun 2016 20:07:13 +0000 (13:07 -0700)]
Merge pull request #9456 from ukernel/wip-msg-seq
msg: don't truncate message sequence to 32-bits
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Samuel Just [Thu, 23 Jun 2016 20:03:34 +0000 (13:03 -0700)]
Merge pull request #9248 from xiexingguo/xxg-wip-expose-requirejewel
mon: expose require_jewel_osds flag to user
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
Samuel Just [Thu, 23 Jun 2016 20:01:45 +0000 (13:01 -0700)]
Merge pull request #9305 from xiexingguo/xxg-wip-replicatedpg-fixup
osd/ReplicatedPG: minor fixes and cleanups
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
Ali Maredia [Thu, 23 Jun 2016 18:48:06 +0000 (14:48 -0400)]
Merge pull request #9904 from cbodley/wip-cmake-vstart
cmake: add radosgw to 'make vstart' target
Reviewed-by: Ali Maredia <amaredia@redhat.com>
Michal Jarzabek [Thu, 23 Jun 2016 18:03:48 +0000 (19:03 +0100)]
msg/AsyncMessenger:delete cpy constr and assign op
Delete copy constructor and assignment operator, so the checking can
be moved from linking to compile time - as it was when the above
where only declared, but not defined.
Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
Jason Dillaman [Thu, 23 Jun 2016 17:34:56 +0000 (13:34 -0400)]
librbd: mark exclusive lock as released after journal is closed
Fixes: http://tracker.ceph.com/issues/16450
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Mykola Golub [Thu, 23 Jun 2016 17:26:11 +0000 (20:26 +0300)]
Merge pull request #9882 from dillaman/wip-16364
librbd: fix crash while using advisory locks with R/O image
Reviewed-by: Mykola Golub <mgolub@mirantis.com>
Mykola Golub [Thu, 23 Jun 2016 17:25:38 +0000 (20:25 +0300)]
Merge pull request #9881 from dillaman/wip-16433
librbd: journal::Replay no longer holds lock while completing callback
Reviewed-by: Mykola Golub <mgolub@mirantis.com>
Mykola Golub [Thu, 23 Jun 2016 17:25:03 +0000 (20:25 +0300)]
Merge pull request #9867 from dillaman/wip-16411
rbd-mirror: disallow proxied maintenance ops to non-primary images
Reviewed-by: Mykola Golub <mgolub@mirantis.com>
Casey Bodley [Thu, 23 Jun 2016 16:54:27 +0000 (12:54 -0400)]
cmake: add cls libraries as radosgw dependencies
Signed-off-by: Casey Bodley <cbodley@redhat.com>
Sage Weil [Thu, 23 Jun 2016 16:25:04 +0000 (12:25 -0400)]
Merge pull request #9880 from stiopaa1/msg_asyncConn_move_workerpool
msg/async: mv WorkerPool class to cc file
Reviewed-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 23 Jun 2016 16:18:54 +0000 (12:18 -0400)]
Merge pull request #8818 from SUSE/wip-drop-ceph-ra
ocf: drop ceph Resource Agent
Reviewed-by: Tim Serong <tserong@suse.com>
Casey Bodley [Thu, 23 Jun 2016 16:05:57 +0000 (12:05 -0400)]
cmake: add ceph-mds to 'make vstart' target only if WITH_MDS
Signed-off-by: Casey Bodley <cbodley@redhat.com>
Casey Bodley [Thu, 23 Jun 2016 16:05:09 +0000 (12:05 -0400)]
cmake: add radosgw, radosgw-admin to 'make vstart' target
Signed-off-by: Casey Bodley <cbodley@redhat.com>
Kefu Chai [Thu, 23 Jun 2016 15:15:02 +0000 (23:15 +0800)]
Merge pull request #9902 from liewegas/wip-cmake-tests
cmake: do not exclude tests from 'make all'
Reviewed-by: Kefu Chai <kchai@redhat.com>
Jason Dillaman [Thu, 23 Jun 2016 14:25:54 +0000 (10:25 -0400)]
librbd: ignore missing object map during snap remove
Fixes: http://tracker.ceph.com/issues/16350
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Sage Weil [Wed, 22 Jun 2016 13:28:39 +0000 (09:28 -0400)]
cmake: do not exclude tests from 'make all'
This prevent us from doing 'make' and then 'ctest ...'.
It is also super annoying in general to not verify the
tests compile with a simple 'make'.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 23 Jun 2016 13:28:27 +0000 (09:28 -0400)]
Merge pull request #9870 from liewegas/wip-cmake
do_cmake.sh: simple cmake helper
Reviewed-by: Kefu Chai <kchai@redhat.com>
Sage Weil [Thu, 23 Jun 2016 13:28:09 +0000 (09:28 -0400)]
README.md: note about builds (they are for development!)
Signed-off-by: Sage Weil <sage@redhat.com>
Jason Dillaman [Thu, 23 Jun 2016 13:23:32 +0000 (09:23 -0400)]
librbd: delete ExclusiveLock instance when switching to snapshot
Fixes: http://tracker.ceph.com/issues/16446
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Sage Weil [Thu, 23 Jun 2016 13:14:44 +0000 (09:14 -0400)]
Merge pull request #9887 from ceph/wip-cmake
cmake: fix linking issues
Reviewed-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 23 Jun 2016 12:57:05 +0000 (08:57 -0400)]
Merge pull request #9890 from xiexingguo/xxg-wip-fix-bfs-alloc
os/bluestore: shutdown allocator of bluefs more gracefully
Reviewed-by: Sage Weil <sage@redhat.com>
Jason Dillaman [Thu, 23 Jun 2016 12:45:59 +0000 (08:45 -0400)]
librbd: ignore snap unprotect -EBUSY errors during journal replay
Fixes: http://tracker.ceph.com/issues/16445
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
xie xingguo [Thu, 23 Jun 2016 12:10:50 +0000 (20:10 +0800)]
os/bluestore: remove duplicated reset of buf
buf->reset() will do the clear up effectively.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
xie xingguo [Thu, 23 Jun 2016 12:09:01 +0000 (20:09 +0800)]
os/bluestore: add sanity check for underflow
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
xie xingguo [Thu, 23 Jun 2016 07:29:06 +0000 (15:29 +0800)]
os/bluestore: use hex version for offset/length
We update bluestore this way a couple of days ago.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
xie xingguo [Thu, 23 Jun 2016 06:26:42 +0000 (14:26 +0800)]
os/bluestore: kill dead code
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
xie xingguo [Thu, 23 Jun 2016 06:21:53 +0000 (14:21 +0800)]
os/bluestore: shutdown allocator of bluefs more gracefully
The new BitAllocator requires we call shutdown() explicitly,
thus we shall fix it here before we apply to the new BitAllocator.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
Ali Maredia [Wed, 22 Jun 2016 21:41:59 +0000 (17:41 -0400)]
cmake: add gtest to ceph_test_snap_mapper
Signed-off-by: Ali Maredia <amaredia@redhat.com>
Ali Maredia [Wed, 22 Jun 2016 21:43:28 +0000 (17:43 -0400)]
cmake: test_rbd_mirror_image_replay missing ContextCompletion.cc
Signed-off-by: Ali Maredia <amaredia@redhat.com>
Kefu Chai [Thu, 23 Jun 2016 03:51:01 +0000 (11:51 +0800)]
cmake: link libradostriper with librados_objs
create an OBJECT target for libradostriper, so it is able to access the
internal symbols of librados.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Thu, 23 Jun 2016 02:53:39 +0000 (10:53 +0800)]
cmake: remove visibility flags from libcephfs,libradosstriper
because libradosstriper does not put the `__attribute__ ((visibility
("default")))` specifier on the exported class/methods. we cannot
add the visibility to this library yet. the same applies to libcephfs.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Thu, 23 Jun 2016 02:40:28 +0000 (10:40 +0800)]
cmake: move rados_snap_set_diff_obj into librbd_internal
ceph_test_librbd use it and links directly against librbd_internal
instead of against librbd
Signed-off-by: Kefu Chai <kchai@redhat.com>
Jason Dillaman [Wed, 22 Jun 2016 22:19:52 +0000 (18:19 -0400)]
librbd: fix crash while using advisory locks with R/O image
Fixes: http://tracker.ceph.com/issues/16364
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Wed, 22 Jun 2016 22:09:29 +0000 (18:09 -0400)]
librbd: journal::Replay no longer holds lock while completing callback
Fixes: http://tracker.ceph.com/issues/16433
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Wed, 22 Jun 2016 22:03:22 +0000 (18:03 -0400)]
Merge pull request #9207 from rjfd/wip-15670
rbd-mirror: image resync
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Michal Jarzabek [Wed, 22 Jun 2016 21:59:59 +0000 (22:59 +0100)]
msg/AsyncMessenger: mv WorkerPool class to cc file
Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
Sage Weil [Wed, 22 Jun 2016 18:17:55 +0000 (14:17 -0400)]
README.md: drop autotools instructions
Never look back!
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 22 Jun 2016 18:13:28 +0000 (14:13 -0400)]
README.md: simplify cmake instructions around do_cmake.sh
Be prescriptive about the 'build' subdir, at least for the purposes of
this document (developer quick start).
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 22 Jun 2016 18:12:48 +0000 (14:12 -0400)]
README.md: drop dependencies section
This is autotools-specific, and I'm not sure we need to document it here.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 22 Jun 2016 15:59:48 +0000 (11:59 -0400)]
do_cmake.sh: simple cmake helper
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 22 Jun 2016 19:09:23 +0000 (15:09 -0400)]
Merge pull request #9626 from liewegas/wip-bluestore-2q
os/bluestore: implement 2Q buffer cache policy
Sage Weil [Wed, 22 Jun 2016 15:21:54 +0000 (11:21 -0400)]
ceph_test_objectstore: define matrixes over config options and write sizes
These replace a few of the ad hoc synthetic tests.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 22 Jun 2016 19:00:48 +0000 (15:00 -0400)]
os/bluestore: handle bnode removal race
One thread might try to drop a bnode while another does a lookup and
retakes a ref:
1- drop bnode ref (-> 0)
2- take bnode_set lock, do lookup
2- take bnode ref (-> 1)
2- drop lock
1- take bnode_set lock
1- remove from set
1- drop lock
Fix this race by rechecking the ref count while we are holding the lock.
Signed-off-by: Sage Weil <sage@redhat.com>
Samuel Just [Wed, 22 Jun 2016 18:21:16 +0000 (11:21 -0700)]
Revert "msg: default ms type = async"
Not ready quite yet, causing too many test failures.
This reverts commit
928887a09c2cb9944531165fcf4aa9026b49a3d9 .
Reviewed-by: Sage Weil <sage@redhat.com>
Jason Dillaman [Wed, 22 Jun 2016 18:02:42 +0000 (14:02 -0400)]
Merge pull request #9451 from s09816/master
librbd: enable/disable of features is not allowed when already enabled/disabled
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Wed, 22 Jun 2016 18:02:01 +0000 (14:02 -0400)]
Merge pull request #9715 from trociny/wip-16321
librbd: re-register watch on old format image rename
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Samuel Just [Wed, 22 Jun 2016 17:26:49 +0000 (10:26 -0700)]
Merge pull request #9874 from athanatos/wip-16185
OSDMonitor::prepare_pgtemp: only update up_thru if newer
Reviewed-by: Sage Weil <sage@redhat.com>
Samuel Just [Wed, 22 Jun 2016 17:26:35 +0000 (10:26 -0700)]
Merge pull request #9875 from athanatos/wip-16127
OSDMonitor: drop pg temp from sources other than the current primary
Reviewed-by: Sage Weil <sage@redhat.com>
Mykola Golub [Wed, 22 Jun 2016 17:12:59 +0000 (20:12 +0300)]
Merge pull request #9850 from dillaman/wip-16404
librbd: flag image as updated after proxying maintenance op
Reviewed-by: Mykola Golub <mgolub@mirantis.com>
Samuel Just [Wed, 22 Jun 2016 16:55:23 +0000 (09:55 -0700)]
Merge pull request #8370 from jack-changtao/pg_del
osd/PG: cleanup: delete find_best_info again
Reviewed-by: Samuel Just <sjust@redhat.com>
Samuel Just [Wed, 22 Jun 2016 16:51:01 +0000 (09:51 -0700)]
Merge pull request #9802 from yuyuyu101/wip-16378
msg/async: fix test stuck into STATE_WAIT
Reviewed-by: Samuel Just <sjust@redhat.com>
Kefu Chai [Wed, 22 Jun 2016 15:37:38 +0000 (23:37 +0800)]
Merge pull request #8195 from tchaikov/wip-cmake-visibility
cmake changes
Reviewed-by: Ali Maredia <amaredia@redhat.com>
Sage Weil [Tue, 21 Jun 2016 14:15:12 +0000 (10:15 -0400)]
os/bluestore: drop unneeded conditional in LRUCache trim
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Mon, 20 Jun 2016 15:35:38 +0000 (11:35 -0400)]
os/bluestore: protect BnodeSet with mutex
The onodes (and thus bnodes) may not get destroyed with the collection
lock held, which means we cannot rely on that lock to protected the
bnodeset structure. Give BnodeSet it's own mutex to protect itself.
While we are at it, make dummy a member so we can avoid constructing it
each time. This is now safe since we are under the new lock.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Mon, 20 Jun 2016 14:55:28 +0000 (10:55 -0400)]
os/bluestore: remove bluestore_cache_tails
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Mon, 20 Jun 2016 14:52:50 +0000 (10:52 -0400)]
os/bluestore: fix 8-bit csum
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Sun, 19 Jun 2016 14:14:11 +0000 (10:14 -0400)]
os/bluestore: default to 512MB cache, buffered reads
Test with small cache to exercise trimming.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Sun, 19 Jun 2016 14:02:02 +0000 (10:02 -0400)]
os/bluestore: 2q by default
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 10 Jun 2016 15:37:52 +0000 (11:37 -0400)]
os/bluestore: implement 2Q buffer cache policy
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Mon, 20 Jun 2016 13:59:28 +0000 (09:59 -0400)]
os/bluestore: move merge operator
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 10 Jun 2016 15:36:05 +0000 (11:36 -0400)]
os/bluestore: buffer cache_private field, returned by discard
2Q (and likly MQ?) need to know when we re-add a block that was previously
evicted. We track these as STATE_EMPTY buffers, but we throw them out
with _discard before we add the (re)read data into the BufferSpace. Add
a Buffer field called cache_private that is returned by discard (actually,
a max over everything that is discarded) that a cache implementation can
use to discover it has re-read a recently evicted item.
The Cache implemention needs to set cache_private values such that the MAX
over them is what it actually wants...
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 10 Jun 2016 15:33:10 +0000 (11:33 -0400)]
os/bluestore: include buffer * in operator<<
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 10 Jun 2016 15:23:27 +0000 (11:23 -0400)]
os/bluestore: cache: simplify lru trim
Everything in the LRU is clean.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 10 Jun 2016 13:33:20 +0000 (09:33 -0400)]
os/bluestore: make Cache implementation configurable
For now we only do "lru" (LRUCache).
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 10 Jun 2016 13:24:10 +0000 (09:24 -0400)]
os/bluestore: cache: define 'empty' buffer
This is a buffer with no data. It's a placeholder that is there to be used
by cache replacement algorithms like 2Q and MQ that needs history for
trimmed buffers.
Signed-off-by: Sage Weil <sage@redhat.com>