Page MenuHomeFreeBSD
Feed Advanced Search

Apr 17 2023

christos updated the summary of D39229: kinst: add kinst_excluded().
Apr 17 2023, 8:59 PM · DTrace
mhorne accepted D39611: dtrace: add register bindings for RISC-V.
Apr 17 2023, 8:52 PM · riscv, DTrace
christos updated the summary of D39504: kinst: replace KINST_TRAMP_INIT.
Apr 17 2023, 8:52 PM · DTrace
christos updated the diff for D39504: kinst: replace KINST_TRAMP_INIT.

Also add a KINST_TRAMP_FILL_SIZE constant to correct the step in
KINST_TRAMP_INIT.

Apr 17 2023, 8:44 PM · DTrace
christos updated the diff for D39504: kinst: replace KINST_TRAMP_INIT.

Add a KINST_TRAMP_FILL constant and use this instead of KINST_PATCHVAL. In
the RISC-V port we want to use the compressed patch value, instead of the
regular one, so KINST_PATCHVAL doesn't work in this case.

Apr 17 2023, 8:26 PM · DTrace
christos updated the diff for D39611: dtrace: add register bindings for RISC-V.

Add /* NOTREACHED */ at the end of dtrace_getreg().

Apr 17 2023, 7:59 PM · riscv, DTrace
christos added inline comments to D39611: dtrace: add register bindings for RISC-V.
Apr 17 2023, 5:05 PM · riscv, DTrace
mhorne accepted D39611: dtrace: add register bindings for RISC-V.
Apr 17 2023, 4:51 PM · riscv, DTrace
christos updated the diff for D39611: dtrace: add register bindings for RISC-V.

Bump version to 1.13.

Apr 17 2023, 4:09 PM · riscv, DTrace
christos added inline comments to D39611: dtrace: add register bindings for RISC-V.
Apr 17 2023, 3:33 PM · riscv, DTrace
christos added inline comments to D39611: dtrace: add register bindings for RISC-V.
Apr 17 2023, 3:32 PM · riscv, DTrace
markj added inline comments to D39611: dtrace: add register bindings for RISC-V.
Apr 17 2023, 3:19 PM · riscv, DTrace
christos updated the diff for D39611: dtrace: add register bindings for RISC-V.

Add FP.

Apr 17 2023, 3:15 PM · riscv, DTrace
christos added inline comments to D39611: dtrace: add register bindings for RISC-V.
Apr 17 2023, 3:12 PM · riscv, DTrace
mhorne added inline comments to D39611: dtrace: add register bindings for RISC-V.
Apr 17 2023, 1:35 PM · riscv, DTrace
christos updated the diff for D39611: dtrace: add register bindings for RISC-V.
Apr 17 2023, 2:13 AM · riscv, DTrace
christos updated the diff for D39611: dtrace: add register bindings for RISC-V.

Forgot riscv_regs.d

Apr 17 2023, 2:05 AM · riscv, DTrace
christos requested review of D39611: dtrace: add register bindings for RISC-V.
Apr 17 2023, 2:01 AM · riscv, DTrace

Apr 14 2023

mhorne accepted D39490: dtrace: get rid of uchar_t types.
Apr 14 2023, 3:14 PM · DTrace
mhorne accepted D39489: dtrace: expose dtrace_instr_size() to userland and implement it for RISC-V.
Apr 14 2023, 3:13 PM · DTrace
christos updated the diff for D39489: dtrace: expose dtrace_instr_size() to userland and implement it for RISC-V.
Apr 14 2023, 1:51 PM · DTrace
christos added a reviewer for D39490: dtrace: get rid of uchar_t types: mhorne.
Apr 14 2023, 1:50 PM · DTrace
christos reclaimed D39490: dtrace: get rid of uchar_t types.
Apr 14 2023, 1:49 PM · DTrace

Apr 12 2023

mhorne added a comment to D39489: dtrace: expose dtrace_instr_size() to userland and implement it for RISC-V.

Thanks for working on this!

Apr 12 2023, 6:46 PM · DTrace

Apr 11 2023

