DTraceUmbrella
ActivePublic

Recent Activity

Mar 27 2017

dteske added a member for DTrace: dteske.
Mar 27 2017, 6:43 PM

Feb 23 2017

gnn accepted D9701: Errors caused by DTrace are not correctly handled by ARMv6 abort_handler().
Feb 23 2017, 6:08 PM · ARM, DTrace
meloun-miracle-cz accepted D9701: Errors caused by DTrace are not correctly handled by ARMv6 abort_handler().
Feb 23 2017, 2:14 PM · ARM, DTrace
meloun-miracle-cz added a comment to D9701: Errors caused by DTrace are not correctly handled by ARMv6 abort_handler().

Perfect :)
By my opinion, kernel should call dtrace_trap_func () only in unresolvable kernel trap case, as alternative to panic.
Something like: oups, dtrace probe causes panic, recovery me.

Feb 23 2017, 2:13 PM · ARM, DTrace
graeme.jenkinson_cl.cam.ac.uk updated the diff for D9701: Errors caused by DTrace are not correctly handled by ARMv6 abort_handler().

Confirmed that calling dtrace_trap_func from abort_fatal() is correct (my mistake).

Feb 23 2017, 1:33 PM · ARM, DTrace
graeme.jenkinson_cl.cam.ac.uk added a comment to D9701: Errors caused by DTrace are not correctly handled by ARMv6 abort_handler().

In my example a malformed script results in a memory access to 0x02. The resulting translation fault brings the system down. This should not happen.

Yes, due to missing FAULT_TRAN_L[1][2]: case in dtrace_trap().

dtrace_trap() tests whether the system is in probe context, by checking the flag cpu_core[curcpu].cpuc_dtrace_flags & CPU_DTRACE_NOFAULT. If this is set the translation fault should not be handled by the normal code path, instead the DTrace error probe should fire and the DTrace script resume processing.

In the original code dtrace_trap() was called from abort_fatal(). abort_fatal() is never called for translation faults (or alignment faults). It would be possible to populate the aborts array with handlers that call dtrace_trap() infor L1 and L2 translation faults and alignment faults, but I think that this is a bit messy.

I don't agree here. All fatal traps ends in abort_fatal(), including all translation or alignment faults.
Kernel mode FAULT_TRAN_L[1][2] traps calls abort_fatal() at line 501.

