This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: [PATCH] loc2c-runtime: fix compilation failure
Hi,
On Fri, Feb 07, 2020 at 04:07:21AM +0000, d.hatayama@fujitsu.com wrote:
> I ran into the following compilation failure when I tried to change
> $return in a return probe for some user-space process:
> [...]
> This failure is caused by a typo of the name of an argument variable
> of macro u_store_register introduced at the commit
> a03b455bc656216a4829dbad08e630949d944c75.
> ---
> runtime/linux/loc2c-runtime.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/runtime/linux/loc2c-runtime.h b/runtime/linux/loc2c-runtime.h
> index b4a329b..0270fa1 100644
> --- a/runtime/linux/loc2c-runtime.h
> +++ b/runtime/linux/loc2c-runtime.h
> @@ -294,7 +294,7 @@ static void ursl_store64 (const struct usr_regset_lut* lut,unsigned lutsize, in
> #define uu_store_register(_regs,regno,value) (_stp_is_compat_task() ? ursl_store32(url_i386, ARRAY_SIZE(url_i386), EM_386, regno, value) : ursl_store64(url_x86_64, ARRAY_SIZE(url_x86_64), EM_X86_64, regno, value))
>
> #define u_fetch_register(regno) check_fetch_register(c->uregs,regno,_stp_is_compat_task()?ARRAY_SIZE(url_i386):ARRAY_SIZE(url_x86_64),uu_fetch_register)
> -#define u_store_register(regno,value) check_store_register(c->uregs,regnoo,_stp_is_compat_task()?ARRAY_SIZE(url_i386):ARRAY_SIZE(url_x86_64),value,uu_store_register)
> +#define u_store_register(regno,value) check_store_register(c->uregs,regno,_stp_is_compat_task()?ARRAY_SIZE(url_i386):ARRAY_SIZE(url_x86_64),value,uu_store_register)
>
> #endif
This looks completely correct. The typo is pretty clear in the
original commit. I am just surprised we haven't seen this issue
before since the commit was pushed almost a year ago. What was the
exact script that showed this issue? We should probably add it as a
testcase together with the fix.
Thanks,
Mark