]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
12 years agoobjclass/class_debug.cc: reduce scope of 'n' in cls_log() 290/head
Danny Al-Gaaf [Wed, 15 May 2013 13:38:43 +0000 (15:38 +0200)]
objclass/class_debug.cc: reduce scope of 'n' in cls_log()

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotools/ceph-filestore-dump.cc: reduce scope of 'r' in export_files()
Danny Al-Gaaf [Wed, 15 May 2013 13:01:24 +0000 (15:01 +0200)]
tools/ceph-filestore-dump.cc: reduce scope of 'r' in export_files()

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotest/system/systest_runnable.cc: reduce scope of 'ret' in join()
Danny Al-Gaaf [Wed, 15 May 2013 13:00:53 +0000 (15:00 +0200)]
test/system/systest_runnable.cc: reduce scope of 'ret' in join()

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotest/system/st_rados_list_objects.cc: reduce scope of 'ret' in run()
Danny Al-Gaaf [Wed, 15 May 2013 13:00:19 +0000 (15:00 +0200)]
test/system/st_rados_list_objects.cc: reduce scope of 'ret' in run()

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotest/system/st_rados_create_pool.cc_ reduce scope of 'ret' in run()
Danny Al-Gaaf [Wed, 15 May 2013 12:59:34 +0000 (14:59 +0200)]
test/system/st_rados_create_pool.cc_ reduce scope of 'ret' in run()

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotest/system/rados_list_parallel.cc: reduce scope of 'ret'
Danny Al-Gaaf [Wed, 15 May 2013 12:59:11 +0000 (14:59 +0200)]
test/system/rados_list_parallel.cc: reduce scope of 'ret'

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotest/librbd/test_librbd.cc: reduce scope of several variables
Danny Al-Gaaf [Wed, 15 May 2013 12:58:46 +0000 (14:58 +0200)]
test/librbd/test_librbd.cc: reduce scope of several variables

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agorgw/rgw_tools.cc: reduce scope of 'ret' in rgw_get_obj()
Danny Al-Gaaf [Wed, 15 May 2013 12:57:10 +0000 (14:57 +0200)]
rgw/rgw_tools.cc: reduce scope of 'ret' in rgw_get_obj()

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agorgw/rgw_common.cc: reduce scope of 'end' in two cases
Danny Al-Gaaf [Wed, 15 May 2013 12:56:27 +0000 (14:56 +0200)]
rgw/rgw_common.cc: reduce scope of 'end' in two cases

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agorgw/rgw_bucket.cc: reduce scope of 'max' in rgw_remove_bucket()
Danny Al-Gaaf [Wed, 15 May 2013 12:21:34 +0000 (14:21 +0200)]
rgw/rgw_bucket.cc: reduce scope of 'max' in rgw_remove_bucket()

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agorgw/rgw_admin.cc: reduce scope of 'ret'
Danny Al-Gaaf [Wed, 15 May 2013 12:20:58 +0000 (14:20 +0200)]
rgw/rgw_admin.cc: reduce scope of 'ret'

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agorgw/rgw_acl_s3.cc: remove local variable 'ret' from create_from_headers()
Danny Al-Gaaf [Wed, 15 May 2013 12:16:51 +0000 (14:16 +0200)]
rgw/rgw_acl_s3.cc: remove local variable 'ret' from create_from_headers()

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agorbd_fuse/rbd-fuse.c: reduce scope of some variables in open_rbd_image()
Danny Al-Gaaf [Wed, 15 May 2013 12:15:23 +0000 (14:15 +0200)]
rbd_fuse/rbd-fuse.c: reduce scope of some variables in open_rbd_image()

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoosdc/Objecter.cc: reduce scope of skipped_map
Danny Al-Gaaf [Wed, 15 May 2013 12:07:52 +0000 (14:07 +0200)]
osdc/Objecter.cc: reduce scope of skipped_map

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoos/chain_xattr.cc: reduce scope of local variable
Danny Al-Gaaf [Wed, 15 May 2013 12:06:42 +0000 (14:06 +0200)]
os/chain_xattr.cc: reduce scope of local variable

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agosrc/os/LFNIndex.cc: reduce scope of suffix_len
Danny Al-Gaaf [Wed, 15 May 2013 12:06:16 +0000 (14:06 +0200)]
src/os/LFNIndex.cc: reduce scope of suffix_len

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoos/HashIndex.cc: reduce scope of a local variable
Danny Al-Gaaf [Wed, 15 May 2013 12:05:40 +0000 (14:05 +0200)]
os/HashIndex.cc: reduce scope of a local variable

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoos/FileStore.cc: reduce scope of a local variable
Danny Al-Gaaf [Wed, 15 May 2013 12:05:10 +0000 (14:05 +0200)]
os/FileStore.cc: reduce scope of a local variable

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agosrc/os/FlatIndex.cc: reduce scope of suffix_len
Danny Al-Gaaf [Tue, 14 May 2013 18:13:54 +0000 (20:13 +0200)]
src/os/FlatIndex.cc: reduce scope of suffix_len

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agosrc/os/DBObjectMap.cc: reduce scope of some variables
Danny Al-Gaaf [Tue, 14 May 2013 18:12:31 +0000 (20:12 +0200)]
src/os/DBObjectMap.cc: reduce scope of some variables

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agomount/mount.ceph.c: reduce scope of 'skip' in parse_options()
Danny Al-Gaaf [Tue, 14 May 2013 18:07:04 +0000 (20:07 +0200)]
mount/mount.ceph.c: reduce scope of 'skip' in parse_options()

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agosrc/mds/flock.cc: reduce scope of old_lock_to_end in two cases
Danny Al-Gaaf [Tue, 14 May 2013 18:04:22 +0000 (20:04 +0200)]
src/mds/flock.cc: reduce scope of old_lock_to_end in two cases

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agomds/Locker.cc: reduce scope of forced_change_max
Danny Al-Gaaf [Tue, 14 May 2013 18:02:06 +0000 (20:02 +0200)]
mds/Locker.cc: reduce scope of forced_change_max

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agosrc/crush/mapper.c: reduce scope of some local variables
Danny Al-Gaaf [Thu, 16 May 2013 12:15:13 +0000 (14:15 +0200)]
src/crush/mapper.c: reduce scope of some local variables

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoauth/Crypto.cc: reduce scope of local variable in_buf
Danny Al-Gaaf [Tue, 14 May 2013 17:54:21 +0000 (19:54 +0200)]
auth/Crypto.cc: reduce scope of local variable in_buf

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agorgw/rgw_rados.cc: remove not needed code
Danny Al-Gaaf [Mon, 13 May 2013 17:50:43 +0000 (19:50 +0200)]
rgw/rgw_rados.cc: remove not needed code

