Messages in this thread | | | Subject | Re: [RFC] [PATCH 1/7] User Space Breakpoint Assistance Layer (UBP) | From | Peter Zijlstra <> | Date | Fri, 15 Jan 2010 11:56:43 +0100 |
| |
On Fri, 2010-01-15 at 15:52 +0530, Ananth N Mavinakayanahalli wrote: > On Fri, Jan 15, 2010 at 11:13:32AM +0100, Peter Zijlstra wrote: > > On Fri, 2010-01-15 at 15:40 +0530, Ananth N Mavinakayanahalli wrote: > > > > > Ideas? > > > > emulate the one instruction? > > In kernel? Generically? Don't think its that easy for userspace -- > you have the full gamut of instructions to emulate (fp, vector, etc); > further,
Can't you jit a piece of code that wraps the one instruction, save the full cpu state, set the userspace segments, have it load pt_regs (except for the IP) execute the one ins, save the results, restore the full state?
Then replace pt_regs with the saved result and advance the stored IP by the length of that one instruction and return to userspace?
All you need to take care of are the priv insns, but doesn't something like kvm already have code to deal with that?
> the instruction could itself cause a page fault and the like.
Faults aren't a problem, we take faults from kernel space all the time.
| |