[RFC patch 00/27] Jump-based NMI-safe immediate values and markers for sched-devel.git

From: Mathieu Desnoyers
Date: Wed Apr 16 2008 - 17:36:36 EST


Hi Ingo,

Here is the patchset you requested. I did not port the marker reintegration
to your sched-devel tree though, because many changes happened since you have
done the original work.

It applies on top of sched-devel.git latest.

You will notice that I implemented what we discussed yesterday : using nops and
jump for the heavily optimized version of markers. Comments are welcome. Running
this with my ~120 LTTng markers on x86_32 detects 97% of the sites. 4 out of 120
did had to fall back on the standard immediate values because they have been
manipulated by gcc optimizations. The sched-devel.git port has been tested
on x86_32. Patches before the port are tested on x86_32 and x86_64.

Note that some folding of the immediate values patches could eventually be
required. At that point, add-all-cpus-option-to-stop-machine-run.patch would
become useless.

The series order is the following :

make-marker_debug-static.patch # in -mm
x86-nmi-safe-int3-and-page-fault.patch
check-for-breakpoint-in-text-poke-to-eliminate-bug-on.patch
#Kprobes mutex cleanup
kprobes-use-mutex-for-insn-pages.patch
kprobes-dont-use-kprobes-mutex-in-arch-code.patch
kprobes-declare-kprobes-mutex-static.patch
#Text Edit Lock (depends on Enhance DEBUG_RODATA and kprobes mutex cleanup)
text-edit-lock-architecture-independent-code.patch
text-edit-lock-kprobes-architecture-independent-support.patch
#
#Immediate Values
add-all-cpus-option-to-stop-machine-run.patch
immediate-values-architecture-independent-code.patch
immediate-values-kconfig-menu-in-embedded.patch
immediate-values-x86-optimization.patch
add-text-poke-and-sync-core-to-powerpc.patch
immediate-values-powerpc-optimization.patch
immediate-values-documentation.patch
immediate-values-support-init.patch
#
scheduler-profiling-use-immediate-values.patch
#
markers-remove-extra-format-argument.patch
markers-define-non-optimized-marker.patch
#
immediate-values-move-kprobes-x86-restore-interrupt-to-kdebug-h.patch
add-discard-section-to-x86.patch
immediate-values-x86-optimization-nmi-mce-support.patch
immediate-values-powerpc-optimization-nmi-mce-support.patch
immediate-values-use-arch-nmi-mce-support.patch
linux-kernel-markers-immediate-values.patch
#
immediate-values-jump.patch
markers-use-imv-jump.patch


Mathieu

--
Mathieu Desnoyers
Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/