Other architectures handling dtrace_trap() immediately on entering the trap handler (I'll expand on this point when replying to the other comment).

But other architectures doesn't emulates access or modify bits in SW. In peaks, quadcore ARM can easily get over 100k/sec of traps, filtered down (by pmap_fault()) to 3~5 k of 'real' ones.

But again, are you're really sure that calling dtrace probe for trap caused by swapped out page(for example) and thus fully covered by vm_fault() is right one?
In other words, can dtrace probe handle these 'false alarms' ?
In my opinion no, at least not on ARM.

In any case, I haven't a single problem if you put dtrace hook anywhere behind the line 352.

Feb 23 2017, 12:40 PM · ARM, DTrace
meloun-miracle-cz added a comment to D9701: Errors caused by DTrace are not correctly handled by ARMv6 abort_handler().

In my example a malformed script results in a memory access to 0x02. The resulting translation fault brings the system down. This should not happen.

Yes, due to missing FAULT_TRAN_L[1][2]: case in dtrace_trap().

Feb 23 2017, 11:38 AM · ARM, DTrace
graeme.jenkinson_cl.cam.ac.uk added a comment to D9701: Errors caused by DTrace are not correctly handled by ARMv6 abort_handler().

Can you be, please, little more specific for
"abort_handler - didn't call the dtrace_trap() function early enough to handle faults caused by DTrace " ?

Which faults are not handled if KDTRACE_HOOKS is on original location?
I'm only curious here, and my knowledge of DTRACE are very limited. But are you sure that DTRACE wants to see faults, possibly handled by vm_fault()? Or by pcb_onfault()... ?

Feb 23 2017, 9:19 AM · ARM, DTrace
meloun-miracle-cz added inline comments to D9701: Errors caused by DTrace are not correctly handled by ARMv6 abort_handler().
Feb 23 2017, 6:31 AM · ARM, DTrace
meloun-miracle-cz added a comment to D9701: Errors caused by DTrace are not correctly handled by ARMv6 abort_handler().

Can you be, please, little more specific for
"abort_handler - didn't call the dtrace_trap() function early enough to handle faults caused by DTrace " ?

Feb 23 2017, 5:36 AM · ARM, DTrace

Feb 21 2017

andrew added inline comments to D9701: Errors caused by DTrace are not correctly handled by ARMv6 abort_handler().
Feb 21 2017, 2:01 PM · ARM, DTrace
andrew added a reviewer for D9701: Errors caused by DTrace are not correctly handled by ARMv6 abort_handler(): ARM.
Feb 21 2017, 12:19 PM · ARM, DTrace
graeme.jenkinson_cl.cam.ac.uk retitled D9701: Errors caused by DTrace are not correctly handled by ARMv6 abort_handler() from to Errors caused by DTrace are not correctly handled by ARMv6 abort_handler().
Feb 21 2017, 11:55 AM · ARM, DTrace

Feb 18 2017

bkidney_briankidney.ca added a watcher for DTrace: bkidney_briankidney.ca.
Feb 18 2017, 12:53 AM

Feb 3 2017

gnn closed D9051: Replacement for DTrace's RAND subroutine by committing rS313176: Replace the implementation of DTrace's RAND subroutine for generating.
Feb 3 2017, 10:26 PM · DTrace

Feb 2 2017

domagoj.stolfa_gmail.com added a member for DTrace: domagoj.stolfa_gmail.com.
Feb 2 2017, 5:58 PM

Feb 1 2017

bcr added a watcher for DTrace: bcr.
Feb 1 2017, 8:48 PM
gnn added a member for DTrace: gnn.
Feb 1 2017, 8:47 PM

Jan 13 2017

markj accepted D9051: Replacement for DTrace's RAND subroutine .
Jan 13 2017, 6:21 PM · DTrace
gnn accepted D9051: Replacement for DTrace's RAND subroutine .
Jan 13 2017, 3:27 PM · DTrace
graeme.jenkinson_cl.cam.ac.uk updated the diff for D9051: Replacement for DTrace's RAND subroutine .

Review comments addressed.

Jan 13 2017, 10:12 AM · DTrace

Jan 6 2017

markj accepted D9051: Replacement for DTrace's RAND subroutine .

This seems fine to me - aside from the licensing, my comments are all style nits.

Jan 6 2017, 1:56 AM · DTrace

Jan 5 2017

graeme.jenkinson_cl.cam.ac.uk retitled D9051: Replacement for DTrace's RAND subroutine from to Replacement for DTrace's RAND subroutine .
Jan 5 2017, 6:56 PM · DTrace

Oct 3 2016

jonathan added a watcher for DTrace: jonathan.
Oct 3 2016, 12:54 AM

Aug 7 2016

badger added a member for DTrace: badger.
Aug 7 2016, 7:03 PM

Jul 28 2016

dnelson_1901_yahoo.com added a watcher for DTrace: dnelson_1901_yahoo.com.
Jul 28 2016, 4:55 AM

Jan 27 2016

rpaulo removed a member for DTrace: rpaulo.
Jan 27 2016, 6:15 AM

Jul 25 2015

markj abandoned D2994: lockstat: use a reader/writer flag for acquire and release probes.

This was committed.

Jul 25 2015, 2:07 AM · DTrace
markj abandoned D2995: lockstat: fix spurious rw-spin events.

This was committed.

Jul 25 2015, 2:07 AM · DTrace

Jul 19 2015

markj closed D2993: lockstat: reimplement probes using SDT(9) by committing rS285703: Implement the lockstat provider using SDT(9) instead of the custom provider.
Jul 19 2015, 10:14 PM · DTrace

Jul 7 2015

gnn accepted D2993: lockstat: reimplement probes using SDT(9).
Jul 7 2015, 11:12 AM · DTrace

Jul 5 2015

markj updated the diff for D2994: lockstat: use a reader/writer flag for acquire and release probes.
  • Fix the !KDTRACE_HOOKS build.
Jul 5 2015, 6:36 AM · DTrace
markj updated the diff for D2993: lockstat: reimplement probes using SDT(9).
  • Fix the !KDTRACE_HOOKS build.
Jul 5 2015, 6:32 AM · DTrace
markj added a reviewer for D2995: lockstat: fix spurious rw-spin events: avg.
Jul 5 2015, 2:57 AM · DTrace
markj added a reviewer for D2994: lockstat: use a reader/writer flag for acquire and release probes: avg.
Jul 5 2015, 2:56 AM · DTrace
markj added a reviewer for D2993: lockstat: reimplement probes using SDT(9): avg.
Jul 5 2015, 2:56 AM · DTrace

Jun 30 2015

hiren closed D2950: Add missing DTrace scripts that exist in the source tree to the Makefile for install.

Fixed in r284964

Jun 30 2015, 6:25 PM · DTrace
markj accepted D2950: Add missing DTrace scripts that exist in the source tree to the Makefile for install.
Jun 30 2015, 6:14 PM · DTrace
hiren reclaimed D2950: Add missing DTrace scripts that exist in the source tree to the Makefile for install.
Jun 30 2015, 6:09 PM · DTrace
hiren commandeered D2950: Add missing DTrace scripts that exist in the source tree to the Makefile for install.
Jun 30 2015, 6:09 PM · DTrace
j-nitrology.com added a project to D2950: Add missing DTrace scripts that exist in the source tree to the Makefile for install: DTrace.
Jun 30 2015, 6:07 PM · DTrace