christos updated the diff for D39504: kinst: replace KINST_TRAMP_INIT.

Get rid of amd64-specific calculation comment KINST_TRAMPS_PER_CHUNK.

Apr 11 2023, 2:54 PM · DTrace
christos updated the diff for D39504: kinst: replace KINST_TRAMP_INIT.

Provide full diff.

Apr 11 2023, 2:46 PM · DTrace
christos requested review of D39504: kinst: replace KINST_TRAMP_INIT.
Apr 11 2023, 2:45 PM · DTrace

Apr 10 2023

christos updated the diff for D39489: dtrace: expose dtrace_instr_size() to userland and implement it for RISC-V.
Apr 10 2023, 10:02 PM · DTrace
christos abandoned D39490: dtrace: get rid of uchar_t types.
Apr 10 2023, 10:00 PM · DTrace
christos updated the diff for D39489: dtrace: expose dtrace_instr_size() to userland and implement it for RISC-V.

Merge and abandon D39490.

Apr 10 2023, 10:00 PM · DTrace
christos updated the diff for D39229: kinst: add kinst_excluded().

Add RISC-V exception handlers.

Apr 10 2023, 8:52 PM · DTrace
christos updated the diff for D39489: dtrace: expose dtrace_instr_size() to userland and implement it for RISC-V.

Compile instr_size.c into libdtrace and dtrace, move definition below KERNEL ifdef.

Apr 10 2023, 8:44 PM · DTrace
christos added a member for DTrace: christos.
Apr 10 2023, 8:28 PM
markj added inline comments to D39489: dtrace: expose dtrace_instr_size() to userland and implement it for RISC-V.
Apr 10 2023, 7:40 PM · DTrace
christos updated the diff for D39489: dtrace: expose dtrace_instr_size() to userland and implement it for RISC-V.

Provide full diff.

Apr 10 2023, 7:18 PM · DTrace
christos updated the diff for D39489: dtrace: expose dtrace_instr_size() to userland and implement it for RISC-V.
Apr 10 2023, 6:19 PM · DTrace
christos requested review of D39490: dtrace: get rid of uchar_t types.
Apr 10 2023, 6:13 PM · DTrace
christos updated the diff for D39489: dtrace: expose dtrace_instr_size() to userland and implement it for RISC-V.
Apr 10 2023, 5:56 PM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Use dtrace_instr_size() and get rid of machine-dependent code (depends on
D39489).

Apr 10 2023, 5:45 PM · DTrace
christos requested review of D39489: dtrace: expose dtrace_instr_size() to userland and implement it for RISC-V.
Apr 10 2023, 5:38 PM · DTrace
markj closed D39481: dtrace: handle NOP instructions in RISC-V.
Apr 10 2023, 4:15 PM · DTrace
markj accepted D39481: dtrace: handle NOP instructions in RISC-V.
Apr 10 2023, 3:03 PM · DTrace
christos updated the diff for D39481: dtrace: handle NOP instructions in RISC-V.
Apr 10 2023, 3:00 PM · DTrace
markj added inline comments to D39481: dtrace: handle NOP instructions in RISC-V.
Apr 10 2023, 1:56 PM · DTrace
christos requested review of D39481: dtrace: handle NOP instructions in RISC-V.
Apr 10 2023, 12:38 PM · DTrace

Apr 1 2023

christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Surround amd64-specific code in an ifdef.

Apr 1 2023, 7:34 PM · DTrace

Mar 28 2023

christos updated the diff for D39229: kinst: add kinst_excluded().

Exclude cpu_switch().

Mar 28 2023, 4:14 PM · DTrace
christos updated the diff for D39229: kinst: add kinst_excluded().

Surround amd64 exception handlers in an ifdef.

Mar 28 2023, 3:26 PM · DTrace

Mar 24 2023

christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Fix accidental dangling brace.

Mar 24 2023, 11:30 PM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Implement dt_sugar_elf_verify_debuglink() to make sure the debug files we're
reading are up to date, and if they're not, skip them. Also stop leaking
elf_info structs in dt_sugar_do_kinst_inline().