Fix for cppcheck warning:
[src/rgw/rgw_rados.cc:2390]: (warning) Assignment of function
  parameter has no effect outside the function.

Assignment of if_nomatch_str.c_str() to if_nomatch has no
effect outside the function and the functions isn't used
inside the function after the assignment.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agorgw/rgw_gc.cc: fix possible NULL pointer dereference
Danny Al-Gaaf [Thu, 16 May 2013 12:10:42 +0000 (14:10 +0200)]
rgw/rgw_gc.cc: fix possible NULL pointer dereference

Fix/silence cppcheck warning:
[src/rgw/rgw_gc.cc:185] -> [src/rgw/rgw_gc.cc:181]: (error) Possible
  null pointer dereference: ctx - otherwise it is redundant to check
  it against null.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoosd/OSD.cc: remove unused variable
Danny Al-Gaaf [Sat, 11 May 2013 19:54:54 +0000 (21:54 +0200)]
osd/OSD.cc: remove unused variable

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoMerge pull request #279 from ceph/wip-libcephfs-env
Sage Weil [Wed, 15 May 2013 00:06:53 +0000 (17:06 -0700)]
Merge pull request #279 from ceph/wip-libcephfs-env

Reviewed-by: Greg Farnum <greg@inktank.com>
12 years agoAdded OSD to glossary, removed parenthetical.
John Wilkins [Wed, 15 May 2013 00:06:12 +0000 (17:06 -0700)]
Added OSD to glossary, removed parenthetical.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Updated architecture document.
John Wilkins [Wed, 15 May 2013 00:05:43 +0000 (17:05 -0700)]
doc: Updated architecture document.

