> with uprobe->inode set by uprobe_register(inode), and the caller uses
> d_inode.
>
> Signed-off-by: Oleg Nesterov
Looks good to me.
Acked-by: Srikar Dronamraju
> ---
> kernel/events/uprobes.c | 10 +-
> 1 files changed, 5 insertions(+), 5 deletions(-)
>
heck igrab() != NULL as well.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/trace/trace_uprobe.c |6 --
> 1 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/kernel/trace/trace_uprobe.c b/kernel/trace/trace_uprobe.c
>
,6 +696,7 @@ static int uprobe_dispatcher(struct uprobe_consumer *con,
> struct pt_regs *regs)
> struct trace_uprobe *tu;
>
> tu = container_of(con, struct trace_uprobe, consumer);
> + tu->nhit++;
>
> if (tu->flags & TP_FLAG_TRACE)
> u
_UPROBE.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/trace/trace_probe.h |1 -
> kernel/trace/trace_uprobe.c |9 +++--
> 2 files changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/kernel/trace/trace_probe.h b/k
* Oleg Nesterov [2013-02-04 16:18:50]:
> On 02/04, Srikar Dronamraju wrote:
> >
> > * Oleg Nesterov [2013-01-31 20:18:32]:
> >
> > > Move tu->nhit++ from uprobe_trace_func() to uprobe_dispatcher().
> > >
> > > ->nhit counts how many time w
> - struct uprobe_trace_consumer *utc;
> struct trace_uprobe *tu;
>
> - utc = container_of(con, struct uprobe_trace_consumer, cons);
> - tu = utc->tu;
> - if (!tu || tu->consumer != utc)
> - return 0;
> + tu = container_of(con, struct trace_uprobe, consumer);
>
> if (tu->flags & TP_FLAG_TRACE)
> uprobe_trace_func(tu, regs);
> --
> 1.5.5.1
>
--
Thanks and Regards
Srikar Dronamraju
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
efiltering, we need to have ability to
> > distinguish consumers.
>
> Certainly not. Please see the patches I am going to send.
>
Yeah, Looking at the next patchset made me realize this.
thanks
--
Thanks and Regards
Srikar Dronamraju
--
To unsubscribe from this list: send the line
other changes only fix the compilation errors.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/trace/trace_uprobe.c | 35 ++-
> 1 files changed, 6 insertions(+), 29 deletions(-)
>
> diff --git a/kernel/trace/t
;
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/trace/trace_uprobe.c |3 +--
> 1 files changed, 1 insertions(+), 2 deletions(-)
>
> diff --git a/kernel/trace/trace_uprobe.c b/kernel/trace/trace_uprobe.c
> index 55cdc14..0a9a8de 100644
>
nt, uprobe or consumer, even "bool add" should go
> away.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> include/linux/uprobes.h |6 ++
> kernel/events/uprobes.c | 39 +++
> 2 files changed
() holds a reference, or it is
> equal to event->ctx->task. So this pointer is always valid until
> free_event().
>
> Also add the "struct list_head tp_list" into this union. It is not
> strictly necessary, but it can simplify the next changes and we can
> add it
/CLOSE
> and add/del this perf_event to the list.
>
> We can probably avoid any locking, but lets start with the "obvioulsy
> correct" trace_uprobe_filter->rwlock which protects everything.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
l/debug/tracing/uprobe_profile
> /lib/libc.so.6 syscall 10
>
> This shows that only the target process was punished by int3.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/trace/trace_uprobe.c | 46
/lib/libc.so.6 syscall 11
>
> The child process hits this int3 only once and does unapply_uprobe().
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/trace/trace_uprobe.c | 21 ++---
> 1 files c
on't
> think TRACE_REG_PERF_OPEN can hit the dying task too often.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/trace/trace_uprobe.c | 42 --
> 1 files changed, 36 insertions(+), 6 deletio
* Oleg Nesterov [2013-03-29 19:15:40]:
> uprobe_trace_func() and uprobe_perf_func() do not need task_pt_regs(),
> we already have "struct pt_regs *regs".
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
Adding Masami in the cc.
> ---
> kernel
* Oleg Nesterov [2013-03-29 19:15:43]:
> seq_print_ip_sym(ip) in print_uprobe_event() is pointless,
> kallsyms_lookup(ip) can not resolve a user-space address.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/trace/trace_uprobe.c |8 +
* Oleg Nesterov [2013-03-29 19:15:45]:
> uprobe_trace_func() is never called with irqs or preemption
> disabled, no need to ask preempt_count() or local_save_flags().
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
Adding Masami in the Cc.
> ---
> kernel/tr
pport for ret-probes.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
Also copying Masami.
> ---
> kernel/trace/trace.h|5 ---
> kernel/trace/trace_uprobe.c | 61 --
> 2 files changed, 35 insertions(+), 31 d
s to be the right place to do this.
tu->call.filter would have the post filtering data
utc->filter needs to be set to the pre-filtering handler.
The other alternative is to extend the current abi and pass the
prefilter option. Should we extend the abi for userspace tracing is
obviously deba
* Oleg Nesterov [2013-01-27 20:48:33]:
> create_trace_uprobe() does kern_path() to find ->d_inode, but forgets
> to do path_put(). We can do this right after igrab().
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/trace/trace_uprobe.c |
kfree(utc);
> - return ret;
> }
>
> - tu->flags |= flag;
> - utc->tu = tu;
> - tu->consumer = utc;
> -
> - return 0;
> + return ret;
> }
>
> static void probe_event_disable(struct trace_uprobe *tu, int fla
* Oleg Nesterov [2013-01-25 17:17:28]:
> On 01/25, Ingo Molnar wrote:
> >
> > * Srikar Dronamraju wrote:
> >
> > > The other alternative is to extend the current abi and pass
> > > the prefilter option. Should we extend the abi for userspace
> > >
* Peter Zijlstra [2013-02-20 09:46:25]:
> On Mon, 2013-02-18 at 18:31 +0530, Srikar Dronamraju wrote:
> > pick_next_entity() prefers next, then last. However code checks if the
> > left entity can be skipped even if next / last is set.
> >
> > Check if left entity sho
Just noticied that e14808b49 added a duplicate extern declaration for
migrate_misplaced_page()
Signed-off-by: Srikar Dronamraju
---
diff --git a/include/linux/migrate.h b/include/linux/migrate.h
index a405d3dc..086bd33 100644
--- a/include/linux/migrate.h
+++ b/include/linux/migrate.h
> > > @@ -4323,6 +4340,10 @@ bool __sched yield_to(struct task_struct *p,
> > bool preempt)
> > > rq = this_rq();
> > >
> > > again:
> > > + /* optimistic test to avoid taking locks */
> > > + if (!__yield_to_candidate(curr, p))
> > > + goto out_irq;
> > > +
>
> So add
d? or are there other
problems?
> But this needs more changes, handle_swbp() does the same and this is
> equally wrong.
send_sigtrap() is arch specific and defined for only few archs.
we would have to force. But these are not related to the patch.
>
> Signed-off-by: Oleg Nesterov
Ack
* Oleg Nesterov [2012-09-03 17:26:20]:
> Make arch_uprobe_task->saved_trap_nr "unsigned int" and move it down
> after ->saved_scratch_register, this changes sizeof() from 24 to 16.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> arc
* Oleg Nesterov [2012-09-08 19:06:01]:
> On 09/03, Oleg Nesterov wrote:
> >
> > Sebastian, I changed your patches a bit:
> >
> > 1/7:
> >
> > - Change the subject and update the changelog. In particular,
> > s/utrace/uprobes/. I am wondering where this typo came from
when we move it into
> arch_uprobe_post_xol() and arch_uprobe_abort_xol().
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
note:
I also think this should be merged into 6/7 patch if possible
--
thanks and regards
Srikar
> ---
> arch/x86/kernel/uprobes.c |
* Sebastian Andrzej Siewior [2012-08-30 19:26:22]:
> alloc_uprobe() might return a NULL pointer, put_uprobe() can't deal with
> this.
>
> Signed-off-by: Sebastian Andrzej Siewior
Acked-by: Srikar Dronamraju
> ---
> kernel/events/uprobes.c |3 ++-
> 1 file c
* Oleg Nesterov [2012-08-19 18:40:37]:
> Nobody plays with uprobes_tree/uprobes_treelock in interrupt context,
> no need to disable irqs.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/events/uprobes.c | 21 -
>
robe_dup_vma(), to set MMF_HAS_UPROBES
> only if the new mm actually has uprobes, but I don't think this
> makes sense.
>
> The next patch will use this flag to clear MMF_HAS_UPROBES.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> include/li
(vma, vma->vm_start, vma->vm_end))
Should we set the MMF_RECALC_UPROBES here?
Its harmless but my thought was if we indeed saw a uprobe that was
already deleted, then the next time we hit a non uprobe breakpoint in
the same process context, we will not come here because
MMF_RECALC_UPROBES
* Oleg Nesterov [2012-08-19 18:40:08]:
> Hello.
>
> On top of "kill uprobes_state->count, add MMF_HAS_UPROBES"
> series.
>
> Once again, I am not sure we really need this (except 1/3).
> Perhaps we could remove uprobe_munmap() instead and forget
> about the false-positive MMF_HAS_UPROBES's.
>
* Andrea Arcangeli [2012-10-14 06:57:16]:
> I'll release an autonuma29 behaving like 28fast if there are no
> surprises. The new algorithm change in 28fast will also save memory
> once I rewrite it properly.
>
Here are my results of specjbb2005 on a 2 node box (Still on autonuma27, but
plan to
> Subject: [PATCH 1/4] uprobes/powerpc: Don't clear TIF_UPROBE in
> do_notify_resume()
>
> Cleanup. No need to clear TIF_UPROBE, uprobe_notify_resume() does this.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> arch/powerpc/kernel/si
; fixes.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> arch/powerpc/kernel/uprobes.c |6 ++
> kernel/events/uprobes.c |2 --
> 2 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/arch/powerpc/kernel/uprobes.c b/arch
* Oleg Nesterov [2012-10-28 18:39:36]:
> Kill arch_uprobe_enable/disable_step() hooks, they do nothing and
> nobody needs them.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> include/linux/uprobes.h |2 --
> kernel/events/uprobes.c | 10
;
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> arch/x86/kernel/uprobes.c | 54 +++-
> 1 files changed, 19 insertions(+), 35 deletions(-)
>
> diff --git a/arch/x86/kernel/uprobes.c b/arch/x86/kernel/uprobes.c
>
Hey Peter,
Here are results on 2node and 8node machine while running the autonuma
benchmark.
On 2 node, 12 core 24GB
KernelVersion: 3.7.0-rc3
tmp_list) into build_probe_list().
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
a_address(), rename it to
>offset_to_vaddr(), this matches vaddr_to_offset().
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
Mo
more clean/understandable and now we can change vma_address().
>
> 3. While at it, remove the unnecessary type-cast.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body
27;t really
> matter but looks a bit better.
>
> Signed-off-by: Oleg Nesterov
One thing I wanted to check is, should we mlock the new page, i.e the
replacing page. It may not a good idea to mlock the new page
because then we can end up adding too many pages to the unevictable
list.
* Oleg Nesterov [2012-07-26 12:28:12]:
> On 07/26, Srikar Dronamraju wrote:
> >
> > * Oleg Nesterov [2012-07-12 19:10:22]:
> >
> > > 1. vma_address() returns loff_t, this looks confusing and this is
> > >unnecessary after the previous change. Make
0.01% automount libc-2.12.so [.] malloc
>
> Patch applies on the current master branch of Linus' tree (bdc0077af).
> The trap_nr addition patch is a prereq.
>
> Signed-off-by: Ananth N Mavinakayanahalli
Acked-by: Srikar Dronamraju
--
To unsubscribe from
* Oleg Nesterov [2012-07-30 16:16:38]:
> On 07/30, Ananth N Mavinakayanahalli wrote:
> >
> > On Thu, Jul 26, 2012 at 05:20:43PM +0200, Sebastian Andrzej Siewior wrote:
> > > If someone is using single stepping over uprobe brackpoint then after
> > > we pass the uprobe single step, single stepping
>
> If mmap_region()->uprobe_mmap() fails, unmap_and_free_vma path
> does unmap_region() but does not remove the soon-to-be-freed vma
> from rb tree (actually there are more problems).
>
> Perhaps we could do do_munmap() + return in this case, but in fact
> it is simply wrong to abort if uprobe_m
ister, see the next patch.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/events/uprobes.c |2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/kernel/events/uprobes.c b/kernel/events/uprobes.c
> index 14c2e99..fa1
> No need to check VM_MAYREAD, it is always set.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/events/uprobes.c |4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/kernel/events/uprobes.c b/kernel/events/uprobes.c
>
te understand how unregister can confuse the probed
application.
> Signed-off-by: Oleg Nesterov
The changes look good.
Acked-by: Srikar Dronamraju
> ---
> kernel/events/uprobes.c | 13 -
> 1 files changed, 4 insertions(+), 9 deletions(-)
>
> diff --git a/kernel/e
rq->lock.
Not a clean approach as in we end up calling a sched/fair.c defined
function in sched/core.c explicitly.
The below patch tries to implement 4th approach.
---
From: Srikar Dronamraju
Date: Tue, 25 Sep 2012 02:37:55 -0700
Subject: [PATCH] Dont call task_tick_numa while holdi
Hi Hyeoncheol,
> uprobe_event only supports %REG arguments. I think that memory fetch,
> return value fetch, memory dereference functions in
> kernel/trace/trace_probe.c are good for uprobe_event.
Yes, these will be good to have and is listed as todo.
> So with a little
> modification of parse_p
ng data thats not paged out.
Most times the data that is requested tends to the hot data.
We could look at supporting data that is paged out later.
>
> BTW, if we can support offs(FETCHARGS), $stack and $stackN
> are also available. ;)
>
--
Thanks and Regards
Srikar Dronamraju
--
To uns
* Ananth N Mavinakayanahalli [2012-10-29 10:57:07]:
> On Sun, Oct 28, 2012 at 06:39:25PM +0100, Oleg Nesterov wrote:
>
> Hi Oleg,
>
> > Cleanup. No need to clear TIF_UPROBE, do_notify_resume() does this.
> >
> > Signed-off-by: Oleg Nesterov
> > ---
> > arch/powerpc/kernel/signal.c |4 +--
khail Kulemin
> Reported-by: Hemant Kumar Shaw
Acked-by: Srikar Dronamraju
Mikhail Kulemin has verified that this fix works for him.
> ---
> kernel/events/uprobes.c |4 +---
> 1 files changed, 1 insertions(+), 3 deletions(-)
>
> diff --git a/kernel/events/uprobes.c
will try to call arch_uprobe_skip_sstep()
> somehwere in Stupidhistan leading to a system crash. We rather want a
> proper link error so remove arch_uprobe_skip_sstep().
>
> Signed-off-by: Ralf Baechle
>
Acked-by: Srikar Dronamraju
Will be nice to have another arch(mips) suppo
_idle by always updating it with the
> function call to update_avg() first. Then, if avg_idle exceeds the max, we set
> it to the max.
>
> Signed-off-by: Jason Low
> Reviewed-by: Rik van Riel
Reviewed-by: Srikar Dronamraju
> ---
--
To unsubscribe from this list: send the line
domain_cost *= 2;
sd->max_newidle_lb_cost += domain_cost;
sd->max_newidle_lb_cost /= 2;
Maybe the name could then change to avg_newidle_lb_cost.
> +
> + curr_cost += dom
oks later.
>
> Signed-off-by: Sebastian Andrzej Siewior
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> include/linux/uprobes.h |2 ++
> kernel/events/uprobes.c | 14 --
> 2 files changed, 14 insertions(+), 2 deletions(-)
>
> dif
GS_TF. And otoh
nit:
s/itsel/itself
> we leak TIF_SINGLESTEP (set by enable) if the probed insn is "popf".
> See the next patches, we need the changes in arch/x86/kernel/step.c
> first.
>
> Signed-off-by: Sebastian Andrzej Siewior
> Signed-off-by: Oleg Nesterov
A
* Oleg Nesterov [2012-09-03 17:26:06]:
> No functional changes, preparation for the next fix and for uprobes
> single-step fixes.
>
> Move the code playing with TIF_BLOCKSTEP/DEBUGCTLMSR_BTF into the
> new helper, set_task_blockstep().
>
> Signed-off-by: Oleg Nester
lly minor)
> problem. A probed "pushf" insn can see the wrong X86_EFLAGS_TF set by
> uprobes. Perhaps we should change _disable to update the stack, or
> teach arch_uprobe_skip_sstep() to emulate this insn.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
&g
* Oleg Nesterov [2012-09-03 17:26:09]:
> Afaics the usage of update_debugctlmsr() and TIF_BLOCKSTEP in
> step.c was always very wrong.
>
> 1. update_debugctlmsr() was simply unneeded. The child sleeps
>TASK_TRACED, __switch_to_xtra(next_p => child) should notice
>TIF_BLOCKSTEP and set/cl
* Oleg Nesterov [2012-09-07 17:50:57]:
> On 09/07, Srikar Dronamraju wrote:
> >
> > Acked-by: Srikar Dronamraju
>
> Thanks!
>
> (and thanks, I'll fix the typo in 2/7 you pointed out)
>
> > > void arch_uprobe_enable_step(struct arch_uprobe *
>
> signed-off-by: Andrew Theurer
>
> diff --git a/kernel/sched/core.c b/kernel/sched/core.c
> index fbf1fd0..c767915 100644
> --- a/kernel/sched/core.c
> +++ b/kernel/sched/core.c
> @@ -4844,6 +4844,9 @@ bool __sched yield_to(struct task_struct *p, bool
> preempt)
>
> again:
> p_rq = ta
* Peter Zijlstra [2012-09-10 18:03:55]:
> On Mon, 2012-09-10 at 08:16 -0500, Andrew Theurer wrote:
> > > > @@ -4856,8 +4859,6 @@ again:
> > > > if (curr->sched_class != p->sched_class)
> > > > goto out;
> > > >
> > > > - if (task_running(p_rq, p) || p->state)
> > > > -
nsn() which is similar to set_swbp()
> in this respect. So the only caller will be handle_swbp() and we
> can make its semantics clear.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel"
ial, fold it into its single
>caller, is_swbp_at_addr().
>
> 3. Remove "auprobe" argument from write_opcode(), it is not used
>since f403072c6.
>
> Signed-off-by: Oleg Nesterov
> ---
Acked-by: Srikar Dronamraju
--
To unsubscribe from this list: send the line
> Signed-off-by: Oleg Nesterov
> ---
Acked-by: Srikar Dronamraju
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
f is_swbp_at_addr(),
> we can change its semantics.
>
> Signed-off-by: Oleg Nesterov
> ---
Acked-by: Srikar Dronamraju
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at
d handle_swbp().
>
> Remove these additional checks. If we want to implement this
> correctly we need to know the full insn length to update ->ip.
>
> rep* + nop is fine even without updating ->ip.
>
> Signed-off-by: Oleg Nesterov
> ---
Acked-by: Srikar Dronamraju
* Oleg Nesterov [2012-09-30 21:42:01]:
> If alloc_uprobe() fails uprobe_register() should return ENOMEM, not 0.
>
> Signed-off-by: Oleg Nesterov
> ---
Acked-by: Srikar Dronamraju
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body
from
>write_opcode().
>
> 3. Change register_for_each_vma(is_register => false) to remove
>as much breakpoints as possible but return non-zero if
>remove_breakpoint() fails at least once.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
--
To uns
* Oleg Nesterov [2012-09-30 21:42:11]:
> Strictly speaking this race was added by me in 56bb4cf6. However
> I think that this bug is just another indication that we should
> move copy_insn/uprobe_analyze_insn code from install_breakpoint()
> to uprobe_register(), there are a lot of other reasons
* Oleg Nesterov [2012-09-30 21:42:17]:
> Preparation. Extract the copy_insn/arch_uprobe_analyze_insn code
> from install_breakpoint() into the new helper, uprobe_copy_insn().
>
> And move uprobe->flags defines from uprobes.h to uprobes.c, nobody
> else can use them anyway.
>
> Signed-off-by: Ol
and register not being a
performance path, Can we use a single mutex instead of a per-uprobe
mutex.
Acked-by: Srikar Dronamraju
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http:/
ROBE_SKIP_SSTEP.
>
> Change this code to use bitops.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.
"bool restart"?
Lets keep it as is for now.
Acked-by: Srikar Dronamraju
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
he patch again.
Yeah prepare_uprobe() looks good for me.
Acked-by: Srikar Dronamraju
>
> ==
> [PATCH 5/7] uprobes: Introduce uprobe_copy_insn()
>
> Preparation. Extract the copy_insn/arch_uprobe_analy
* Oleg Nesterov [2012-10-06 20:53:37]:
> On 10/06, Srikar Dronamraju wrote:
> >
> > >
> > > for the future changes... (say, we can remove bp if consumers do not
> > > want to trace this task). Not sure it makes sense to change it right
> > > now.
&g
* Oleg Nesterov [2012-10-06 20:59:49]:
> On 10/06, Srikar Dronamraju wrote:
> >
> > Yeah prepare_uprobe() looks good for me.
> >
> > Acked-by: Srikar Dronamraju
>
> OK, renamed.
>
> The next patches updated accordinly, I hope I can keep your acks.
Y
* Rabin Vincent [2012-10-14 21:23:06]:
> Check for single step support before calling user_enable_single_step(),
> since user_enable_single_step() just BUG()s if support does not exist.
> Needed by ARM.
>
> Signed-off-by: Rabin Vincent
> ---
> kernel/events/uprobes.c |3 ++-
> 1 file chang
> static struct uprobe *find_active_uprobe(unsigned long bp_vaddr, int
> *is_swbp)
> {
> struct mm_struct *mm = current->mm;
> @@ -1469,6 +1474,7 @@ static void handle_swbp(struct pt_regs *regs)
> struct uprobe *uprobe;
> unsigned long bp_vaddr;
> int uninitialized_var(is
* Rabin Vincent [2012-10-14 21:23:08]:
> Allow arches to customize how the instruction is filled into the xol
> slot. ARM will use this to insert an undefined instruction after the
> real instruction in order to simulate a single step of the instruction
> without hardware support.
>
> Signed-of
re is no way to detect
> this if uprobe goes away.
>
> So this patch simply adds brw_start/end_read() around dup_mmap(), and
> brw_start/end_write() into register_for_each_vma().
>
> This adds 2 new hooks into dup_mmap() but we can kill uprobe_dup_mmap()
> and fold it into up
* Rabin Vincent [2012-10-14 21:23:09]:
> Add a weak function for any architecture-specific initialization. ARM
> will use this to register the handlers for the undefined instructions it
> uses to implement uprobes.
>
> Signed-off-by: Rabin Vincent
> ---
> include/linux/uprobes.h |1 +
> k
Got a chance to run autonuma-benchmark on a 8 node, 64 core machine.
the results are as below. (for each kernel I ran 5 iterations of
autonuma-benchmark)
KernelVersion: 3.7.0-rc3-mainline_v37rc7()
Testcase: Min Max Avg
numa01: 156
>
> Either way, last night I applied a patch on top of latest tip/master to
> remove the nr_cpus_allowed check so that numacore would be enabled again
> and tested that. In some places it has indeed much improved. In others
> it is still regressing badly and in two case, it's corrupting memory --
> Cosmetic. __set_bit(UPROBE_SKIP_SSTEP) is the part of initialization,
> it is not clear why it is set in insert_uprobe().
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/events/uprobes.c |5 ++---
> 1 files changed, 2 insertions(+), 3 d
* Oleg Nesterov [2012-11-23 21:28:02]:
> Trivial. uprobe can't be NULL after mutex_unlock(), it was already used.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/events/uprobes.c |3 +--
> 1 files changed, 1 insertions(+), 2 deletio
* Oleg Nesterov [2012-11-23 21:28:06]:
> register/unregister verifies that inode/uc != NULL. For what?
> This really looks like "hide the potential problem", the caller
> should pass the valid data.
>
Agree that users should pass valid data.
I do understand that we expect the users to be knowle
* Srikar Dronamraju [2012-12-10 10:37:10]:
> >
> > Either way, last night I applied a patch on top of latest tip/master to
> > remove the nr_cpus_allowed check so that numacore would be enabled again
> > and tested that. In some places it has indeed much improved. I
> >
> > Got a chance to run autonuma-benchmark on a 8 node, 64 core machine.
> > the results are as below. (for each kernel I ran 5 iterations of
> > autonuma-benchmark)
> >
>
> Thanks, a test of v10 would also be appreciated. The differences between
> V7 and V10 are small but do include a chan
t skip uc->handler().
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> include/linux/uprobes.h |5 -
> kernel/events/uprobes.c |6 ++
> kernel/trace/trace_uprobe.c |1 -
> 3 files changed, 2 insertions(+), 10 deletions(-)
>
>
) to call this helper too. Currently this is
> pointless because remove_breakpoint() is only called when the last
> consumer goes away, but we will change this.
>
> Signed-off-by: Oleg Nesterov
Acked-by: Srikar Dronamraju
> ---
> kernel/events/uprobes.c | 24 ++
Hi Mel, Ingo,
Here are the results of running autonumabenchmark on a 64 core, 8 node
machine. Has six 32GB nodes and two 64 GB nodes.
KernelVersion: 3.7.0-rc8
Testcase: Min Max Avg
numa01: 1475.37 1615.39 1555.24
kill uprobe_dup_mmap()
> and fold it into uprobe_end_dup_mmap().
>
Acked-by: Srikar Dronamraju
> Reported-by: Srikar Dronamraju
> Signed-off-by: Oleg Nesterov
> ---
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message t
> Hello.
>
> There is a known (and by design) problem with uprobes. They act
> systemwide, there is no pre-filtering. Just some random thoughts
> to provoke the discussion.
>
> - I think that the current uprobe_consumer->filter(task) should die.
>
> It buys nothing. It is called right before -
1 - 100 of 881 matches
Mail list logo