librbd: simplify math

Bending over backwards hasn't made coverity happy.  We'll just ignore it
there.

Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit c517fde2691f974693ce581f8e215512194e79d3)
MOSDBoot: fix compatibility with ~argonaut

I revved this message and forgot to set the compat version correctly,
preventing post-change (e.g., bobtail) OSDs from talking to pre-change
(e.g., argonaut) monitors.  This was in b64641c.

Signed-off-by: Sage Weil <sage@inktank.com>
cls_rgw: init var in ctor

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

Signed-off-by: Sage Weil <sage@inktank.com>
Makefile:  Updates to eliminates warnings, add test for boost system lib.
Makefiles:  ignore the m4 macro directory
Makefiles:  Missing boost library should not be fatal.
Makefile: Improve test for boost system library.
leveldb: fix-up submodule entry.
Makefile: update submodule reference for leveldb.
Makefiles:  Update submodule reference to latestes for leveldb.
autogen.sh:  Create m4 directory for leveldb submodule.
autogen.sh:  On some platforms, the m4 is created earlier.
Makefiles:  Add ar-lib to .gitignore.
Makefile:  Add CRYPTO_C(XX)FLAGS to librdb
client: init readdir fields

At (2): Non-static class member "readdir_offset" is not initialized in this constructor nor in any functions that it calls.
At (4): Non-static class member "readdir_end" is not initialized in this constructor nor in any functions that it calls.
At (6): Non-static class member "readdir_num" is not initialized in this constructor nor in any functions that it calls.
CID 717207 (#1 of 1): Uninitialized scalar field (UNINIT_CTOR)
At (8): Non-static class member "tid" is not initialized in this constructor nor in any functions that it calls.

Signed-off-by: Sage Weil <sage@inktank.com>
client: fix shadowing in inode ctor

CID 728080 (#1 of 1): Incorrect sizeof expression (BAD_SIZEOF)
Taking the size of pointer parameter "layout" is suspicious.

At (2): Non-static class member field "layout.fl_stripe_unit" is not initialized in this constructor nor in any functions that it calls.
At (4): Non-static class member field "layout.fl_stripe_count" is not initialized in this constructor nor in any functions that it calls.
At (6): Non-static class member field "layout.fl_object_size" is not initialized in this constructor nor in any functions that it calls.
At (8): Non-static class member field "layout.fl_cas_hash" is not initialized in this constructor nor in any functions that it calls.
At (10): Non-static class member field "layout.fl_object_stripe_unit" is not initialized in this constructor nor in any functions that it calls.
At (12): Non-static class member field "layout.fl_unused" is not initialized in this constructor nor in any functions that it calls.
CID 717206 (#1 of 1): Uninitialized scalar field (UNINIT_CTOR)
At (14): Non-static class member field "layout.fl_pg_pool" is not initialized in this constructor nor in any functions that it calls.

Signed-off-by: Sage Weil <sage@inktank.com>
client: avoid possible null deref

CID 716910 (#1 of 1): Explicit null dereferenced (FORWARD_NULL)
At (6): Dereferencing null pointer "mds_session".

Signed-off-by: Sage Weil <sage@inktank.com>
cls_rbd: add stripe_unit, stripe_count metadata

* add STRIPINGV2 feature
* add stripe_unit, stripe_count keys
* add accessor methods

Signed-off-by: Sage Weil <sage@inktank.com>
librbd: load striping information when opening image

Silently tolerate an -ENOEXEC or -EINVAL (which means striping is not
present or is not supported by the osd class).

Signed-off-by: Sage Weil <sage@inktank.com>
librbd: allow striping to be specified on image creation

Signed-off-by: Sage Weil <sage@inktank.com>