Re: [PATCH 19/21] i386 Kprobes semaphore fix

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 09, 2005 at 09:52:40AM -0800, Zachary Amsden wrote:
> Ingo Molnar wrote:
> 
> >* Zachary Amsden <[email protected]> wrote:
> >
> > 
> >
> >>>I believe user space kprobes are being worked on by some IBM India folks 
> >>>yes.
> >>>     
> >>>
> >>I'm convinced this is pointless.  What does it buy you over a ptrace 
> >>based debugger?  Why would you want extra code running in the kernel 
> >>that can be done perfectly well in userspace?
> >>   
> >>
> >
> >kprobes are not just for 'debuggers', they are also used for tracing and 
> >other dynamic instrumentation in projects like systemtap. Ptrace is way 
> >too slow and limited for things like that.
> > 
> >
> 
> Well, if there is a justification for it, that means we really should 
> handle all the nasty EIP conversion cases due to segmentation and v8086 
> mode in the kprobes code.  I was hoping that might not be the case.
> 

As Ingo mentioned above, Systemtap uses kprobes infrastructure to provide
dynamic kernel instrumentation. Using which user can add lots of probes 
easily, so we need to take care of this fast path.  

Instead of calling convert_eip_to_linear() for all cases, you can
just check if it is in kernel mode and calculate the address directly

	if (kernel mode)
                addr = regs->eip - sizeof(kprobe_opcode_t);
        else
                addr = convert_eip_to_linear(..);

there by avoiding call to convert_eip_to_linear () for every kernel probes.

As Andi mentioned user space probes support is in progress and 
this address conversion will help in case of user space probes as well.


Thanks
Prasanna
-- 

Prasanna S Panchamukhi
Linux Technology Center
India Software Labs, IBM Bangalore
Ph: 91-80-25044636
<[email protected]>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux