client: choose hash function according to dir layout

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Merge pull request #1326 from ceph/wip-7542

Wip 7542

Reviewed-by: Greg Farnum <greg@inktank.com>
client: update dirfragtree/fragmap according to mds request reply

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
client: fix Client::trim_caps()

allow trimming non-auth caps if the issued auth caps include all
caps client wants/uses.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Use pgrep radosgw to determine if rados gateway is running.
Fixes: 7528
Signed-off-by: Warren Usui <warren.usui@inktank.com>
Merge pull request #1333 from ceph/wip-s3radoscheck-wusui

Use pgrep radosgw to determine if rados gateway is running.

Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
OSDMonitor: enable getting hit set parameters
We would like to get the hit set parameters: hit_set_type |
hit_set_period | hit_set_count | hit_set_fpp via OSDMonitor

Signed-off-by: Kai Zhang <zakir.exe@gmail.com>
Merge pull request #1334 from kazhang/wip-get-hit_set-parameter

OSDMonitor: enable getting hit set parameters

Reviewed-by: Sage Weil <sage@inktank.com>
mds: use "lookup-by-ino" helper to handle LOOKUPPARENT request

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
ReplicatedBackend: check result of dynamic_cast to fix null pointer deref

CID 1188135 (#1 of 1): Unchecked dynamic_cast (FORWARD_NULL)
 var_deref_model: Passing null pointer "t" to function
 "RPGTransaction::get_transaction()", which dereferences it

CID 1188134 (#1 of 1): Unchecked dynamic_cast (FORWARD_NULL)
 var_deref_op: Dereferencing null pointer "to_append".

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
c_write_operations.cc: fix some ioctx resource leaks

CID 1160833 (#3 of 3): Resource leak (RESOURCE_LEAK)
 leaked_storage: Variable "ioctx" going out of scope leaks the storage
 it points to

CID 1160835 (#3 of 3): Resource leak (RESOURCE_LEAK)
 leaked_storage: Variable "ioctx" going out of scope leaks the storage
 it points to.

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

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
c_read_operations.cc: fix resource leak

CID 1188154 (#2 of 2): Resource leak (RESOURCE_LEAK)
 overwrite_var: Overwriting "op" in "op = rados_create_read_op()" leaks
 the storage that "op" points to.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
FileStore: fix resource leak in queue_transactions() blackhole case

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

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

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

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
MDCache::handle_discover: fix null pointer deref

CID 716990 (#1 of 1): Dereference null return value (NULL_RETURNS)
 dereference: Dereferencing a pointer that might be null "cur" when calling
 "MDCache::replicate_inode(CInode *, int, ceph::bufferlist &)"

Add assert to check for return value from get_inode() as done in other places.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
MDCache: fix potential null pointer deref

CID 716921 (#1 of 1): Dereference after null check (FORWARD_NULL)
 var_deref_model: Passing null pointer "dir" to function
 "operator <<(std::ostream &, CDir &)", which dereferences it.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
PGMonitor: fix uninitialized scalar variable

Fix type handling in dump_stuck_pg_stats. If type is type doesn't
match to known PGMap::STUCK_* type print out a message and return
directly from function.

CID 1030132 (#2 of 2): Uninitialized scalar variable (UNINIT)
 uninit_use_in_call: Using uninitialized value "stuck_type" when calling
 "PGMap::dump_stuck(ceph::Formatter *, PGMap::StuckPG, utime_t) const"

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Objecter::recalc_op_target: fix uninitialized scalar variable

CID 1160848 (#1 of 1): Uninitialized scalar variable (UNINIT)
 uninit_use: Using uninitialized value "best".

Init 'best' with -1 (from the code logic it will be set at least to 0)
to silence coverity.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
req_state: fix uninitialized bool var

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

Set bucket_exists to false in req_state::req_state().

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mon: fix 'pg dump' JSON output

This was broken by 40bdcb88.  The 'acting' array had
the up_primary and acting_primary appended.

Fixes: #7572

Signed-off-by: John Spray <john.spray@inktank.com>
Merge pull request #1339 from ceph/wip-7572

mon: fix 'pg dump' JSON output

Reviewed-by: Loic Dachary <loic@dachary.org>