Skip to content

v5.0.x warnings fixes #9935

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 16 commits into from
Jan 31, 2022
Merged

v5.0.x warnings fixes #9935

merged 16 commits into from
Jan 31, 2022

Conversation

awlauria
Copy link
Contributor

Cherry-picks from #9903

Brought #9848 over to accommodate a merge conflict.

bwbarrett and others added 13 commits January 27, 2022 15:40
Type was only used in a debug print, which meant a warning in
non-debug builds.  Make the debug print dereference slightly
more complicated to remove the assignment of the unused variable
(and therefore the warning).

Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit a8bbe4d)
With the removal of the runtime code from the OMPI code base, there
are no longer any users of the daemon init code.  Rather than
fix the warnings in the code, simply remove it.

Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit 8fd7189)
Remove unused function warning for the unused size_t max function.

Remove unused variable length array argument in the header.  While
the existance of the variable length array argument itself isn't
a problem, that header is included in the middle of another structure,
which is a no-no.  Since we don't use the variable length array
member, simplest solution is to remove it.

Copy the same compare and swap type enforcement for the 8 byte CAS
case as other similar cases (both 4 byte CAS and other atomics).

Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit bf75faf)
realpath() can fail and return NULL.  Recent versions of Glibc,
including the one included in Ubuntu 20.04 on ARM, tag realpath
such that the compiler will emit a warning if the return code
is ignored.  In addition to fixing a real issue, this patch
silences an ignored return value warnig.

Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit b3a9ad3)
Fix both a real (but unlikely) error and warning with the return code
of write().  Recent versions of Glibc tag the write() function to raise
a warning if the return value is ignored.  The issue is real, so do
a slightly better job of handling the issue and silence the warning.

Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit 6fea889)
Glibc tags posix_memalign to generate a warning if the return value
is ignored.  In recent systems, this seems completely uncalled for,
since addr must not be touched.  But older systems did not enforce
that behavior, so reset addr and move on.

Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit 633fbf3)
Fix warnings in non-debug builds about unused variables by folding
into debug areas.

Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit 20721c1)
Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit 4fdae9f)
A couple places where using asprintf and not paying attention to return
values was causing warnings.  Use opal_asprintf instead, which has known
behavior with the return pointer on failure and so we can safely ignore
return values.

Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit 743e190)
This commit updates how the attribute system is initialized. Instead of
being set up in MPI_Init it is initialized by the subsystems (communicator,
windows, datatypes) that use it. To keep the delta from the sessions PR
minimal the ompi_mpi_instance_retain() and ompi_mpi_instance_release()
functions are stubbed out as no-ops. This will be removed once the instance
system is added.

Signed-off-by: Nathan Hjelm <[email protected]>
(cherry picked from commit 60779e2)
Don't use assert to check return values in this (not performance
critical) code, but always check and abort on failure.  Fixes
a warning about unread variable, but also is the right way to handle
error checking.

Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit 1aa8cb9)
Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit ca99004)
We do pass NULL as a value for modifier (although
not when directive is NULL), which was causing
compiler warnings on modern GCC.  Handle the bozo
case to prevent said warnings.

Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit 03a2513)
@awlauria awlauria added this to the v5.0.0 milestone Jan 27, 2022
Fix two classes of warnings in the treematch code.  First, handle
the error condition for fgets(), which may leave the buffer in an
undefined state in error.  Define the state of the buffer on error
by initializing the first character to a NULL terminator, which
will trip the already existing error handling.

Second, handle errors from a call to hwloc that could cause
very large allocations (due to -1 being cast to a size_t).

Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit 2ef76b0)
@bwbarrett
Copy link
Member

I think you want 9b89505 as well, since you pulled in the patch that created the issues that patch fixes.

Fix resource leak in error handling that was identified by coverity
(CID 1497839 and 1497838).

Signed-off-by: Brian Barrett <[email protected]>
(cherry picked from commit 9b89505)
@ibm-ompi
Copy link

The IBM CI (XL) build failed! Please review the log, linked below.

Gist: https://gist.github.com/c077824742d0d31f7ddb448d7de0dfa8

1 similar comment
@ibm-ompi
Copy link

The IBM CI (XL) build failed! Please review the log, linked below.

Gist: https://gist.github.com/c077824742d0d31f7ddb448d7de0dfa8

@ibm-ompi
Copy link

The IBM CI (GNU/Scale) build failed! Please review the log, linked below.

Gist: https://gist.github.com/d0b6bbbf18245007a5d18040aeeaff08

@ibm-ompi
Copy link

The IBM CI (PGI) build failed! Please review the log, linked below.

Gist: https://gist.github.com/6c2b206ee40baeb55175feca6f99d3cd

@awlauria
Copy link
Contributor Author

bot:aws:retest

@ibm-ompi
Copy link

The IBM CI (GNU/Scale) build failed! Please review the log, linked below.

Gist: https://gist.github.com/e9b8952f367d704e4a111022ddd91240

@ibm-ompi
Copy link

The IBM CI (XL) build failed! Please review the log, linked below.

Gist: https://gist.github.com/c795392ed8f8f0595b00a85028b658d5

@awlauria
Copy link
Contributor Author

This must be dependent on another patch series. Looking..

This tag can be used internally to determine the range of valid values for
pre-defined attribute keyvals.

Signed-off-by: Nathan Hjelm <[email protected]>
(cherry picked from commit dc7532d)
Copy link
Member

@gpaulsen gpaulsen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks.

@awlauria
Copy link
Contributor Author

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@janjust
Copy link
Contributor

janjust commented Jan 28, 2022

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@awlauria awlauria merged commit d402f3b into open-mpi:v5.0.x Jan 31, 2022
@awlauria awlauria deleted the v5.0.x_warnings branch January 31, 2022 23:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants