-----Original Message-----
...
>> If verifying local argument, translate to a kernel address
range using
>> the stackbuf and stackbase members of the bt argument the same way used
>> for EFRAME_SEARCH later in x86_64_exception_frame(). local and
>> bt->stackbuf are char *, the assignment destination and bt->stackbase
>> are ulong. Cast the char * variables to uintptr_t for the assignment
>> arithmetic using the local argument to prevent gcc 10.2 errors assigning
>> char * to ulong...the sum is okay without casts in the uses for function
>> arguments later.
>
> sorry for nitpicking, but I may need some study, what errors do you see?
> If you replace uintptr_t with ulong, what do you see?
>
> I cannot see any errors with Fedora gcc 10.2 without the casts.
> and uintptr_t looks same as ulong. In the crash source code, we usually
> use ulong for pointer value.
Thanks, yes, I thought of doing it using ulong casts. The language standard
offers uintptr_t for "portable" pointer arithmetic. Crash has no instances
but gdb 7.6 has nearly 300. However, it certainly doesn't matter to me which
is used and I'd expect ulong to achieve the same on supported architexctures
with the advantage of not appearing to do two type conversions (ulong through
uintptr_t from char *).
I got it and learned, thanks.
Kazu
I'll have to rebuild and remind myself of the gcc specific error I see. I'll
post later with the specifics.
> The patch logic looks good and tested OK.
Thanks,
David Mair.
--
Crash-utility mailing list
Crash-utility(a)redhat.com
https://www.redhat.com/mailman/listinfo/crash-utility