Mar 24 2023, 11:21 PM · DTrace
christos abandoned D39166: kinst(4): search for push rbp anywhere in the function.

Abandoning this one since we no longer search for push %rbp, instead we
exclude just the exception handlers (see D39229).

Mar 24 2023, 8:19 PM · DTrace
christos updated the diff for D39229: kinst: add kinst_excluded().

No longer search for push %rbp, just exclude the exception handlers.
This way we can trace safe functions that do not push %rbp, such as
cpu_switch().

Mar 24 2023, 8:19 PM · DTrace
christos abandoned D38892: libdtrace: embed kernel bootfile in dtrace_hdl_t.
Mar 24 2023, 7:53 PM · DTrace
markj added a comment to D38892: libdtrace: embed kernel bootfile in dtrace_hdl_t.

Since D38825 doesn't need this patch anymore, is this needed?

Mar 24 2023, 7:53 PM · DTrace
christos added a comment to D38892: libdtrace: embed kernel bootfile in dtrace_hdl_t.

Since D38825 doesn't need this patch anymore, is this needed?

Mar 24 2023, 7:49 PM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Add tests. kinst_test_inline() needs modification so that it can be splitted
into DW_AT_ranges.

Mar 24 2023, 7:36 PM · DTrace
christos requested review of D39259: fbt: allow tracing of dtrace_test.ko functions.
Mar 24 2023, 6:26 PM · DTrace

Mar 23 2023

markj accepted D39229: kinst: add kinst_excluded().
Mar 23 2023, 1:55 PM · DTrace
christos updated the summary of D39229: kinst: add kinst_excluded().
Mar 23 2023, 11:27 AM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Do not exclude inline copies that have DW_AT_subprogram instead of
DW_AT_inlined_subroutine.

Mar 23 2023, 11:23 AM · DTrace
christos requested review of D39229: kinst: add kinst_excluded().
Mar 23 2023, 11:20 AM · DTrace
christos updated the summary of D38825: libdtrace: implement inline function tracing for kinst.
Mar 23 2023, 8:48 AM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.
Mar 23 2023, 2:08 AM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

More bug fixes. I always keep finding them after I submit the patch.

Mar 23 2023, 1:26 AM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Fix flag-check on line 779

Mar 23 2023, 12:42 AM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Fix per-module parsing. Create an additional FBT probe if a non-inline definition is
found along an inline definition in the same module.

Mar 23 2023, 12:25 AM · DTrace

Mar 21 2023

christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Fix bugs, surround amd64-specific code in an #ifdef, merge flags into
dtsp_flags, handle dt_sugar_elf_init() and dwarf_elf_init() errors, use
longjmp() for dt_alloc() failures.

Mar 21 2023, 11:14 PM · DTrace

Mar 20 2023

christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Parse all loaded modules and their debug files instead of just kernel.
Mention new bug in summary.

Mar 20 2023, 11:35 PM · DTrace
christos retitled D39177: libdtrace: get rid of illumos ifdefs in dt_module_update(), fix dm_file and dm_modid from libdtrace: get rid of illumos ifdefs in dt_module_update() to libdtrace: get rid of illumos ifdefs in dt_module_update(), fix dm_file and dm_modid.
Mar 20 2023, 10:58 PM · DTrace
christos updated the diff for D39177: libdtrace: get rid of illumos ifdefs in dt_module_update(), fix dm_file and dm_modid.
Mar 20 2023, 10:56 PM · DTrace
christos requested review of D39177: libdtrace: get rid of illumos ifdefs in dt_module_update(), fix dm_file and dm_modid.
Mar 20 2023, 10:38 PM · DTrace
christos abandoned D39167: dtrace: allow predicate with no acts.

Apparently, this patch doesn't really work and, in fact, allowing a predicate
with no acts is probably impossible in D without introducing a significant
amount of complexity. awk can do that just fine because awk's predicates cannot
contain unescaped "/", since it searches for regexes. D on the other hand
allows normal computation inside the predicate, meaning one can do division
inside it:

