lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1253648302-5771-1-git-send-email-fweisbec@gmail.com>
Date:	Tue, 22 Sep 2009 21:37:58 +0200
From:	Frederic Weisbecker <fweisbec@...il.com>
To:	Ingo Molnar <mingo@...e.hu>
Cc:	LKML <linux-kernel@...r.kernel.org>,
	Frederic Weisbecker <fweisbec@...il.com>,
	Masami Hiramatsu <mhiramat@...hat.com>,
	Steven Rostedt <rostedt@...dmis.org>,
	Li Zefan <lizf@...fujitsu.com>
Subject: [GIT PULL] tracing/kprobes: Kprobes core/tracing/profiling updates

Hi Ingo,

Kprobes has been nicely improved lately.
The x86 instruction decoder has been fixed to support cross builds and
mmx instruction set, besides of a lot of various kprobes core fixes.

The tracing part has evolved too, we can define human names for
arguments and custom subsystem names for dynamic tracepoints.

And also kprobes profiling and raw dynamic tracepoint samples are now
supported through perf. Looks like most of the kernel parts are now
in place for a perf support. Things are going to be focused on a
perf kprobes tool to exploit that.

Concerning this git tree, based on tip:/tracing/kprobes, I had to merge
tracing/core inside few weeks ago because it needed build fixes that were
in tracing/core (the merge commit provides the details). The tree is self
contained but it's already async with recent upstream tracing updates.
It means that merging upstream tree or tracing/core inside may result in
non-trivial conflicts. I can handle them, or rebase the whole, as you prefer.

The tree can be found at:

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing.git
	tracing/kprobes

Thanks,
Frederic.

---
Ananth N Mavinakayanahalli (1):
      kprobes: Prevent re-registration of the same kprobe

Frederic Weisbecker (1):
      Merge commit 'tracing/core' into tracing/kprobes

Masami Hiramatsu (23):
      kprobes/x86: Call BUG() when reentering probe into KPROBES_HIT_SS
      kprobes/x86-64: Allow to reenter probe on post_handler
      kprobes/x86: Fix to add __kprobes to in-kernel fault handing functions
      kprobes: Fix to add __kprobes to notify_die
      kprobes/x86-64: Fix to move common_interrupt to .kprobes.text
      kprobes: Prohibit to probe native_get_debugreg
      x86: Allow x86-32 instruction decoder selftest on x86-64
      x86: Remove unused config macros from instruction decoder selftest
      x86: Add MMX support for instruction decoder
      kprobes/x86-32: Move irq-exit functions to kprobes section
      x86/ptrace: Fix regs_get_argument_nth() to add correct offset
      tracing/kprobes: Fix probe offset to be unsigned
      tracing/kprobes: Cleanup kprobe tracer code.
      tracing/kprobes: Add event profiling support
      tracing/kprobes: Add argument name support
      tracing/kprobes: Show event name in trace output
      tracing/kprobes: Support custom subsystem for each kprobe event
      tracing/kprobes: Fix trace_probe registration order
      ftrace: Fix trace_add_event_call() to initialize list
      ftrace: Fix trace_remove_event_call() to lock trace_event_mutex
      tracing/kprobes: Add probe handler dispatcher to support perf and ftrace concurrent use
      tracing/kprobes: Fix profiling alignment for perf_counter buffer
      tracing/kprobes: Disable kprobe events by default after creation


The diffstat looks erroneous. I got it by taking
tip:tracing/kprobes...HEAD  but excluding the tracing/core changes
after the merge commit: ^d28daf923ac5e4a0d7cecebae56f3e339189366b.
And it seems it has taken the diffstat from the beginning of kprobes
tracing development. Anyway, here it is:

 Documentation/trace/kprobetrace.txt  |  152 ++++
 arch/x86/Kconfig.debug               |    9 +
 arch/x86/Makefile                    |    3 +
 arch/x86/include/asm/inat.h          |  188 +++++
 arch/x86/include/asm/inat_types.h    |   29 +
 arch/x86/include/asm/insn.h          |  143 ++++
 arch/x86/include/asm/ptrace.h        |   62 ++
 arch/x86/kernel/entry_32.S           |   24 +
 arch/x86/kernel/entry_64.S           |    8 +
 arch/x86/kernel/kprobes.c            |  234 +++----
 arch/x86/kernel/ptrace.c             |  112 +++
 arch/x86/lib/Makefile                |   13 +
 arch/x86/lib/inat.c                  |   78 ++
 arch/x86/lib/insn.c                  |  464 +++++++++++
 arch/x86/lib/x86-opcode-map.txt      |  812 ++++++++++++++++++++
 arch/x86/mm/fault.c                  |   11 +-
 arch/x86/tools/Makefile              |   15 +
 arch/x86/tools/distill.awk           |   42 +
 arch/x86/tools/gen-insn-attr-x86.awk |  334 ++++++++
 arch/x86/tools/test_get_len.c        |  108 +++
 include/linux/ftrace_event.h         |   19 +-
 include/linux/kprobes.h              |    2 +
 include/linux/syscalls.h             |    4 +-
 include/trace/ftrace.h               |   16 +-
 include/trace/syscall.h              |   11 +-
 kernel/kprobes.c                     |   68 ++-
 kernel/notifier.c                    |    2 +-
 kernel/trace/Kconfig                 |   12 +
 kernel/trace/Makefile                |    1 +
 kernel/trace/trace.h                 |   24 +
 kernel/trace/trace_event_types.h     |    4 +-
 kernel/trace/trace_events.c          |  125 +++-
 kernel/trace/trace_export.c          |   31 +-
 kernel/trace/trace_kprobe.c          | 1392 ++++++++++++++++++++++++++++++++++
 kernel/trace/trace_syscalls.c        |   16 +-
 35 files changed, 4331 insertions(+), 237 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