fixes: #2968

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoMerge branch 'wip-5049'
David Zafman [Tue, 14 May 2013 23:38:50 +0000 (16:38 -0700)]
Merge branch 'wip-5049'

Reviewed-by: Sam Just <sam.just@inktank.com>
12 years agoOSD: scrub interval checking
David Zafman [Tue, 14 May 2013 07:57:05 +0000 (00:57 -0700)]
OSD: scrub interval checking

Do arithmetic so large intervals don't wrap
Fix log messages to reflect the change and improve output
Add message when skipping scrub due to load

fixes: #5049

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agoOSD: Don't scrub newly created PGs until min interval
David Zafman [Tue, 14 May 2013 06:26:54 +0000 (23:26 -0700)]
OSD: Don't scrub newly created PGs until min interval

Set initial values for last_scrub_stamp, last_deep_scrub_stamp

fixes: #5050, #5051

Signed-off-by: David Zafman <david.zafman@inktank.com>
12 years agodoc/release-notes: v0.62
Sage Weil [Tue, 14 May 2013 23:02:20 +0000 (16:02 -0700)]
doc/release-notes: v0.62

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge branch 'next'
Gary Lowell [Tue, 14 May 2013 22:38:24 +0000 (15:38 -0700)]
Merge branch 'next'

12 years agoMerge pull request #283 from dachary/wip-5058
athanatos [Tue, 14 May 2013 22:28:45 +0000 (15:28 -0700)]
Merge pull request #283 from dachary/wip-5058

internal documentation proofreading

Reviewed-by: Sam Just <sam.just@inktank.com>
12 years agodoc/rados/configuration: fix [mon] osd min down report* config docs
Sage Weil [Tue, 14 May 2013 21:02:27 +0000 (14:02 -0700)]
doc/rados/configuration: fix [mon] osd min down report* config docs

Fix other osd -> mon section name, and note the old config value name prior
to v0.62.

Fixes: #5044.
Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoreflect recent changes in the pg deletion logic 283/head
Loic Dachary [Tue, 14 May 2013 13:29:03 +0000 (15:29 +0200)]
reflect recent changes in the pg deletion logic

No need to wait on DeletingStateRef for flush https://github.com/ceph/ceph/commit/d3dd99b725afaa026fe6f700ddc14a7f657f2170
Fix typos

http://tracker.ceph.com/issues/5058 refs #5058

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agofix typos and add hyperlink to peering
Loic Dachary [Tue, 14 May 2013 10:06:21 +0000 (12:06 +0200)]
fix typos and add hyperlink to peering

s/;/:/
s/up_acting_affected/acting_up_affected/
Add relative link to ../../peering

http://tracker.ceph.com/issues/5058 refs #5058

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agotypo s/come/some/
Loic Dachary [Tue, 14 May 2013 09:15:11 +0000 (11:15 +0200)]
typo s/come/some/

http://tracker.ceph.com/issues/5058 refs #5058

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agoupdate op added to a waiting queue or discarded
Loic Dachary [Tue, 14 May 2013 08:52:40 +0000 (10:52 +0200)]
update op added to a waiting queue or discarded

The decision to discard an op happens either in OSD or in PG.
The operation queue goes to a single OpWQ object if waiting_map does not impose a delay op_queue.
The decision to add an op to a waiting queue regardless of its type is updated.
The decision to add a CEPH_MSG_OSD_OP to a waiting queue is described in full.

http://tracker.ceph.com/issues/5058 refs #5058

Signed-off-by: Loic Dachary <loic@dachary.org>
12 years agomd/Sever.cc: fix straydn assert
Sage Weil [Tue, 14 May 2013 17:31:27 +0000 (10:31 -0700)]
md/Sever.cc: fix straydn assert

From fb222a0a1c98a4141b6d0e79eac7a41c208f7147, we only know straydn is
non-null if oldin is non-null.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #285 from dalgaaf/wip-da-CID-fixes-2-v3
Sage Weil [Tue, 14 May 2013 17:30:20 +0000 (10:30 -0700)]
Merge pull request #285 from dalgaaf/wip-da-CID-fixes-2-v3

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agorgw/rgw_user.cc: fix possible NULL pointer dereference 285/head
Danny Al-Gaaf [Tue, 14 May 2013 17:20:29 +0000 (19:20 +0200)]
rgw/rgw_user.cc: fix possible NULL pointer dereference

