RFR(M): 8206977: Minor improvements of runtime code.
goetz.lindenmaier at sap.com
Tue Jul 10 10:53:04 UTC 2018
I ran coverity on the jdk11 hotspot sources and want to propose the
following fixes to the runtime code. I scanned the linux x86_64 build.
Some issues are similar to previous parfait fixes (check for NULL, add
guarantees etc.) I also identified some issues I consider real problems.
|| should be &&.
Attention, this is the only change that really will change behaviour.
But if thr == NULL we will see a crash below.
Wrong buffer length used.
Move code dereferencing ik under if (ik != NULL).
Initialization is missing. Moved constructor up to the other
Useful code improvements:
Assure buffer is not accessed at offset -1.
Numa_max_node returns int, and a -1 in some cases.
name might be NULL. Just a fix for tracing.
It would be wrong if only entry == NULL would hold, one
would hit the assertion below.
Illegal opcode is -1 and should not be passed to name array.
If n_selections == 0, best_selection would be NULL.
Move up the assertion and turn into a guarantee.
Either base can be NULL, or parts of the code before are dead.
We now an exception is pending.
Coverity does not like the format in a variable.
Anyways this is quite rough coding, transformed to use stringStream
as with other similar exceptions.
match might be NULL.
name might be NULL.
If ftell returns error code -1, we need not continue.
Especially we should not fseek(-1).
ftell returns -1.
More information about the hotspot-runtime-dev