Mar 20 2023, 7:14 PM · DTrace
christos updated the diff for D39166: kinst(4): search for push rbp anywhere in the function.

Put it in its own function.

Mar 20 2023, 6:12 PM · DTrace
markj added inline comments to D39166: kinst(4): search for push rbp anywhere in the function.
Mar 20 2023, 5:53 PM · DTrace
markj closed D39145: libdtrace: fix indendation in dt_printd().
Mar 20 2023, 1:36 PM · DTrace
markj added a comment to D39167: dtrace: allow predicate with no acts.

I see those warnings when building libdtrace without the patch.

Mar 20 2023, 1:07 PM · DTrace

Mar 18 2023

christos updated the summary of D39167: dtrace: allow predicate with no acts.
Mar 18 2023, 10:57 PM · DTrace
christos added a reviewer for D39167: dtrace: allow predicate with no acts: freebsd_igalic.co.
Mar 18 2023, 10:53 PM · DTrace
christos requested review of D39167: dtrace: allow predicate with no acts.
Mar 18 2023, 10:52 PM · DTrace
christos added a comment to D38732: dtrace(1): add -d flag to dump D script post-dt_sugar.

I don't think there are any pending changes for this PR, it can get through.

Mar 18 2023, 9:38 PM · DTrace
christos updated the summary of D38825: libdtrace: implement inline function tracing for kinst.
Mar 18 2023, 9:36 PM · DTrace
christos updated the diff for D39166: kinst(4): search for push rbp anywhere in the function.

Mention leaf function with rbp omitted.

Mar 18 2023, 8:35 PM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Get rid of push %rbp check (depends on D39166).

Mar 18 2023, 7:35 PM · DTrace
christos requested review of D39166: kinst(4): search for push rbp anywhere in the function.
Mar 18 2023, 7:33 PM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Improve example in man page.

Mar 18 2023, 5:01 PM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Do not always go back one instruction.

Mar 18 2023, 4:51 PM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Handle multiple dn_pdescs properly, move handling away from
dt_sugar_visit_all().

Mar 18 2023, 2:16 AM · DTrace

Mar 17 2023

markj accepted D39145: libdtrace: fix indendation in dt_printd().
Mar 17 2023, 3:40 PM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Got rid of deep copying, appending to the main clause is simpler.

Mar 17 2023, 3:38 PM · DTrace
christos requested review of D39145: libdtrace: fix indendation in dt_printd().
Mar 17 2023, 3:26 PM · DTrace

Mar 16 2023

christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

Handle leaf functions with their push %rbp ommitted.

Mar 16 2023, 4:29 PM · DTrace

Mar 8 2023

markj accepted D38892: libdtrace: embed kernel bootfile in dtrace_hdl_t.
Mar 8 2023, 3:23 PM · DTrace

Mar 6 2023

christos updated the summary of D38825: libdtrace: implement inline function tracing for kinst.
Mar 6 2023, 3:43 PM · DTrace

Mar 4 2023

christos updated the diff for D38732: dtrace(1): add -d flag to dump D script post-dt_sugar.

remove if/else comment in dt_cc as dt_sugar now also performs transformations
on kinst probes.

Mar 4 2023, 1:32 PM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

remove call to dwarf_next_types_section()

Mar 4 2023, 1:36 AM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

update dtrace_kinst.4 man page to mention inline tracing

Mar 4 2023, 12:57 AM · DTrace

Mar 3 2023

christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

fix dtrace_disx86() fail in dt_sugar_kinst_find_caller_func()

Mar 3 2023, 6:22 PM · DTrace
christos updated the diff for D38825: libdtrace: implement inline function tracing for kinst.

use dtp->bootfile in dt_sugar_do_kinst_inline() instead of hardcoding the path

Mar 3 2023, 4:24 PM · DTrace
christos updated the diff for D38892: libdtrace: embed kernel bootfile in dtrace_hdl_t.
Mar 3 2023, 4:23 PM · DTrace
markj accepted D38892: libdtrace: embed kernel bootfile in dtrace_hdl_t.
Mar 3 2023, 4:21 PM · DTrace