RFR: 8360515: PROPERFMTARGS should always use size_t template specialization for unit [v5]

Joel Sikström jsikstro at openjdk.org
Wed Jul 30 09:44:41 UTC 2025


On Mon, 28 Jul 2025 13:35:14 GMT, Joel Sikström <jsikstro at openjdk.org> wrote:

>> Hello,
>> 
>> PROPERFMT is defined as the format string "%zu%s", which expects a size_t as input argument. When used in combination with PROPERFMTARGS, which uses the templated byte_size_in_proper_units, the byte size may not be size_t if the input is some other type.
>> 
>> To minimize confusion, PROPERFMTARGS should always use the size_t template specilization of byte_size_in_proper_units, to match PROPERFMT. Places that use byte_size_in_proper_units with other types can still use it, but should use their own format strings instead of PROPERFMT.
>> 
>> ProcSmapsSummary::print_on in memMapPrinter_macosx is the only place that uses PROPERFMTARGS with a type that is not size_t. I have changed those places to use the expanded version of the macro, which uses the templated version of byte_size_in_proper_unit instead.
>> 
>> Testing:
>> * Oracle's tier1-2
>
> Joel Sikström has updated the pull request incrementally with two additional commits since the last revision:
> 
>  - Replace PROPERFMTARGs with expanded version in psAdaptiveSizePolicy.cpp
>  - Other alternative

Ping @dholmes-ora. Do you think this looks good?

-------------

PR Comment: https://git.openjdk.org/jdk/pull/25975#issuecomment-3135549555


More information about the hotspot-dev mailing list