]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Jashan Kamboj [Tue, 21 Jul 2015 17:10:00 +0000 (22:40 +0530)]
add setlayout, setdirlayout, setxattr check_access
Signed-off-by: Jashan Kamboj <jashank42@gmail.com>
Jashan Kamboj [Tue, 21 Jul 2015 17:08:20 +0000 (22:38 +0530)]
add readdir check_access
Signed-off-by: Jashan Kamboj <jashank42@gmail.com>
Sage Weil [Tue, 21 Jul 2015 16:50:24 +0000 (12:50 -0400)]
mds/Server: clean up check_access a bit
Signed-off-by: Sage Weil <sage@redhat.com>
Nishtha Rai [Tue, 21 Jul 2015 15:09:40 +0000 (20:39 +0530)]
MDSAuthCaps: add logic for group bits check
Signed-off-by: Nishtha Rai <nishtha3rai@gmail.com>
Nishtha Rai [Mon, 20 Jul 2015 16:04:04 +0000 (21:34 +0530)]
test_auth_caps: add test for user bits
Signed-off-by: Nishtha Rai <nishtha3rai@gmail.com>
Nishtha Rai [Mon, 20 Jul 2015 14:01:25 +0000 (19:31 +0530)]
mds/MDSAuthCaps: add permissions for user bits
Signed-off-by: Nishtha Rai <nishtha3rai@gmail.com>
Sage Weil [Mon, 20 Jul 2015 17:58:23 +0000 (13:58 -0400)]
Makefile: include ceph-fuse in base target
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Tue, 1 Sep 2015 20:48:17 +0000 (16:48 -0400)]
client: behave if we can't getattr parents of mount point
If our cap locks us into a subdirectory (e.g., /foo), we will fail to
getattr on its parents (e.g., /). This is expected. Tolerate this case,
and warn that quotas may misbehave in that case (if they are set on one of
those parents).
Signed-off-by: Sage Weil <sage@redhat.com>
Nishtha Rai [Mon, 20 Jul 2015 13:32:03 +0000 (19:02 +0530)]
test_auth_caps: Move trap and cleanup to the top
Nishtha Rai [Thu, 16 Jul 2015 20:22:16 +0000 (01:52 +0530)]
test_auth_caps: Added test logic for world bits
Nishtha Rai [Mon, 20 Jul 2015 13:35:01 +0000 (09:35 -0400)]
MDSAuthCaps: add world bits check logic
Signed-off-by: Nishtha Rai <nishtha3rai@gmail.com>
Sage Weil [Thu, 16 Jul 2015 20:00:55 +0000 (16:00 -0400)]
client: pass uid, gid to lookup
The MDS cares about who is performing lookup, too!
Signed-off-by: Sage Weil <sage@redhat.com>
Jashan Kamboj [Wed, 15 Jul 2015 13:56:40 +0000 (19:26 +0530)]
add unlink, rmdir check_access test
Signed-off-by: Jashan Kamboj <jashank42@gmail.com>
Jashan Kamboj [Wed, 15 Jul 2015 13:43:19 +0000 (19:13 +0530)]
add unlink, rmdir check_access
Signed-off-by: Jashan Kamboj <jashank42@gmail.com>
Jashan Kamboj [Tue, 14 Jul 2015 21:32:49 +0000 (03:02 +0530)]
add symlink test
Signed-off-by: Jashan Kamboj <jashank42@gmail.com>
Jashan Kamboj [Tue, 14 Jul 2015 21:30:38 +0000 (03:00 +0530)]
add symlink check_access
Signed-off-by: Jashan Kamboj <jashank42@gmail.com>
Jashan Kamboj [Tue, 14 Jul 2015 21:29:43 +0000 (02:59 +0530)]
Add mknod check_access
Signed-off-by: Jashan Kamboj <jashank42@gmail.com>
Sage Weil [Fri, 10 Jul 2015 18:42:59 +0000 (14:42 -0400)]
qa/workunits/fs/test_path_caps: tolerate existing directories
Signed-off-by: Sage Weil <sage@redhat.com>
Jashan Kamboj [Fri, 10 Jul 2015 18:30:28 +0000 (00:00 +0530)]
functional test of mds cap path restriction
Signed-off-by: Jashan Kamboj <jashank42@gmail.com>
Jashan Kamboj [Fri, 10 Jul 2015 14:20:15 +0000 (19:50 +0530)]
mds/Server.cc: drop leading / from path in is_capable check
Signed-off-by: Jashan Kamboj <jashank42@gmail.com>
Sage Weil [Thu, 9 Jul 2015 16:13:55 +0000 (12:13 -0400)]
unittest_mds_authcap: test lists of allow grants
Signed-off-by: Sage Weil <sage@redhat.com>
Jashan Kamboj [Thu, 9 Jul 2015 13:41:12 +0000 (19:11 +0530)]
mds: mkdir check_access
Signed-off-by: Jashan Kamboj <jashank42@gmail.com>
Sage Weil [Thu, 9 Jul 2015 15:18:42 +0000 (11:18 -0400)]
mds/MDSAuthCaps: fix parse error message
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 9 Jul 2015 15:18:08 +0000 (11:18 -0400)]
mds: whitespace
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 9 Jul 2015 15:18:04 +0000 (11:18 -0400)]
mds: log to cluster log if mds cap parse fails
It's an admin error; tell an admin.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 8 Jul 2015 20:20:46 +0000 (16:20 -0400)]
mds/MDSAuthCaps: debug is_capable
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 8 Jul 2015 20:15:05 +0000 (16:15 -0400)]
mds/MDSAuthCap: fix debug prefix
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 8 Jul 2015 20:01:07 +0000 (16:01 -0400)]
mds/MDSAuthCap: drop leading / in paths
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 8 Jul 2015 19:58:51 +0000 (15:58 -0400)]
mds/MDSAuthCaps: fix allow_all
Empty path is '', not '/'.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 8 Jul 2015 19:47:00 +0000 (15:47 -0400)]
mds/MDSAuthCaps: add cct for debug context
signed-off-by: Nishtha Rai <nishtha3rai@gmail.com>
Signed-off-by: Sage Weil <sage@redhat.com>
Jashan Kamboj [Mon, 15 Jun 2015 21:20:55 +0000 (02:50 +0530)]
mds: calculate path in check_access()
Signed-off-by: Jashan Kamboj <jashank42@gmail.com>
Sage Weil [Thu, 4 Jun 2015 21:40:21 +0000 (14:40 -0700)]
mds/MDSAuthCaps: normalize path, drop useless constant.
Use an empty string for no path--this is more efficient. This generalizes
to losing any leading '/' character.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 4 Jun 2015 20:52:05 +0000 (13:52 -0700)]
mds/MDSAuthCaps: pass down inode uid.gid and mode
We will need this to evaluate the unix permissions.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Sat, 30 May 2015 01:36:00 +0000 (21:36 -0400)]
mds/Server: add a few access checks
(incomplete coverage!)
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 4 Jun 2015 20:35:23 +0000 (13:35 -0700)]
mds/Server: add check_access() hook
For now, we are doing a very basic permission check. No callers yet.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 4 Jun 2015 20:45:59 +0000 (13:45 -0700)]
mds/MDSAuthCap: fix uid and gid types
int64_t for uid, so we can do a negative "none" value.
gid_t (uint32_t) for gid.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 4 Jun 2015 20:37:26 +0000 (13:37 -0700)]
mds/MDSAuthCaps: cosmetic
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 4 Jun 2015 20:37:56 +0000 (13:37 -0700)]
mds/MDSAuthCaps: use bitmask for is_capable()
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 28 May 2015 20:48:36 +0000 (16:48 -0400)]
mds/MDSAuthCap: fix path match
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 28 May 2015 04:52:27 +0000 (00:52 -0400)]
mds/MDSAuthCaps: move allows() into MDSCapSpec
Also, fix this so that 'any' implies that we can read or write.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 28 May 2015 04:33:07 +0000 (00:33 -0400)]
mds/MDSAuthCaps: parse optional gid list
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 28 May 2015 04:00:39 +0000 (00:00 -0400)]
mds/MDSAuthCaps: whitespace
Signed-off-by: Sage Weil <sage@redhat.com>
Kefu Chai [Thu, 1 Oct 2015 10:03:19 +0000 (18:03 +0800)]
Merge pull request #5951 from guangyy/doc-pool
doc: update doc for with new pool settings
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Loic Dachary [Wed, 30 Sep 2015 19:14:32 +0000 (21:14 +0200)]
Merge pull request #5853 from branch-predictor/bp-rados-fix-noverify
common/obj_bencher.cc: fix verification crashing when there's no objects
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Loic Dachary [Wed, 30 Sep 2015 15:38:26 +0000 (17:38 +0200)]
Merge pull request #6009 from theanalyst/scripts/orig-issue
scripts: release_notes can track original issue
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Sage Weil [Wed, 30 Sep 2015 15:09:08 +0000 (11:09 -0400)]
Merge pull request #5211 from 0003ydlom/smc3
MOSDOp/do_op/handle_op: Simple Messenger optimization
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Tested-by: Kefu Chai <kchai@redhat.com>
Sage Weil [Wed, 30 Sep 2015 12:41:59 +0000 (08:41 -0400)]
Merge pull request #6127 from wido/mirror-docs-fixes
docs: Fix styling of newly added mirror docs
Sage Weil [Wed, 30 Sep 2015 12:31:48 +0000 (08:31 -0400)]
Merge pull request #6109 from liewegas/wip-13214
init-rbdmap: fix CMDPARAMS
Reviewed-by: Nathan Cutler <ncutler@suse.com>
Sage Weil [Wed, 30 Sep 2015 12:29:05 +0000 (08:29 -0400)]
init-rbdmap: fix CMDPARAMS
Fixes: #13214
Reported-by: Wyllys Ingersoll <wyllys.ingersoll@keepertech.com>
Signed-off-by: Sage Weil <sage@redhat.com>
Wido den Hollander [Wed, 30 Sep 2015 11:45:28 +0000 (13:45 +0200)]
docs: Fix styling of newly added mirror docs
Guang Yang [Wed, 30 Sep 2015 00:27:07 +0000 (00:27 +0000)]
cleanup: make the pool setting GET decription point to SET description
Signed-off-by: Guang Yang yguang@yahoo-inc.com
Guang Yang [Wed, 16 Sep 2015 17:46:41 +0000 (17:46 +0000)]
doc: update doc for with new pool settings
Signed-off-by: Guang Yang yguang@yahoo-inc.com
Sage Weil [Wed, 30 Sep 2015 00:15:31 +0000 (20:15 -0400)]
Merge remote-tracking branch 'gh/infernalis'
Sage Weil [Tue, 29 Sep 2015 21:42:08 +0000 (17:42 -0400)]
Merge pull request #6101 from liewegas/wip-fs
os/fs: fix do loop
Reviewed-by: Kefu Chai <kchai@redhat.com>
branto1 [Tue, 29 Sep 2015 10:57:32 +0000 (12:57 +0200)]
Merge pull request #6103 from SUSE/wip-re-redrop-fdupes
ceph.spec.in: re-re-drop fdupes
Reviewed-by: Boris Ranto <branto@redhat.com>
Piotr Dałek [Tue, 29 Sep 2015 07:12:03 +0000 (09:12 +0200)]
test/test_rados_tool.sh: implement regression test for bench verify crash
Truncate all objects after format test, then check whether rados bench rand/seq
still works, or just crashes.
Signed-off-by: Piotr Dałek <piotr.dalek@ts.fujitsu.com>
Piotr Dałek [Wed, 9 Sep 2015 08:57:00 +0000 (10:57 +0200)]
common/obj_bencher.cc: fix verification crashing when there's no objects
When specified pool is empty or doesn't contain valid bench objects, rados
can crash because it attempts to memcmp through NULL pointer. Added check
for valid object size (which also fixes the case when objects are there, but
they're truncated), and made object_size being size_t instead of int.
In seq_read_bench, there's a missing lock.Lock() which causes rados to trigger
assert when object reading fails. Moved lock.Lock() before completion_ret()
call.
Signed-off-by: Piotr Dałek <piotr.dalek@ts.fujitsu.com>
Nathan Cutler [Tue, 29 Sep 2015 06:57:16 +0000 (08:57 +0200)]
ceph.spec.in: re-re-drop fdupes
The %fdupes call was dropped by
53072b9019caf72e0313b2804ea174237ed7da33
Later, it got accidentally reinstated by
ceb93e8e69e125c9358f63b0099e7509b6624bcf
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Gregory Farnum [Tue, 29 Sep 2015 05:21:34 +0000 (22:21 -0700)]
Merge pull request #6025 from ukernel/wip-13167
journaler: detect unexpected holes in journal objects
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Gregory Farnum [Tue, 29 Sep 2015 05:19:11 +0000 (22:19 -0700)]
Merge pull request #5849 from ukernel/wip-32bits-ceph-fuse
Wip 32bits ceph fuse
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Gregory Farnum [Tue, 29 Sep 2015 05:14:52 +0000 (22:14 -0700)]
Merge pull request #4791 from ceph/wip-11783
cephfs: detect completed cap flushes
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Yan, Zheng [Tue, 29 Sep 2015 02:12:39 +0000 (10:12 +0800)]
Merge pull request #6070 from jcsp/wip-reformat-subtreemaptest
Fix reformatting journals containing SUBTREEMAP_TEST events
Yan, Zheng [Tue, 29 Sep 2015 02:02:28 +0000 (10:02 +0800)]
Merge pull request #6082 from jcsp/wip-client-quota-roots
Fix quota enforcement on subdir mounts
Sage Weil [Tue, 29 Sep 2015 01:31:23 +0000 (21:31 -0400)]
os/fs: fix aio submit method
continue in a do while(false) will always eval false and break
out. To repeat, we need while (true) and an explicit break.
Reported-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Mon, 28 Sep 2015 20:42:01 +0000 (16:42 -0400)]
Merge pull request #6078 from H3C/wip-13208
Objecter: maybe access wild pointer(op) in _op_submit_with_budget.
Reviewed-by: Kefu Chai <kchai@redhat.com>
Sage Weil [Mon, 28 Sep 2015 20:41:44 +0000 (16:41 -0400)]
Merge pull request #6064 from H3C/wip-rbd-bugfix1
Objecter: misc fix for segmentation fault.
Reviewed-by: Sage Weil <sage@redhat.com>
Sage Weil [Mon, 28 Sep 2015 20:40:31 +0000 (16:40 -0400)]
Merge pull request #6084 from liewegas/wip-revert-scrub
Revert "osd: new pool settings: scrub intervals"
Reviewed-by: Mykola Golub <mgolub@mirantis.com>
Ken Dreyer [Mon, 28 Sep 2015 19:09:33 +0000 (13:09 -0600)]
Merge pull request #5832 from SUSE/wip-drop-dup-rcceph
ceph.spec.in: refrain from duplicating %{_sbindir}/rcceph
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Samuel Just [Mon, 28 Sep 2015 17:17:41 +0000 (10:17 -0700)]
Merge pull request #6098 from liewegas/wip-crash-replay-interval
don't assume crash_replay_itnerval == 45
Reviewed-by: Samuel Just <sjust@redhat.com>
Sage Weil [Mon, 28 Sep 2015 17:13:40 +0000 (13:13 -0400)]
qa/workunits/cephtool/test.sh: don't assume crash_replay_interval=45
e.g., it's 5 in teuthology's ceph.conf.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Mon, 28 Sep 2015 15:44:46 +0000 (11:44 -0400)]
Merge pull request #6076 from liewegas/wip-scrub-fix
osd/PG: compensate for sloppy hobject scrub bounds from hammer
Reviewed-by: Kefu Chai <kchai@redhat.com>
Jacek J. Lakis [Thu, 6 Aug 2015 10:14:17 +0000 (12:14 +0200)]
MOSDOp::decode : Splitting message decoding, new version
Signed-off-by: Jacek J. Lakis <jacek.lakis@intel.com>
Jacek J. Lakis [Thu, 6 Aug 2015 10:12:57 +0000 (12:12 +0200)]
handle_op/do_op: Moving couple of checks from dispatcher to parallelized workers
Signed-off-by: Jacek J. Lakis <jacek.lakis@intel.com>
Loic Dachary [Sat, 26 Sep 2015 14:12:33 +0000 (16:12 +0200)]
Merge pull request #6086 from stiopaa1/librados_missingsemicolon
examples/librados/hello_world.cc:missing semicolon
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Michal Jarzabek [Sat, 26 Sep 2015 13:45:22 +0000 (14:45 +0100)]
examples/librados/hello_world.cc:missing semicolon
Signed-off-by: Michal Jarzabek <stiopa@gmail.com>
Sage Weil [Sat, 26 Sep 2015 05:24:22 +0000 (01:24 -0400)]
Merge pull request #6068 from dachary/wip-12936-shec
erasure-code: shec must compare for equality with epsilon
Reviewed-by: Sage Weil <sage@redhat.com>
Sage Weil [Sat, 26 Sep 2015 05:22:39 +0000 (01:22 -0400)]
Merge pull request #6052 from liewegas/wip-13098
osd: fix full request handling
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Sage Weil [Sat, 26 Sep 2015 05:22:10 +0000 (01:22 -0400)]
Merge pull request #6075 from liewegas/wip-osd-getmap
osd: avoid duplicate MMonGetOSDMap requests
Reviewed-by: Kefu Chai <kchai@redhat.com>
Dan Mick [Fri, 25 Sep 2015 18:14:51 +0000 (11:14 -0700)]
Merge pull request #6077 from liewegas/wip-qa
qa: http://ceph.com/qa -> http://download.ceph.com/qa
also some ceph.com/git -> git.ceph.com and a few line-endings - dmick
Reviewed-by: Dan Mick <dmick@redhat.com>
Sage Weil [Fri, 25 Sep 2015 18:01:19 +0000 (14:01 -0400)]
Revert "osd: new pool settings: scrub intervals"
This reverts commit
30810da4b573b3c7e679bc66eaa29b70246538cb .
After some discussion we have decided it is better to build a generic
dictionary in pg_pool_t to store infrequently used per-pool properties.
Signed-off-by: Sage Weil <sage@redhat.com>
Gregory Farnum [Fri, 25 Sep 2015 15:40:51 +0000 (08:40 -0700)]
Merge pull request #6083 from jcsp/wip-mds-allow-star
ceph-create-keys: set mds "allow *"
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
John Spray [Fri, 25 Sep 2015 15:07:59 +0000 (16:07 +0100)]
ceph-create-keys: set mds "allow *"
So that 'tell' works out of the box.
Signed-off-by: John Spray <john.spray@redhat.com>
Loic Dachary [Thu, 24 Sep 2015 09:35:13 +0000 (11:35 +0200)]
erasure-code: shec must compare for equality with epsilon
When comparing two double for strict inequality, a test for equality
using epsilon must also be done to ensure the results do not vary cross
platform.
http://tracker.ceph.com/issues/12936 Fixes: #12936
Signed-off-by: Loic Dachary <ldachary@redhat.com>
Kefu Chai [Fri, 25 Sep 2015 13:41:48 +0000 (21:41 +0800)]
Merge pull request #5959 from mslovy/wip-current-dev
mon: Fix unnecessary at/near max target warn in ceph -s
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 25 Sep 2015 13:39:20 +0000 (21:39 +0800)]
Merge pull request #5356 from majianpeng/code-cleanup
osd: cleanup code when met crc error.
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 25 Sep 2015 13:31:38 +0000 (21:31 +0800)]
Merge pull request #5972 from Jerry7X/master
unsigned type is short for journal max_size,use uint64_t instead
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Sage Weil [Fri, 25 Sep 2015 12:59:54 +0000 (08:59 -0400)]
Merge remote-tracking branch 'gh/infernalis'
Sage Weil [Fri, 25 Sep 2015 12:56:02 +0000 (08:56 -0400)]
Merge pull request #6048 from XinzeChi/wip-filestore-qlock
filestore: fix peek_queue for OpSequencer
Reviewed-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 25 Sep 2015 12:53:53 +0000 (08:53 -0400)]
Merge pull request #6040 from liewegas/wip-mon-kv
mon: some fixes for kv backend failures
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Joao Eduardo Luis <joao@suse.de>
Sage Weil [Fri, 25 Sep 2015 12:53:00 +0000 (08:53 -0400)]
Merge pull request #6022 from jdurgin/wip-13032
msg: randomize client nonces
Reviewed-by: Sage Weil <sage@redhat.com>
Sage Weil [Fri, 25 Sep 2015 12:52:29 +0000 (08:52 -0400)]
Merge pull request #6012 from liewegas/wip-mon
mon: misc scaling fixes
Reviewed-by: Joao Eduardo Luis <joao@suse.de>
Reviewed-by: Kefu Chai <kchai@redhat.com>
John Spray [Fri, 25 Sep 2015 12:23:01 +0000 (13:23 +0100)]
client: fix quote enforcement on subdir mounts
While we don't allow setting quotas on the global
filesystem root, the inode which is root from the
client mount's point of view might have a quota.
Signed-off-by: John Spray <john.spray@redhat.com>
John Spray [Fri, 25 Sep 2015 12:02:56 +0000 (13:02 +0100)]
client: refactor quota check functions
Generalise the path traversal into check_quota_condition
and then call that from each of file_exceeded, bytes_exceeded,
bytes_approaching with the appropriate lambda function.
Motivated by fixing the path traversal and wanting to
only fix it in one place.
Signed-off-by: John Spray <john.spray@redhat.com>
Kefu Chai [Fri, 25 Sep 2015 11:16:08 +0000 (19:16 +0800)]
Merge pull request #6027 from wido/mirror-docs
docs: Update docs to make it clear that there are mirrors worldwide
Reviewed-by: Kefu Chai <kchai@redhat.com>
Ruifeng Yang [Fri, 25 Sep 2015 04:42:28 +0000 (12:42 +0800)]
Objecter: repeated free op->ontimeout.
repeated free op->ontimeout in SafeTimer::timer_thread::callback->complete
Fixes: #13208
Signed-off-by: Ruifeng Yang <yangruifeng.09209@h3c.com>
Ruifeng Yang [Fri, 25 Sep 2015 02:18:11 +0000 (10:18 +0800)]
Objecter: maybe access wild pointer(op) in _op_submit_with_budget.
look at "after giving up session lock it can be freed at any time by response handler" in _op_submit,
so the _op_submit_with_budget::op maybe is wild after call _op_submit.
Fixes: #13208
Signed-off-by: Ruifeng Yang <yangruifeng.09209@h3c.com>
Sage Weil [Thu, 24 Sep 2015 23:27:16 +0000 (19:27 -0400)]
osd/ReplicatedPG: fix ENOSPC checking
1. We need to return ENOSPC *before* we apply our side-effects to the obc
cache in finish_ctx().
2. Consider object count changes too, not just bytes.
3. Consider cluster full flag, not just the pool flag.
4. Reply only if FULL_TRY; silently drop ops that were sent despite the
full flag.
Fixes: #13098
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 23 Sep 2015 14:19:46 +0000 (10:19 -0400)]
osd/osd_types: remove [pool_]last_epoch_marked_full from OSDSuperblock
This is no longer used or needed.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 23 Sep 2015 14:26:25 +0000 (10:26 -0400)]
osd: remove buggy [pool_]last_map_marked_full tracking
This is buggy (we reset the pool epoch each time it remains full instead
of only on the initial transition from non-full to full) and now unused.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Wed, 23 Sep 2015 14:25:30 +0000 (10:25 -0400)]
osd: do full check in do_op
1. The current pool_last_map_marked_full tracking is buggy.
2. We need to recheck this each time we consider the op, not just when it
is received off the wire. Otherwise, we might get a message, queue it
for some reason, get a map indicating the cluster or pool is full, and
then requeue and process the op instead of discarding it.
3. For now, silently drop ops when failsafe check fails. This will lead to
stalled client IO. This needs a more robust fix.
Signed-off-by: Sage Weil <sage@redhat.com>