Messages in this thread | | | Date | Thu, 10 Jan 2013 12:42:54 +0100 | From | Anton Arapov <> | Subject | Re: [RFC PATCH v2 4/4] uretprobes: invoke return probe handlers |
| |
On Wed, Jan 09, 2013 at 05:28:42PM +0100, Oleg Nesterov wrote: > On 01/09, Anton Arapov wrote: > > > > static void handle_swbp(struct pt_regs *regs) > > { > > struct uprobe *uprobe; > > + struct xol_area *area; > > unsigned long bp_vaddr; > > int uninitialized_var(is_swbp); > > > > bp_vaddr = uprobe_get_swbp_addr(regs); > > - uprobe = find_active_uprobe(bp_vaddr, &is_swbp); > > + area = get_xol_area(); > > No, we do not need to allocate xol area here. > > > + if (area) { > > + if (bp_vaddr == area->vaddr) { > > + handle_rp_swbp(regs); > > Can't understand... this should check bp_vaddr == rp_trampoline_vaddr ? > > Again, unless you remove rp_trampoline_vaddr altogether.
yeah, forgot to correct this chunk before I sent it here. I was working on xol_get_trampoline_slot removal as you suggested.
thanks for valuable comments, seems you are okay with approach to add rp_handler into uprobe_consumer struct.
Anton.
| |