]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Kefu Chai [Thu, 23 Nov 2017 04:56:31 +0000 (12:56 +0800)]
qa: silence SLOW_OPS,PENDING_CREATING_PGS warnings
this is an intermediate step to deprecate REQUEST_SLOW warnings.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Wed, 1 Nov 2017 15:17:57 +0000 (23:17 +0800)]
mgr: summarize osd metrics in MMgrReport and sent it to mon
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Thu, 9 Nov 2017 13:37:11 +0000 (21:37 +0800)]
mon/health_check: s/std::list/list/
so it's self-contained, and .cc files including it are not obliged to `using namespace std`.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 23 Oct 2017 04:29:31 +0000 (12:29 +0800)]
osd: send health-checks to mgr
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sun, 29 Oct 2017 11:07:54 +0000 (19:07 +0800)]
osd: remember is_primary when adding pending creating pgs
so mgr can avoid calculating the same PG from different OSDs.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 27 Oct 2017 08:55:14 +0000 (16:55 +0800)]
common/OpTracker: refactor check_ops_in_flight()
* add a function visit_ops_in_flight() so it accepts a std::function,
which can be applied to all ops in flight. and is used to count
slow ops. the # of slow ops will be sent to mgr.
* add a function with_slow_ops_in_flight(), so we can use it to
implement command like "dump_slow_ops_in_flight". unlike the
existing feature which dumps slow ops to clog periodically, it
will dump the slow ops on demand. and backoff the warning
interval only when the slow ops are dumped.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Tue, 24 Oct 2017 14:41:30 +0000 (22:41 +0800)]
mgr/MgrClient: send health_checks using MMgrReport
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 20 Nov 2017 06:44:58 +0000 (14:44 +0800)]
Merge pull request #18980 from shinobu-x/os_filestore_filestore_nit_cleanup
os/filestore/FileStore: Initialized by nullptr, NULL or 0 instead
Reviewed-by: Sage Weil <sage@redhat.com>
Kefu Chai [Mon, 20 Nov 2017 06:44:23 +0000 (14:44 +0800)]
Merge pull request #18982 from neha-ojha/wip-const-cleanup
osd/PG: const cleanup for recoverable/readable predicates
Reviewed-by: Sage Weil <sage@redhat.com>
Kefu Chai [Mon, 20 Nov 2017 06:43:40 +0000 (14:43 +0800)]
Merge pull request #18934 from tchaikov/wip-option-return-by-ref
Revert "common/config: return const reference instead of a copy"
Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
Kefu Chai [Mon, 20 Nov 2017 06:42:25 +0000 (14:42 +0800)]
Merge pull request #18916 from tchaikov/wip-22113
osd: subscribe osdmaps if any pending pgs
Reviewed-by: Sage Weil <sage@redhat.com>
Kefu Chai [Mon, 20 Nov 2017 06:41:57 +0000 (14:41 +0800)]
Merge pull request #18816 from amitkumar50/cov-common-2
common: Check this->data.op_size before use
Reviewed-by: Sage Weil <sage@redhat.com>
Kefu Chai [Mon, 20 Nov 2017 06:39:17 +0000 (14:39 +0800)]
Merge pull request #18810 from majianpeng/fix-21982
osdc/Objecter: record correctly value for l_osdc_op_send_bytes.
Reviewed-by: Sage Weil <sage@redhat.com>
Kefu Chai [Mon, 20 Nov 2017 06:38:51 +0000 (14:38 +0800)]
Merge pull request #18777 from majianpeng/bluestore-collection-list
os/bluestore: optimize _collection_list.
Reviewed-by: Sage Weil <sage@redhat.com>
Kefu Chai [Mon, 20 Nov 2017 06:37:08 +0000 (14:37 +0800)]
Merge pull request #18544 from ddiss/pid_max
sysctl.d: set kernel.pid_max=
4194304
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 20 Nov 2017 06:36:38 +0000 (14:36 +0800)]
Merge pull request #18718 from shinobu-x/sk-ceph_osd
ceph_osd.cc: Drop legacy or redundant code
Reviewed-by: Sage Weil <sage@redhat.com>
Yan, Zheng [Sun, 19 Nov 2017 12:47:58 +0000 (20:47 +0800)]
Merge pull request #18776 from JianyuLi/joa-mul-mds
MDS: make popular counter decay at proper rate
Yan, Zheng [Sun, 19 Nov 2017 12:47:09 +0000 (20:47 +0800)]
Merge pull request #18784 from taodd/client-bugfix
Client:Fix readdir bug
Yan, Zheng [Sun, 19 Nov 2017 12:46:22 +0000 (20:46 +0800)]
Merge pull request #18786 from taodd/master
Client: setattr should drop "Fs" rather than "As" for mtime and size
Yan, Zheng [Sun, 19 Nov 2017 12:44:43 +0000 (20:44 +0800)]
Merge pull request #18836 from taodd/cephfs-hadoop
MDS: correct the error msg when init mon client
Yan, Zheng [Sun, 19 Nov 2017 12:43:39 +0000 (20:43 +0800)]
Merge pull request #18892 from taodd/client-bugfix2
MDS: add null check before we push_back "onfinish"
Yan, Zheng [Sun, 19 Nov 2017 12:43:03 +0000 (20:43 +0800)]
Merge pull request #18893 from taodd/mds-inotable-cleanup
mds: simplify the code logic in replay_alloc_ids
Yan, Zheng [Sun, 19 Nov 2017 12:40:48 +0000 (20:40 +0800)]
Merge pull request #18904 from taodd/mds-sesseionmap-cleanup
mds: get rid of the "if" check which is unnecessary inside a loop
Mykola Golub [Sat, 18 Nov 2017 16:07:48 +0000 (18:07 +0200)]
Merge pull request #19003 from dillaman/wip-22158
librbd: set deleted parent pointer to null
Reviewed-by: Mykola Golub <to.my.trociny@gmail.com>
Jason Dillaman [Sat, 18 Nov 2017 13:30:27 +0000 (08:30 -0500)]
librbd: set deleted parent pointer to null
Fixes: http://tracker.ceph.com/issues/22158
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Kefu Chai [Sat, 18 Nov 2017 13:14:16 +0000 (21:14 +0800)]
Merge pull request #18963 from amitkumar50/test-cov-test-9
test: Incorrect conversion to double
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 18 Nov 2017 13:12:23 +0000 (21:12 +0800)]
Merge pull request #18901 from jan--f/jan-crushtool-decompile-missing-ids
tools/crushtool: skip device id if no name exists
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 18 Nov 2017 13:10:52 +0000 (21:10 +0800)]
Merge pull request #18939 from majianpeng/bluestore-reap-collection
os/bluestore: fix the wrong usage for map_any
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Kefu Chai [Sat, 18 Nov 2017 13:10:16 +0000 (21:10 +0800)]
Merge pull request #18913 from yaozongyou/wip-rados-add-touch-command
tools/rados: add touch command to change object modification time
Reviewed-by: Sage Weil <sage@redhat.com>
Kefu Chai [Sat, 18 Nov 2017 13:08:29 +0000 (21:08 +0800)]
Merge pull request #18848 from jcsp/wip-22098
mgr/dashboard: fix audit log loading
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 18 Nov 2017 13:05:50 +0000 (21:05 +0800)]
Merge pull request #18847 from jcsp/wip-mgr-mon-upness
mgr/dashboard: show warnings if data is out of date or mons are down
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Jan Fajerski <jfajerski@suse.com>
Kefu Chai [Sat, 18 Nov 2017 13:04:37 +0000 (21:04 +0800)]
Merge pull request #18484 from Liuchang0812/wip-mgr-request-osd-metadata
mgr: request daemon's metadata when receiving a report from an unknown server
Reviewed-by: John Spray <john.spray@redhat.com>
Kefu Chai [Sat, 18 Nov 2017 12:57:56 +0000 (20:57 +0800)]
Merge pull request #18976 from yahooguntu/patch-1
udev: Fix typo in udev OSD rules file
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 18 Nov 2017 05:15:52 +0000 (13:15 +0800)]
Merge pull request #18944 from tchaikov/wip-dpdk-spdk
cmake: WITH_SPDK=ON by default
Reviewed-by: Liu-Chunmei <chunmei.liu@intel.com>
chunmei [Mon, 13 Nov 2017 19:19:23 +0000 (11:19 -0800)]
msg/async: rebase msg/async/dpdk to spdk/dpdk
Signed-off-by: Liu-Chunmei <chunmei.liu@intel.com>
Kefu Chai [Fri, 17 Nov 2017 05:47:52 +0000 (13:47 +0800)]
cmake: use BuildDPDK if libdpdk not found
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Tue, 10 Jan 2017 07:14:01 +0000 (15:14 +0800)]
cmake: add rte_mempool_{ring,stack} to Finddpdk.cmake
* also refactor it a little bit
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Wed, 15 Nov 2017 18:10:25 +0000 (02:10 +0800)]
cmake: BuildDPDK: do not build kernel modules
see also http://pkgs.fedoraproject.org/cgit/rpms/dpdk.git/tree/dpdk.spec
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Wed, 15 Nov 2017 13:15:08 +0000 (21:15 +0800)]
cmake: remove duplicated spdk linkage
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Wed, 15 Nov 2017 12:57:56 +0000 (20:57 +0800)]
cmake: refactor dpdk related code
* move the check of `USE_CRYPTOPP` to $top_srcdir/CMakeLists.txt
* remove reference of DPDK_LIBRARY, it's defined nowhere
* move the dpdk code to a single place
Signed-off-by: Kefu Chai <kchai@redhat.com>
Andrew Schoen [Fri, 17 Nov 2017 20:36:42 +0000 (14:36 -0600)]
Merge pull request #18988 from ceph/wip-rm22154
ceph-disk: create deprecation warnings
Reviewed-by: Andrew Schoen <aschoen@redhat.com>
Alfredo Deza [Fri, 17 Nov 2017 18:10:29 +0000 (13:10 -0500)]
doc/ceph-volume create a migration section to help users coming from ceph-disk
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Alfredo Deza [Fri, 17 Nov 2017 18:01:14 +0000 (13:01 -0500)]
ceph-disk add deprecation warnings in favor of ceph-volume
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Fixes: http://tracker.ceph.com/issues/22154
Yuri Weinstein [Fri, 17 Nov 2017 17:55:29 +0000 (09:55 -0800)]
Merge pull request #18917 from ZVampirEM77/wip-em-copyobjdata-cleanup
rgw: cleanup unused parameters in RGWRados::copy_obj_data
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Jos Collin <jcollin@redhat.com>
Mitch Birti [Thu, 16 Nov 2017 22:27:20 +0000 (16:27 -0600)]
udev: Fix typo in udev OSD rules file
The rule for lockbox partitions had an invalid UUID for the "change" action.
Signed-off-by: Mitch Birti <yahooguntu@gmail.com>
Yuri Weinstein [Fri, 17 Nov 2017 16:49:31 +0000 (08:49 -0800)]
Merge pull request #18922 from Synesis-LLC/fix-22122
rgw: fix radosgw-admin bucket rm with --purge-objects and --bypass-gc
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Yuri Weinstein [Fri, 17 Nov 2017 16:48:37 +0000 (08:48 -0800)]
Merge pull request #18956 from Jeegn-Chen/wip-issue-22129
rgw: AWS v4 authorization work when INIT_MULTIPART is chunked
Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
Andrew Schoen [Fri, 17 Nov 2017 15:38:08 +0000 (09:38 -0600)]
Merge pull request #18984 from ceph/wip-cv-unittest-fix
ceph-volume tests.devices.lvm prepare isn't bluestore specific anymore
Reviewed-by: Andrew Schoen <aschoen@redhat.com>
Casey Bodley [Fri, 17 Nov 2017 15:25:47 +0000 (10:25 -0500)]
Merge pull request #18968 from joscollin/wip-rgwadmin-rewrite
rgw: fix rewrite options usage text
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Sage Weil [Fri, 17 Nov 2017 14:52:50 +0000 (08:52 -0600)]
Merge pull request #17797 from amitkumar50/cov-msg-3
msg: Initialize lkey,bound,port_cnt,num_chunk,gid_idx
Reviewed-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 17 Nov 2017 14:51:07 +0000 (08:51 -0600)]
Merge pull request #17874 from ShowingCloud/master
ceph-bluestore-tool: check if bdev is empty on 'bluefs-bdev-expand'
Reviewed-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 17 Nov 2017 14:49:59 +0000 (08:49 -0600)]
Merge pull request #18090 from amitkumar50/test-cov-8
test: checking negative returns from creat()
Reviewed-by: Sage Weil <sage@redhat.com>
Alfredo Deza [Fri, 17 Nov 2017 13:41:24 +0000 (08:41 -0500)]
ceph-volume tests.devices.lvm prepare isn't bluestore specific anymore
Signed-off-by: Alfredo Deza <adeza@redhat.com>
David Disseldorp [Tue, 14 Nov 2017 15:32:39 +0000 (16:32 +0100)]
sysctl.d: set kernel.pid_max=
4194304 on 64-bit systems
For CONFIG_BASE_FULL Linux kernels, the maximum number of proc/thread
IDs is set to 32768 by default. This default limit can be quite easily
hit during recovery on nodes with high OSD counts.
To avoid hitting the pid_max default limit, attempt to configure it to
4194304 , which corresponds to the maximum limit possible on 64-bit
CONFIG_BASE_FULL kernels.
Fixes: http://tracker.ceph.com/issues/21929
Signed-off-by: David Disseldorp <ddiss@suse.de>
David Disseldorp [Tue, 14 Nov 2017 14:55:39 +0000 (15:55 +0100)]
sysctl: relocate 90-ceph-osd.conf under etc/sysctl/
Signed-off-by: David Disseldorp <ddiss@suse.de>
Jianpeng Ma [Tue, 7 Nov 2017 14:42:59 +0000 (22:42 +0800)]
os/filestore: remove redudant check.
If next is null, we already set a non-null to it. So don't check again.
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
Jianpeng Ma [Fri, 17 Nov 2017 11:21:59 +0000 (19:21 +0800)]
os/bluestore: using ghobject_t::is_max to judge.
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
Neha Ojha [Fri, 17 Nov 2017 10:50:00 +0000 (16:20 +0530)]
osd/PG: const cleanup for recoverable/readable predicates
Signed-off-by: Neha Ojha <nojha@redhat.com>
Jianpeng Ma [Tue, 7 Nov 2017 14:17:14 +0000 (22:17 +0800)]
os/bluestore: bypass check if collection has more objects than nonexistent_count.
If next != ghobject_t::get_max(), this mean collection has more data
than nonexistent_count. For this we should bypass check.
And fix wrong comments because _collection_list don't return object num.
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
Kefu Chai [Wed, 15 Nov 2017 12:57:25 +0000 (20:57 +0800)]
cmake: WITH_SPDK=ON by default
Signed-off-by: wanjun.lp <wanjun.lp@alibaba-inc.com>
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Wed, 15 Nov 2017 12:56:12 +0000 (20:56 +0800)]
rpm,deb: add cunit1 as build dependency
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Wed, 15 Nov 2017 12:54:46 +0000 (20:54 +0800)]
cmake: build spdk/dpdk in cmake modules
Signed-off-by: Kefu Chai <kchai@redhat.com>
Signed-off-by: wanjun.lp <wanjun.lp@alibaba-inc.com>
Signed-off-by: Ziye Yang <optimistyzy@gmail.com>
Shinobu Kinjo [Fri, 17 Nov 2017 07:02:12 +0000 (16:02 +0900)]
os/filestore/FileStore: [Cleanup (trivial)] Initialized by nullptr, NULL or 0 instead
Signed-off-by: Shinobu Kinjo <shinobu@redhat.com>
Jos Collin [Thu, 16 Nov 2017 11:48:50 +0000 (17:18 +0530)]
rgw: fix rewrite options usage text
Fixed rewrite options usage text properly.
Signed-off-by: Jos Collin <jcollin@redhat.com>
Jos Collin [Fri, 17 Nov 2017 04:53:12 +0000 (10:23 +0530)]
Merge pull request #18950 from sknorr/fix-rn-typos
doc: Fix typos in release notes
Reviewed-by: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
Reviewed-by: Jos Collin <jcollin@redhat.com>
Matt Benjamin [Thu, 16 Nov 2017 20:14:28 +0000 (15:14 -0500)]
Merge pull request #17977 from cbodley/wip-rgw-beast-qa
qa/rgw: add beast frontend to some rgw suites
Patrick Donnelly [Thu, 16 Nov 2017 19:47:05 +0000 (11:47 -0800)]
Merge PR #18600 into master
* refs/pull/18600/head:
MDSMonitor: only clog changes to active
Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: João Eduardo Luís <joao@suse.de>
Patrick Donnelly [Thu, 16 Nov 2017 19:47:05 +0000 (11:47 -0800)]
githubmap: update contributors
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Thu, 16 Nov 2017 19:45:59 +0000 (11:45 -0800)]
Merge PR #18774 into master
* refs/pull/18774/head:
mds: fix CDir::log_mark_dirty()
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Mykola Golub [Thu, 16 Nov 2017 17:32:42 +0000 (19:32 +0200)]
Merge pull request #18887 from dillaman/wip-20789
librbd: compare and write against a clone can result in failure
Reviewed-by: Mykola Golub <to.my.trociny@gmail.com>
Andrew Schoen [Thu, 16 Nov 2017 16:47:14 +0000 (10:47 -0600)]
Merge pull request #18924 from ceph/wip-cv-filestore-devices
ceph-volume: allow using a device or partition for `lvm --data`
Reviewed-by: Andrew Schoen <aschoen@redhat.com>
Yuri Weinstein [Thu, 16 Nov 2017 16:31:16 +0000 (08:31 -0800)]
Merge pull request #18700 from tianshan/fix_cls_bucket_head
rgw: fix cls_bucket_head result order consistency
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Yuri Weinstein [Thu, 16 Nov 2017 16:30:52 +0000 (08:30 -0800)]
Merge pull request #18926 from theanalyst/wip-mp-jewel-fix
rgw: set sync_from_all as true when no value is seen
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Alfredo Deza [Thu, 16 Nov 2017 13:50:34 +0000 (08:50 -0500)]
ceph-volume tests.functional create a common playbook directory for setups
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Alfredo Deza [Tue, 14 Nov 2017 16:01:48 +0000 (11:01 -0500)]
doc/ceph-volume lvm prepare can accept devices for --data
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Alfredo Deza [Tue, 14 Nov 2017 13:42:27 +0000 (08:42 -0500)]
ceph-volume tests.functional add setup playbook for xenial filestore
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Alfredo Deza [Tue, 14 Nov 2017 13:42:02 +0000 (08:42 -0500)]
ceph-volume tests.functional add data device and journal to xenial filestore
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Alfredo Deza [Tue, 14 Nov 2017 13:40:37 +0000 (08:40 -0500)]
ceph-volume tests.functional add setup playbook for xenial bluestore
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Alfredo Deza [Tue, 14 Nov 2017 13:40:18 +0000 (08:40 -0500)]
ceph-volume tests.functional add raw data device to xenial bluestore
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Alfredo Deza [Tue, 14 Nov 2017 13:38:23 +0000 (08:38 -0500)]
ceph-volume tests.functional tox.ini addition of setup playbook for partitions
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Alfredo Deza [Tue, 14 Nov 2017 13:37:17 +0000 (08:37 -0500)]
ceph-volume tests.functional add raw data device to centos7 bluestore
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Alfredo Deza [Tue, 14 Nov 2017 13:36:36 +0000 (08:36 -0500)]
ceph-volume tests.functional add setup playbook for centos7 bluestore
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Alfredo Deza [Tue, 14 Nov 2017 13:35:59 +0000 (08:35 -0500)]
ceph-volume tests.functional add setup playbook for centos7 filestore
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Alfredo Deza [Tue, 14 Nov 2017 13:35:42 +0000 (08:35 -0500)]
ceph-volume tests.functional add raw device to centos7 filestore
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Alfredo Deza [Mon, 13 Nov 2017 19:29:32 +0000 (14:29 -0500)]
ceph-volume lvm.common update --data flag to reflect device acceptance
Signed-off-by: Alfredo Deza <adeza@redhat.com>
Jason Dillaman [Thu, 16 Nov 2017 13:36:23 +0000 (08:36 -0500)]
Merge pull request #18969 from vshankar/rbd-mirror-image-map-state-transition
rbd-mirror: use next transition state to check transition completeness
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Sage Weil [Thu, 16 Nov 2017 13:15:08 +0000 (07:15 -0600)]
Merge pull request #18960 from Liuchang0812/mailmap-update
.mailmap, .organizationmap: update JingChen, ZongyouYao, ShanchunLv's…
Jason Dillaman [Wed, 15 Nov 2017 13:24:50 +0000 (08:24 -0500)]
test/librbd: disable compare and write if skipping partial discard
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Thu, 9 Nov 2017 17:10:30 +0000 (12:10 -0500)]
librbd: refactor object write request state machines
Fixes: http://tracker.ceph.com/issues/20789
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Thu, 9 Nov 2017 15:24:08 +0000 (10:24 -0500)]
librbd: consolidate all object discard-related logic into single state machine
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Wed, 8 Nov 2017 17:31:28 +0000 (12:31 -0500)]
librbd: simplify interface between object IO and copyup state machines
The initial copyup was not receiving a write hint and the
code for hints was duplicated multiple times. Additionally,
the object map state should match the last executed write op.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Thu, 9 Nov 2017 20:15:58 +0000 (15:15 -0500)]
librbd: copyup state machine needs to handle empty write ops
The compare-and-write object operation cannot be executed
concurrently within a copyup operation since the object might not
exist yet (if not performing a deep-copy).
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Tue, 7 Nov 2017 19:36:10 +0000 (14:36 -0500)]
librbd: object cacher should re-use read state machine
This adds support for sparse-reads and ensures all object reads
utilize a single, tested code path.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Tue, 7 Nov 2017 17:24:44 +0000 (12:24 -0500)]
librbd: refactor io::ObjectReadRequest
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Tue, 7 Nov 2017 19:17:25 +0000 (14:17 -0500)]
librbd: default template parameter for C_SparseReadRequest
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Tue, 7 Nov 2017 18:42:19 +0000 (13:42 -0500)]
librbd: reduce lock scope when assembling read results
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Tue, 7 Nov 2017 18:33:12 +0000 (13:33 -0500)]
librbd: ObjectReadRequest does not require buffer extents
The ReadResult wrapper requires the buffer extents to know
how to properly reconstruct the out buffer.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Mon, 6 Nov 2017 23:35:42 +0000 (18:35 -0500)]
librbd: templatize IO object request state machines
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Sat, 11 Nov 2017 02:45:13 +0000 (21:45 -0500)]
test/librados_test_stub: mocked remainder of IO ops used by librbd
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Fri, 10 Nov 2017 21:26:19 +0000 (16:26 -0500)]
test/librados_test_stub: simulate set_alloc_hint creating a non-existent file
Signed-off-by: Jason Dillaman <dillaman@redhat.com>