Skip to content

Wip xio#1

Open
mattbenjamin wants to merge 6008 commits into
masterfrom
wip-xio
Open

Wip xio#1
mattbenjamin wants to merge 6008 commits into
masterfrom
wip-xio

Conversation

@mattbenjamin

Copy link
Copy Markdown

This is a pre-pull request, designed to give folks a chance to review the current XioMessenger integration for Hammer.

@mattbenjamin

Copy link
Copy Markdown
Author

This branch has a known bug (being fixed), but it attempts rebasing per feedback.

@mattbenjamin mattbenjamin force-pushed the wip-xio branch 3 times, most recently from 7365705 to 487789d Compare January 6, 2015 23:31
mattbenjamin pushed a commit that referenced this pull request Jan 14, 2015
CID 1242020 (#1 of 1): Resource leak (RESOURCE_LEAK)
 leaked_storage: Variable my_completion going out of scope
 leaks the storage it points to.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Jan 14, 2015
Fix for issues introduced with cba4ed4:

CID 1256099 (#1 of 1): Uninitialized pointer read (UNINIT)
 uninit_use: Using uninitialized value this->impl.

CID 1256100 (#1 of 1): Uninitialized pointer read (UNINIT)
 uninit_use: Using uninitialized value this->impl.

Don't delete a pointer in the constructor if the pointer
isn't initialized before.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Jan 14, 2015
Fix for Coverity issue:

CID 1238902 (#1 of 1): Uninitialized pointer read (UNINIT)
 uninit_use: Using uninitialized value this->mdlog.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Jan 14, 2015
Make sure concurrentios is always >= 0 to fix these coverity
issues and to prevent bad_alloc/negative array sizes:

CID 1128404 (#1 of 1): Uninitialized scalar variable (UNINIT)
 uninit_use: Using uninitialized value index[slot].

CID 1128405 (#1 of 1): Uninitialized pointer read (UNINIT)
 uninit_use: Using uninitialized value contents[slot].

CID 1219644 (#1 of 1): Uninitialized pointer read (UNINIT)
 uninit_use: Using uninitialized value contents[slot].

CID 1219645 (#1 of 1): Uninitialized pointer read (UNINIT)
 uninit_use: Using uninitialized value contents[slot].

CID 1219646 (#1 of 1): Uninitialized scalar variable (UNINIT)
 uninit_use: Using uninitialized value index[slot].

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Jan 14, 2015
Fix for:

CID 1219471 (#1 of 1): Division or modulo by zero (DIVIDE_BY_ZERO)
 divide_by_zero: In function call crush_make_uniform_bucket,
 division by expression item_weight which may be zero has undefined
 behavior.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Jan 14, 2015
There is no security advantage to check if the class file
exists before opening it but the file could be removed or
exchanged between the stat and open. Instead directly open
it and fail. Check if the file was missing afterwards
for debug messages and error codes.

Make sure cls->status is set if the class open call fails.

To solve Coverity issue:

CID 743419 (#1 of 1): Time of check time of use (TOCTOU)
 fs_check_call: Calling function stat to perform check on fname.

743419 Time of check time of use
 An attacker could change the filename's file association or
 other attributes between the check and use.

 In ClassHandler::_load_class(ClassHandler::ClassData *): A check
 occurs on a file's attributes before the file is used in a
 privileged operation, but things may have changed (CWE-367)

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Feb 28, 2015
Fix for:

CID 1221525 (#1 of 1): Resource leak (RESOURCE_LEAK)
 leaked_storage: Failing to save or free storage allocated
 by this->getObjName(soid, 0UL) leaks it.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
cbodley pushed a commit that referenced this pull request May 22, 2015
Fix for:

CID 1264460 (#1 of 1): Structurally dead code (UNREACHABLE)
unreachable: This code cannot be reached: sync();

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
cbodley pushed a commit that referenced this pull request May 22, 2015
Fix for:
CID 1251462 (#1 of 1): Use after free (USE_AFTER_FREE)
1. alias: Assigning: cur_name = names. Now both point to the same storage.
3. freed_arg: free frees names.
6. pass_freed_arg: Passing freed pointer cur_name as an argument to printf.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
cbodley pushed a commit that referenced this pull request May 22, 2015
Fix for:
CID 1247719 (#1 of 1): Unintentional integer overflow
(OVERFLOW_BEFORE_WIDEN)
 overflow_before_widen: Potentially overflowing expression
 stripe_count * object_size with type unsigned int (32 bits,
 unsigned) is evaluated using 32-bit arithmetic before being
 used in a context which expects an expression of type
 uint64_t (64 bits, unsigned).

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
cbodley pushed a commit that referenced this pull request May 22, 2015
Fix for:

CID 1247720 (#1 of 1): Unintentional integer overflow
(OVERFLOW_BEFORE_WIDEN)
 overflow_before_widen: Potentially overflowing expression
 stripe_count * stripe_unit with type unsigned int (32 bits,
 unsigned) is evaluated using 32-bit arithmetic before being
 used in a context which expects an expression of type
 uint64_t (64 bits, unsigned).

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
cbodley pushed a commit that referenced this pull request May 22, 2015
Call push_back() for the generated entry object.

Fix for:

CID 1274297 (#1 of 1): Resource leak (RESOURCE_LEAK)
 3. leaked_storage: Variable entry going out of scope leaks
 the storage it points to.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
cbodley pushed a commit that referenced this pull request May 22, 2015
Fix for:

CID 1254374 (#1 of 1): Argument cannot be negative (NEGATIVE_RETURNS)
1. negative_return_fn: Function socket(2, SOCK_STREAM, 0) returns a
   negative number.
2. var_assign: Assigning: signed variable connect_sd = socket.
3. negative_returns: connect_sd is passed to a parameter that cannot
   be negative.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
cbodley pushed a commit that referenced this pull request May 22, 2015
Fix for:

CID 1258439 (#1 of 1): Copy into fixed size buffer (STRING_OVERFLOW)
 2. fixed_size_dest: You might overrun the 4096 byte fixed-size
    string devname by copying dev + 5 without checking the length.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
cbodley pushed a commit that referenced this pull request May 22, 2015
CID 1274295 (#1 of 1): Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN)
 overflow_before_widen: Potentially overflowing expression
 usec * 1000 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).

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
cbodley pushed a commit that referenced this pull request May 22, 2015
Use memset to fill integer VLAs.

Fix for:

CID 1219649 (#1 of 1): Uninitialized scalar variable (UNINIT)
 uninit_use: Using uninitialized value primary_count[primary]

CID 1219648 (#1 of 1): Uninitialized scalar variable (UNINIT)
 uninit_use: Using uninitialized value first_count[osds[0UL]]

CID 1219647 (#1 of 1): Uninitialized scalar variable (UNINIT)
 uninit_use: Using uninitialized value count[osds[i]]

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
cbodley pushed a commit that referenced this pull request May 22, 2015
Fix for:

CID 1254380 (#1 of 1): Uninitialized scalar variable (UNINIT)
 uninit_use_in_call: Using uninitialized value sa. Field
 sa.sin_zero is uninitialized when calling connect

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
John Spray and others added 7 commits July 28, 2015 09:05
I broke this by taking the state from
the old mdsmap instead of the new one.

Signed-off-by: John Spray <john.spray@redhat.com>
Still got xlist not empty asserts on deletion of MDSRank,
so reinstate the condition that we only delete on
is_stopped().

Additionally, allow deletion in the case that we never had
a rank to begin with.

Signed-off-by: John Spray <john.spray@redhat.com>
AsyncConnection: Exit process loop if entering fault
Signed-off-by: Kefu Chai <kchai@redhat.com>
@vuhuong sorry for the latency, could you please rebase & repush , to poke the built bot again?

once the build completes, will get it merged.

thanks,
Signed-off-by: x11507 <xu.donghai@h3c.com>
Wip compressor

Reviewed-by: Sage Weil <sage@redhat.com>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

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

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

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

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

CID 1297875 (#1 of 1): Arguments in wrong order (SWAPPED_ARGUMENTS)
 swapped_arguments: The positions of arguments in the call to
  do_lock_remove do not match the ordering of the parameters:
 lock_cookie is passed to client
 lock_client is passed to cookie

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

CID 1297874 (#1 of 1): Arguments in wrong order (SWAPPED_ARGUMENTS)
 swapped_arguments: The positions of arguments in the constructor
  for CompatSet do not match the ordering of the parameters:
 feature_incompat_base is passed to _ro_compat
 feature_ro_compat_base is passed to _incompat

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

CID 717354 (#1 of 1): Uninitialized pointer field (UNINIT_CTOR)
 uninit_member: Non-static class member id is not initialized in
  this constructor nor in any functions that it calls.
 uninit_member: Non-static class member type is not initialized in
  this constructor nor in any functions that it calls.
 uninit_member: Non-static class member off is not initialized in
  this constructor nor in any functions that it calls.
 uninit_member: Non-static class member len is not initialized in
  this constructor nor in any functions that it calls.
 uninit_member: Non-static class member lg is not initialized in
  this constructor nor in any functions that it calls.
 uninit_member: Non-static class member completion is not
  initialized in this constructor nor in any functions that it calls.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

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

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

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

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

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

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

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

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

CID 1232607 (#1 of 1): Uninitialized pointer field (UNINIT_CTOR)
 uninit_member: Non-static class member m_dump_perf_counters is not
  initialized in this constructor nor in any functions that it calls.
 uninit_member: Non-static class member m_rbd is not initialized in
  this constructor nor in any functions that it calls.
 uninit_member: Non-static class member m_ioctx is not initialized in
  this constructor nor in any functions that it calls.
 uninit_member: Non-static class member m_latency_multiplier is not
  initialized in this constructor nor in any functions that it calls.
 uninit_member: Non-static class member m_readonly is not initialized
  in this constructor nor in any functions that it calls.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

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

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

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

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

CID 1297861 (#1 of 1): Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN)
 overflow_before_widen: Potentially overflowing expression
  this->layout.fl_stripe_count.operator __u32() *
  this->layout.fl_object_size.operator __u32() with type unsigned int
  (32 bits, unsigned) is evaluated using 32-bit arithmetic, and then used
  in a context that expects an expression of type uint64_t (64 bits, unsigned).

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
mattbenjamin pushed a commit that referenced this pull request Sep 8, 2015
Fix for:

CID 1297885 (#1 of 2): Result is not floating-point (UNINTENDED_INTEGER_DIVISION)
 integer_division: Dividing integer expressions g_conf->mon_pool_quota_warn_threshold
 and 100, and then converting the integer quotient to type float. Any remainder,
 or fractional part of the quotient, is ignored.

CID 1297885 (#2 of 2): Result is not floating-point (UNINTENDED_INTEGER_DIVISION)
 integer_division: Dividing integer expressions g_conf->mon_pool_quota_crit_threshold
 and 100, and then converting the integer quotient to type float. Any remainder,
  or fractional part of the quotient, is ignored.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Fix incomplete move of late header computation from XioPortal
send, to _send_message_impl.

Fix an initialization ordering warning, various signedness and
one narrowing mismatch.

Fix spacing around Accelio mempool parameters initialization.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.