[DTrace-devel] [PATCH v2] error: ERROR probe firing should not corrupt probe arguments
Eugene Loh
eugene.loh at oracle.com
Tue Sep 10 15:20:28 UTC 2024
On 9/10/24 02:20, Kris Van Hees wrote:
> On Tue, Sep 10, 2024 at 01:51:41AM -0400, Eugene Loh wrote:
>> On 9/10/24 00:33, Kris Van Hees wrote:
>>> diff --git a/libdtrace/dt_dctx.h b/libdtrace/dt_dctx.h
>>> @@ -31,6 +31,7 @@ typedef struct dt_mstate {
>>> dt_pt_regs regs; /* CPU registers */
>>> uint64_t argv[10]; /* Probe arguments */
>>> uint64_t saved_argv[10]; /* Saved probe arguments */
>>> + uint64_t error_argv[6]; /* ERROR probe saved arguments */
>> I don't think such a thing is needed in mstate. It suffices to use local
>> storage in dt_probe_error(), which is probably what you really meant to do.
>> Plus, calling it error_argv[] is misleading since these are the args that
>> you are *NOT* using for the ERROR probe.
> No, because that makes the stack too large and then the BPF verifier rejects
> the program.
Just to be clear, do you mean the test program will fail? Or the test
program passes, but you simply do not want to add to stack pressure?
More information about the DTrace-devel
mailing list