[DTrace-devel] [PATCH 2/3] Fix DMST_ARG usage in provider trampolines
Kris Van Hees
kris.van.hees at oracle.com
Fri Mar 19 11:44:34 PDT 2021
On Wed, Feb 24, 2021 at 12:12:02PM -0500, eugene.loh at oracle.com wrote:
> From: Eugene Loh <eugene.loh at oracle.com>
>
> Signed-off-by: Eugene Loh <eugene.loh at oracle.com>
Reviewed-by: Kris Van Hees <kris.van.hees at oracle.com>
> ---
> libdtrace/dt_prov_dtrace.c | 2 +-
> libdtrace/dt_prov_fbt.c | 2 +-
> libdtrace/dt_prov_profile.c | 2 +-
> test/unittest/profile-n/tst.argtest.d | 1 -
> 4 files changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/libdtrace/dt_prov_dtrace.c b/libdtrace/dt_prov_dtrace.c
> index b28f212d..bf93bd60 100644
> --- a/libdtrace/dt_prov_dtrace.c
> +++ b/libdtrace/dt_prov_dtrace.c
> @@ -208,7 +208,7 @@ static void trampoline(dt_pcb_t *pcb)
> * (we clear dctx->mst->argv[6] and on)
> */
> for (i = 6; i < ARRAY_SIZE(((dt_mstate_t *)0)->argv); i++)
> - emit(dlp, BPF_STORE_IMM(BPF_DW, BPF_REG_7, DCTX_FP(DMST_ARG(i)), 0));
> + emit(dlp, BPF_STORE_IMM(BPF_DW, BPF_REG_7, DMST_ARG(i), 0));
>
> if (adv_act)
> dt_cg_tramp_epilogue_advance(pcb, act);
> diff --git a/libdtrace/dt_prov_fbt.c b/libdtrace/dt_prov_fbt.c
> index a35251e0..dd21369c 100644
> --- a/libdtrace/dt_prov_fbt.c
> +++ b/libdtrace/dt_prov_fbt.c
> @@ -223,7 +223,7 @@ static void trampoline(dt_pcb_t *pcb)
> * (we clear dctx->mst->argv[6] and on)
> */
> for (i = 6; i < ARRAY_SIZE(((dt_mstate_t *)0)->argv); i++)
> - emit(dlp, BPF_STORE_IMM(BPF_DW, BPF_REG_7, DCTX_FP(DMST_ARG(i)), 0));
> + emit(dlp, BPF_STORE_IMM(BPF_DW, BPF_REG_7, DMST_ARG(i), 0));
>
> dt_cg_tramp_epilogue(pcb);
> }
> diff --git a/libdtrace/dt_prov_profile.c b/libdtrace/dt_prov_profile.c
> index 0f7d4dd9..58cbf5f3 100644
> --- a/libdtrace/dt_prov_profile.c
> +++ b/libdtrace/dt_prov_profile.c
> @@ -267,7 +267,7 @@ static void trampoline(dt_pcb_t *pcb)
> * (we clear dctx->mst->argv[1] and on)
> */
> for (i = 1; i < ARRAY_SIZE(((dt_mstate_t *)0)->argv); i++)
> - emit(dlp, BPF_STORE_IMM(BPF_DW, BPF_REG_7, DCTX_FP(DMST_ARG(i)), 0));
> + emit(dlp, BPF_STORE_IMM(BPF_DW, BPF_REG_7, DMST_ARG(i), 0));
>
> dt_cg_tramp_epilogue(pcb);
> }
> diff --git a/test/unittest/profile-n/tst.argtest.d b/test/unittest/profile-n/tst.argtest.d
> index d638e2c5..11b2bc1b 100644
> --- a/test/unittest/profile-n/tst.argtest.d
> +++ b/test/unittest/profile-n/tst.argtest.d
> @@ -4,7 +4,6 @@
> * Licensed under the Universal Permissive License v 1.0 as shown at
> * http://oss.oracle.com/licenses/upl.
> */
> -/* @@xfail: dtv2 */
>
> /*
> * ASSERTION:
> --
> 2.18.4
>
>
> _______________________________________________
> DTrace-devel mailing list
> DTrace-devel at oss.oracle.com
> https://oss.oracle.com/mailman/listinfo/dtrace-devel
More information about the DTrace-devel
mailing list