1. 31 Aug, 2004 7 commits
    • Prasanna S. Panchamukhi's avatar
      [PATCH] Jumper Probes to provide function arguments · b08e7589
      Prasanna S. Panchamukhi authored
      A special kprobe type which can be placed on function entry points, and
      employs a simple mirroring principle to allow seamless access to the
      arguments of a function being probed.  The probe handler routine should
      have the same prototype as the function being probed.  Currently
      implemented for x86.
      
      The way it works is that when the probe is hit, the breakpoint handler
      simply irets to the probe handler's eip while retaining register and stack
      state corresponding to the function entry.  After it is done, the probe
      handler calls jprobe_return() which traps again to restore processor state
      and switch back to the probed function.  Linus noted correctly at KS that
      we need to be careful as gcc assumes that the callee owns arguments.  We
      save and restore enough stack bytes to cover argument space.
      
      Sample Usage:
      	static int jip_queue_xmit(struct sk_buff *skb, int ipfragok)
      	{
      		... whatever ...
      		jprobe_return();
      		return 0;
      	}
      
      	struct jprobe jp = {
      		{.addr = (kprobe_opcode_t *) ip_queue_xmit},
      		.entry = (kprobe_opcode_t *) jip_queue_xmit
      	};
      	register_jprobe(&jp);
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      b08e7589
    • Prasanna S. Panchamukhi's avatar
      [PATCH] kprobes base patch · 4ece5899
      Prasanna S. Panchamukhi authored
      This patch helps developers to trap at almost any kernel code address,
      specifying a handler routine to be invoked when the breakpoint is hit.  
      
      Useful for analysing the Linux kernel by collecting debugging information
      non-disruptively.  Employs single-stepping out-of-line to avoid probe
      misses on SMP and may be especially useful in aiding debugging elusive
      races and problems on live systems.  More elaborate dynamic tracing tools
      such as DProbes can be built over the kprobes interface.
      
      
      Helps developers to trap at almost any kernel code address, specifying a
      handler routine to be invoked when the breakpoint is hit.  Useful for
      analysing the Linux kernel by collecting debugging information
      non-disruptively.  Employs single-stepping out-of-line to avoid probe
      misses on SMP and may be especially useful in aiding debugging elusive
      races and problems on live systems.  More elaborate dynamic tracing tools
      such as DProbes can be built over the kprobes interface.
      
      Sample usage:
      	To place a probe on __blockdev_direct_IO:
      	static int probe_handler(struct kprobe *p, struct pt_regs *)
      	{
      		... whatever ...
      	}
      	struct kprobe kp = {
      		.addr = __blockdev_direct_IO,
      		.pre_handler = probe_handler
      	};
      	register_kprobe(&kp);
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      4ece5899
    • Prasanna S. Panchamukhi's avatar
      [PATCH] i386 exceptions notifier for kprobes · f63b75f9
      Prasanna S. Panchamukhi authored
      This patch provides notifiers for i386 architecture exceptions.  This patch
      has been ported from x86_64 architecture as suggested by Andi Kleen.
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      f63b75f9
    • Philippe Elie's avatar
      [PATCH] Fix oops with nmi-watchdog=2 · 5ae3fd75
      Philippe Elie authored
      Contributions from  Zarakin <zarakin@hotpop.com>
      
      Intel removed two msrs: MSR_P4_IQ_ESCR_0|1 (0x3ba/0x3bb), P4 model >= 3.  See
      Intel documentation Vol.  3 System Programming Guide Appendix B.
      
      nmi_watchdog=2 oopsed at boot time and oprofile at driver load.
      
      Avoid touching them when model >= 3.
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      5ae3fd75
    • Jason Davis's avatar
      [PATCH] platform update for ES7000 · 75b02c33
      Jason Davis authored
      This update only applies to Unisys' ES7000 server machines.  The patch adds
      a OEM id check to verify the current machine running is actually a Unisys
      type box before executing the Unisys OEM parser routine.  It also increases
      the MAX_MP_BUSSES definition from 32 to 256.  On the ES7000s, bus ID
      numbering can range from 0 to 255.  Without the patch, the system panics if
      booted with acpi=off.
      
      This patch has been tested and verified on an authentic ES7000 machine.
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      75b02c33
    • Bjorn Helgaas's avatar
      [PATCH] Make assign_irq_vector() non-__init · 92d1cc78
      Bjorn Helgaas authored
      Make assign_irq_vector() non-__init always (it's called from
      io_apic_set_pci_routing(), which is used in the pci_enable_device() path).
      Signed-off-by: default avatarBjorn Helgaas <bjorn.helgaas@hp.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      92d1cc78
    • Anton Blanchard's avatar
      [PATCH] prio-tree: remove function prototype inside function · f4939b75
      Anton Blanchard authored
      I had a problem when compiling a 2.6 kernel with gcc 3.5 CVS.  The
      prototype for prio_tree_remove in mm/prio_tree.c is inside another
      function.  gcc 3.5 gets upset and removes the function completely.
      Apparently this isnt valid C, so lets fix it up.
      
      Details can be found here:
      
      http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17205Signed-off-by: default avatarAnton Blanchard <anton@samba.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      f4939b75
  2. 30 Aug, 2004 3 commits
  3. 31 Aug, 2004 3 commits
  4. 30 Aug, 2004 9 commits
  5. 29 Aug, 2004 6 commits
  6. 28 Aug, 2004 12 commits