RFR(XXS): 7133111: libsaproc debug print should be printed as unsigned long to fit large numbers on 64bit platform
Staffan Larsen
staffan.larsen at oracle.com
Thu Apr 5 09:32:58 PDT 2012
Isn't the problem with casting to (unsigned long) that this only a 32 bit type and size_t can be 64?
/Staffan
On 5 apr 2012, at 16:54, Dmitry Samersoff wrote:
> Staffan,
>
> OK for me.
>
> But I would prefer to handle it standard rather than Linux specific way
> to benefit other possible ports.
>
> i.e. %ld and (unsigned long) ph->core->map_array[j]->memsz
>
> -Dmitry
>
> On 2012-04-05 16:25, Staffan Larsen wrote:
>> Please review the following one-character fix to a printf format string. A 'z' is added to the printout of a size_t field.
>>
>> Thanks,
>> /Staffan
>>
>>
>> diff --git a/agent/src/os/linux/ps_core.c b/agent/src/os/linux/ps_core.c
>> --- a/agent/src/os/linux/ps_core.c
>> +++ b/agent/src/os/linux/ps_core.c
>> @@ -440,7 +440,7 @@
>> int j = 0;
>> print_debug("---- sorted virtual address map ----\n");
>> for (j = 0; j< ph->core->num_maps; j++) {
>> - print_debug("base = 0x%lx\tsize = %d\n", ph->core->map_array[j]->vaddr,
>> + print_debug("base = 0x%lx\tsize = %zd\n", ph->core->map_array[j]->vaddr,
>> ph->core->map_array[j]->memsz);
>> }
>> }
>
>
> --
> Dmitry Samersoff
> Java Hotspot development team, SPB04
> * There will come soft rains ...
More information about the serviceability-dev
mailing list