CID 1019559 (#1 of 1): Dereference after null check (FORWARD_NULL)
  var_deref_model: Passing null pointer "usr" to function
  "RGWUser::get_store()", which dereferences it.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agomds/Server.cc: fix possible NULL pointer dereference
Danny Al-Gaaf [Tue, 14 May 2013 17:15:23 +0000 (19:15 +0200)]
mds/Server.cc: fix possible NULL pointer dereference

Assert if straydn is NULL.

CID 1019554 (#2 of 2): Dereference after null check (FORWARD_NULL)
  var_deref_model: Passing null pointer "straydn" to function
  "MDSCacheObject::is_auth() const", which dereferences it.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agomds/Server.cc: fix possible NULL pointer dereference
Danny Al-Gaaf [Tue, 14 May 2013 17:07:29 +0000 (19:07 +0200)]
mds/Server.cc: fix possible NULL pointer dereference

Assert of straydn is NULL here.

CID 1019558 (#1 of 1): Dereference after null check (FORWARD_NULL)
  var_deref_model: Passing null pointer "straydn" to function
  "CDentry::get_dir() const", which dereferences it.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agomds/Server.cc: fix possible NULL pointer dereference
Danny Al-Gaaf [Tue, 14 May 2013 17:02:20 +0000 (19:02 +0200)]
mds/Server.cc: fix possible NULL pointer dereference

Assert if destdn == NULL.

CID 1019557 (#1 of 1): Dereference after null check (FORWARD_NULL)
  var_deref_model: Passing null pointer "destdn" to function
  "CDentry::get_dir() const", which dereferences it.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agolibrados/AioCompletionImpl.h: add missing Lock
Danny Al-Gaaf [Tue, 14 May 2013 16:50:09 +0000 (18:50 +0200)]
librados/AioCompletionImpl.h: add missing Lock

Add missing Lock around code changing AioCompletionImpl::rval/ack and safe
in C_AioCompleteAndSafe::finish().

CID 1019565 (#1 of 1): Data race condition (MISSING_LOCK)
  missing_lock: Accessing "this->c->rval" ("_ZN8librados17AioCompletionImplE.rval")
  requires the "Mutex._m" lock.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agosrc/dupstore.cc: check return value of list_collections()
Danny Al-Gaaf [Tue, 14 May 2013 15:02:56 +0000 (17:02 +0200)]
src/dupstore.cc: check return value of list_collections()

CID 1019545 (#1 of 1): Unchecked return value (CHECKED_RETURN)
  check_return: Calling function "ObjectStore::list_collections
  (std::vector<coll_t, std::allocator<coll_t> > &)" without
  checking return value (as is done elsewhere 5 out of 6 times).

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agomds/Server.cc: fix possible NULL pointer dereference
Danny Al-Gaaf [Tue, 14 May 2013 14:50:57 +0000 (16:50 +0200)]
mds/Server.cc: fix possible NULL pointer dereference

CID 1019555 (#1 of 1): Dereference after null check (FORWARD_NULL)
  var_deref_model: Passing null pointer "in" to function
  "Server::_need_force_journal(CInode *, bool)", which dereferences it.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agosrc/rbd.cc: use 64-bits to shift 'order'
Danny Al-Gaaf [Mon, 13 May 2013 14:19:46 +0000 (16:19 +0200)]
src/rbd.cc: use 64-bits to shift 'order'

CID 1019568 (#1 of 1): Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN)
  overflow_before_widen: Potentially overflowing expression "1 << *order" with
  type "int" (32 bits, signed) is evaluated using 32-bit arithmetic before being
  used in a context which expects an expression of type "uint64_t" (64 bits,
  unsigned). To avoid overflow, cast the left operand to "uint64_t" before
  performing the left shift.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agomon/Monitor.cc: init 'timecheck_acks' with '0' in constructor
Danny Al-Gaaf [Mon, 13 May 2013 14:02:04 +0000 (16:02 +0200)]
mon/Monitor.cc: init 'timecheck_acks' with '0' in constructor

CID 1019623 (#1 of 1): Uninitialized scalar field (UNINIT_CTOR)
  uninit_member: Non-static class member "timecheck_acks" is not
  initialized in this constructor nor in any functions that it calls.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agomon/Monitor.h: init 'crc' in constructor with '0'
Danny Al-Gaaf [Mon, 13 May 2013 13:37:24 +0000 (15:37 +0200)]
mon/Monitor.h: init 'crc' in constructor with '0'

CID 1019624 (#1 of 1): Uninitialized scalar field (UNINIT_CTOR)
  uninit_member: Non-static class member "crc" is not initialized
  in this constructor nor in any functions that it calls.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agomon/QuorumService.h: remove unused QuorumService::flags
Danny Al-Gaaf [Mon, 13 May 2013 12:52:38 +0000 (14:52 +0200)]
mon/QuorumService.h: remove unused QuorumService::flags

CID 1019626 (#1 of 1): Uninitialized scalar field (UNINIT_CTOR)
  uninit_member: Non-static class member "flags" is not initialized
  in this constructor nor in any functions that it calls.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotest/test_cors.cc: initialize key_type in constructor
Danny Al-Gaaf [Mon, 13 May 2013 12:36:53 +0000 (14:36 +0200)]
test/test_cors.cc: initialize key_type in constructor

CID 1019635 (#1 of 1): Uninitialized pointer field (UNINIT_CTOR)
  uninit_member: Non-static class member "kt" is not initialized in
  this constructor nor in any functions that it calls.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotools/ceph.cc: cleanup memory allocated for 'buf'
Danny Al-Gaaf [Mon, 13 May 2013 12:15:04 +0000 (14:15 +0200)]
tools/ceph.cc: cleanup memory allocated for 'buf'

CID 717123 (#1-2 of 2): Resource leak (RESOURCE_LEAK)
  leaked_storage: Variable "buf" going out of scope leaks the storage
  it points to.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotools/ceph.cc: close file descriptor in error case
Danny Al-Gaaf [Mon, 13 May 2013 12:04:08 +0000 (14:04 +0200)]
tools/ceph.cc: close file descriptor in error case

CID 717122 (#1 of 1): Resource leak (RESOURCE_LEAK)
  leaked_handle: Handle variable "fd" going out of scope leaks
  the handle.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotools/ceph.cc: close file descriptor in error case
Danny Al-Gaaf [Mon, 13 May 2013 11:59:59 +0000 (13:59 +0200)]
tools/ceph.cc: close file descriptor in error case

CID 717121 (#1 of 1): Resource leak (RESOURCE_LEAK)
  leaked_handle: Handle variable "fd" going out of scope leaks the handle.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotest_filejournal.cc: cleanup memory in destructor
Danny Al-Gaaf [Mon, 13 May 2013 11:52:32 +0000 (13:52 +0200)]
test_filejournal.cc: cleanup memory in destructor

CID 716885 (#1 of 1): Resource leak in object (CTOR_DTOR_LEAK)
  alloc_new: Allocating memory by calling "new C_SafeCond(&this->lock,
    &this->cond, &this->done, NULL)".
  ctor_dtor_leak: The constructor allocates field "c" of "C_Sync" but
    the destructor and whatever functions it calls do not free it.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agolibrbd/test_librbd.cc: free memory in test_list_children()
Danny Al-Gaaf [Mon, 13 May 2013 11:40:03 +0000 (13:40 +0200)]
librbd/test_librbd.cc: free memory in test_list_children()

CID 719581 (#7 of 7): Resource leak (RESOURCE_LEAK)
CID 719581 (#6 of 7): Resource leak (RESOURCE_LEAK)
  leaked_storage: Variable "pools" going out of scope leaks the
  storage it points to.
CID 719582 (#6-7 of 7): Resource leak (RESOURCE_LEAK)
  leaked_storage: Variable "children" going out of scope leaks
  the storage it points to.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoscratchtool.c: cleanup rados_t on error
Danny Al-Gaaf [Mon, 13 May 2013 11:17:14 +0000 (13:17 +0200)]
scratchtool.c: cleanup rados_t on error

Make sure rados_shutdown() get called also in error case.

CID 717106 (#1 of 1): Resource leak (RESOURCE_LEAK)
  leaked_storage: Variable "cl" going out of scope leaks the
  storage it points to.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agotest/kv_store_bench.cc: fix resource leak
Danny Al-Gaaf [Mon, 13 May 2013 11:03:18 +0000 (13:03 +0200)]
test/kv_store_bench.cc: fix resource leak

CID 727984 (#5 of 5): Resource leak (RESOURCE_LEAK)
  leaked_storage: Variable "cb_args" going out of scope leaks the storage
  it points to.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agofilestore/test_idempotent_sequence.cc: fix FileStore leaks
Danny Al-Gaaf [Mon, 13 May 2013 10:45:03 +0000 (12:45 +0200)]
filestore/test_idempotent_sequence.cc: fix FileStore leaks

CID 717107 (#1 of 1): Resource leak (RESOURCE_LEAK)
  leaked_storage: Variable "store" going out of scope leaks the
  storage it points to.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoceph-filestore-dump.cc: cleanup on error case
Danny Al-Gaaf [Mon, 13 May 2013 09:50:37 +0000 (11:50 +0200)]
ceph-filestore-dump.cc: cleanup on error case

CID 1019589 (#1 of 1): Resource leak (RESOURCE_LEAK)
  leaked_storage: Variable "t" going out of scope leaks the
  storage it points to.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoceph-filestore-dump.cc: cleanup resource in error case
Danny Al-Gaaf [Mon, 13 May 2013 09:42:23 +0000 (11:42 +0200)]
ceph-filestore-dump.cc: cleanup resource in error case

CID 1019590 (#1 of 1): Resource leak (RESOURCE_LEAK):
 leaked_storage: Variable "rmt" going out of scope leaks the
 storage it points to.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agov0.62 v0.62
Gary Lowell [Tue, 14 May 2013 16:13:07 +0000 (09:13 -0700)]
v0.62

12 years agodoc/release-notes: v0.61.2
Sage Weil [Tue, 14 May 2013 03:48:20 +0000 (20:48 -0700)]
doc/release-notes: v0.61.2

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Tue, 14 May 2013 00:17:43 +0000 (17:17 -0700)]
Merge remote-tracking branch 'gh/next'

12 years agoMerge pull request #281 from ceph/wip-rbd-rm-enoent
Sage Weil [Mon, 13 May 2013 23:07:55 +0000 (16:07 -0700)]
Merge pull request #281 from ceph/wip-rbd-rm-enoent

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoceph_test_libcephfs: parse environment 279/head
Sage Weil [Mon, 13 May 2013 23:06:33 +0000 (16:06 -0700)]
ceph_test_libcephfs: parse environment

Lets you use CEPH_ARGS to get output from the tester.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoPG: fix some brace styling
Samuel Just [Mon, 13 May 2013 22:44:17 +0000 (15:44 -0700)]
PG: fix some brace styling

Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: David Zafman <david.zafman@inktank.com>
12 years agoPG: subset_last_update must be at least log.tail
Samuel Just [Mon, 13 May 2013 21:23:00 +0000 (14:23 -0700)]
PG: subset_last_update must be at least log.tail

Fixes: 5020
Backport: bobtail, cuttlefish
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: David Zafman <david.zafman@inktank.com>
12 years agoSimpleThrottle: fix -ENOENT checking 281/head
Josh Durgin [Mon, 13 May 2013 21:49:42 +0000 (14:49 -0700)]
SimpleThrottle: fix -ENOENT checking

The condition was reversed. Rewrite it so it's clear that we're
ignoring -ENOENT only when m_ignore_enoent is set.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoReplace mis-named mon config variables using mon_osd_min_down_reports/mon_osd_min_dow...
David Zafman [Mon, 13 May 2013 19:53:11 +0000 (12:53 -0700)]
Replace mis-named mon config variables using mon_osd_min_down_reports/mon_osd_min_down_reporters

Signed-off-by: David Zafman <david.zafman@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #280 from ceph/wip-4996
Sage Weil [Mon, 13 May 2013 19:31:31 +0000 (12:31 -0700)]
Merge pull request #280 from ceph/wip-4996

Reviewed-by: Joao Luis <joao.luis@inktank.com>
12 years agomon: fix validatation of mds ids in mon commands 280/head
Sage Weil [Sat, 11 May 2013 05:14:05 +0000 (22:14 -0700)]
mon: fix validatation of mds ids in mon commands

Fixes: #4996
Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #278 from ceph/wip-4974
Sage Weil [Mon, 13 May 2013 18:39:36 +0000 (11:39 -0700)]
Merge pull request #278 from ceph/wip-4974

Reviewed-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agomon: Monitor: tolerate GV duplicates during conversion 278/head
Joao Eduardo Luis [Mon, 13 May 2013 14:36:59 +0000 (15:36 +0100)]
mon: Monitor: tolerate GV duplicates during conversion

Fixes: #4974
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
12 years agolibcephfs: add ceph_conf_parse_env()
Sage Weil [Mon, 13 May 2013 17:02:05 +0000 (10:02 -0700)]
libcephfs: add ceph_conf_parse_env()

This exists in the librados API.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoceph_test_libcephfs: fix xattr test
Sage Weil [Mon, 13 May 2013 17:12:44 +0000 (10:12 -0700)]
ceph_test_libcephfs: fix xattr test

This broke in 0c70e44630734760fd36e0c770a33fb0e74b42a4.

Fixes: #5030
Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoOSD: We need to wait on CLEARING_DIR, not DELETED_DIR
Samuel Just [Mon, 13 May 2013 16:50:14 +0000 (09:50 -0700)]
OSD: We need to wait on CLEARING_DIR, not DELETED_DIR

Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge pull request #274 from dalgaaf/wip-da-fix-osd_h
athanatos [Mon, 13 May 2013 16:42:26 +0000 (09:42 -0700)]
Merge pull request #274 from dalgaaf/wip-da-fix-osd_h

osd/OSD.h: fix try_stop_deletion

Reviewed-by: Sam Just <sam.just@inktank.com>
12 years agoMerge pull request #275 from ceph/wip-rbd-read-from-replica
Josh Durgin [Mon, 13 May 2013 06:01:14 +0000 (23:01 -0700)]
Merge pull request #275 from ceph/wip-rbd-read-from-replica

Reviewed-by: Sage Weil <sage.weil@inktank.com>
12 years agolibrbd: add options to enable balanced or localized reads for snapshots 275/head
Josh Durgin [Sun, 12 May 2013 21:53:26 +0000 (14:53 -0700)]
librbd: add options to enable balanced or localized reads for snapshots

Since snapshots never change, it's safe to read from replicas for them.
A common use for this would be reading from a parent snapshot shared by
many clones.

Convert LibrbdWriteback and AioRead to use the ObjectOperation api
so we can set flags. Fortunately the external wrapper holds no data,
so its lifecycle doesn't need to be managed.

Include a simple workunit that sets the flags in various combinations
and looks for their presence in the logs from 'rbd export'.

Fixes: #3064
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoReplicatedPG: send -EAGAIN for both balanced and localized reads
Josh Durgin [Sun, 12 May 2013 21:47:20 +0000 (14:47 -0700)]
ReplicatedPG: send -EAGAIN for both balanced and localized reads

This logic for localized reads applies to balanced reads too.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agolibrados: add per-ObjectOperation flags for balanced and localized reads
Josh Durgin [Sun, 12 May 2013 21:45:36 +0000 (14:45 -0700)]
librados: add per-ObjectOperation flags for balanced and localized reads

These need to apply to the entire ObjectOperation, not just a subop,
so use a new enum and a new aio_operate() call that takes them.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agolibrados: add sparse_read() to the C++ bindings for an ObjectOperation
Josh Durgin [Sun, 12 May 2013 21:43:13 +0000 (14:43 -0700)]
librados: add sparse_read() to the C++ bindings for an ObjectOperation

This will allow it to be used with general aio_operate() so we don't have
to add new versions of each operation when we want to add new per-op
arguments, like flags, namespaces, or explicit snapshot contexts/ids.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoObjecter, librados: use only ObjectOperation form of sparse_read internally
Josh Durgin [Sun, 12 May 2013 21:39:58 +0000 (14:39 -0700)]
Objecter, librados: use only ObjectOperation form of sparse_read internally

This will be used when exposing an ObjectOperation version of sparse_read()
to the librados user, and there's no reason to duplicate code for creating
and handling it. Add a wrapper Context for handling the lifecycle of the
::ObjectOperation.

This cleans up the synchronous version of sparse_read quite a bit by
using the general operate_read() instead of duplicating decoding and
a bunch of sync boilerplate.

Move handling the decoding of a sparse_read into the Objecter, with
the rest of the decoding of rados operations. librados shouldn't be
the only user of the Objecter that can understand sparse_reads.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoObjecter: fix error handling for decoding stat
Josh Durgin [Sun, 12 May 2013 21:29:28 +0000 (14:29 -0700)]
Objecter: fix error handling for decoding stat

r is just a local variable, changing it has no effect.
Set the per-operation return value if provided when a decoding
error occurs.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoqa: rsync test: exclude /usr/local
Sage Weil [Sun, 12 May 2013 00:36:13 +0000 (17:36 -0700)]
qa: rsync test: exclude /usr/local

Some plana have non-world-readable crap in /usr/local/samba.  Avoid
/usr/local entirely for that and any similar landmines.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoosd/OSD.h: fix try_stop_deletion 274/head
Danny Al-Gaaf [Sat, 11 May 2013 17:51:02 +0000 (19:51 +0200)]
osd/OSD.h: fix try_stop_deletion

Fix try_stop_deletion(): The comment above the while loop says "If we are
in DELETING_DIR or DELETED_DIR", but the while loop checks for DELETING_DIR
twice. Change one check to DELETED_DIR otherwise on state get missed.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
12 years agoMerge pull request #272 from ceph/wip-rbd-parallel
Sage Weil [Sat, 11 May 2013 00:13:12 +0000 (17:13 -0700)]
Merge pull request #272 from ceph/wip-rbd-parallel

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agoMerge branch 'wip-4273'
David Zafman [Fri, 10 May 2013 23:44:19 +0000 (16:44 -0700)]
Merge branch 'wip-4273'

Reviewed-by: Sam Just <sam.just@inktank.com>
12 years agoThrottle: move start_op() to C_SimpleThrottle constructor 272/head
Josh Durgin [Fri, 10 May 2013 22:59:10 +0000 (15:59 -0700)]
Throttle: move start_op() to C_SimpleThrottle constructor

This is done by all callers right before constructing this.
Since C_SimpleThrottle is already responsible for calling ->end_op(),
it makes sense to call start_op() there too.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agolibrbd: run copy in parallel
Josh Durgin [Fri, 10 May 2013 22:54:51 +0000 (15:54 -0700)]
librbd: run copy in parallel

Instead of using read_iterate(), loop over each period of objects in
the source, read from them asynchronously, and then asynchronously
write to the destination.

The callbacks make this a bit more complex, but it can perform much
better.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agolibrbd: move completion release into rbd_ctx_cb()
Josh Durgin [Fri, 10 May 2013 22:45:57 +0000 (15:45 -0700)]
librbd: move completion release into rbd_ctx_cb()

All the users of rbd_ctx_cb() do this separately right now, but
there's no reason to keep the completion around after the nested
completion has been called. Also declare rbd_ctx_cb() in the header
so it can be used before its definition.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agolibrbd: parallelize and simplify flatten
Josh Durgin [Fri, 10 May 2013 00:12:33 +0000 (17:12 -0700)]
librbd: parallelize and simplify flatten

Flattening reads the logical child object from the parent image, and
then does a copyup operation if the data is non-zero. This is
equivalent to doing a zero-length write to each object in the
child image. Do this instead, so that we can easily control how
many are in flight, and eliminate some code as well.

Since we no longer read from the parent within the flatten function,
the buffer is not needed. It would be leaked in some error conditions,
but since's it's unecessary we can just get rid of it.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agolibrbd: only send non-zero copyup data
Josh Durgin [Fri, 10 May 2013 00:05:20 +0000 (17:05 -0700)]
librbd: only send non-zero copyup data

If the parent image is logically zero for the range of a child object,
it's equivalent to the object not existing. Save some I/O and network
bandwidth and don't send the useless zeroes.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agolibrbd: parallelize rollback
Josh Durgin [Thu, 9 May 2013 22:39:16 +0000 (15:39 -0700)]
librbd: parallelize rollback

Use a SimpleThrottle like trim_image() to limit the number of
requests in flight.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>