Re: [PATCH v13 01/10] arm64: Add HAVE_REGS_AND_STACK_ACCESS_API feature

2016-06-19 Thread Li Bin
0 ... 30: > + val = regs->regs[offset]; > + break; > + case offsetof(struct pt_regs, sp): here should be shifted too, as case offsetof(struct pt_regs, sp) >> 3: > + val = regs->sp; > + break; >

Re: [PATCH] workqueue: Fix NULL pointer dereference

2017-10-26 Thread Li Bin
Hi, Jiangshan on 2017/10/26 23:55, Lai Jiangshan wrote: > On Tue, Oct 24, 2017 at 9:18 AM, Li Bin wrote: > > I remember that softirq can be invoked when irq_eixt(), > and in this case the current->current_pwq is also NULL > if __queue_work() is called in the soft irq. >

[PATCH v2] workqueue: Fix NULL pointer dereference

2017-10-27 Thread Li Bin
context, we shouldn't use the 'current' to check the condition. Reported-by: Xiaofei Tan Signed-off-by: Li Bin --- kernel/workqueue_internal.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kernel/workqueue_internal.h b/kernel/workqueue_internal.h index

[PATCH] arm64: ftrace: function_graph: dump real return addr in call trace

2015-10-15 Thread Li Bin
) [ 198.591092] ---[ end trace 6a346f8f20949ac8 ]--- This patch fix it, and dump the real return address in the call trace. Signed-off-by: Li Bin --- arch/arm64/kernel/traps.c | 31 +++ 1 file changed, 31 insertions(+) diff --git a/arch/arm64/kernel/traps.c b/arch/arm64/kernel

[PATCH 0/2] sched: pick and check task if double_lock_balance() unlock the rq

2018-04-12 Thread Li Bin
Li Bin (1): sched/deadline.c: pick and check task if double_lock_balance() unlock the rq Zhou Chengming (1): sched/rt.c: pick and check task if double_lock_balance() unlock the rq kernel/sched/deadline.c | 48 +++- kernel/sched/rt.c

[PATCH 2/2] sched/deadline.c: pick and check task if double_lock_balance() unlock the rq

2018-04-12 Thread Li Bin
task_A is still on the rq1, even though we hold the rq1->lock. This patch will repick the first pushable task to be sure the task is still on the rq. Signed-off-by: Li Bin --- kernel/sched/deadline.c | 48 +++- 1 file changed, 23 insertions(+), 25 delet

[PATCH 1/2] sched/rt.c: pick and check task if double_lock_balance() unlock the rq

2018-04-12 Thread Li Bin
ly on these checks of task_A to make sure the task_A is still on the rq1, even though we hold the rq1->lock. This patch will repick the first pushable task to be sure the task is still on the rq. Signed-off-by: Zhou Chengming Signed-off-by: Li Bin --- k

[PATCH v2 0/2] sched: pick and check task if double_lock_balance() unlock the rq

2018-04-12 Thread Li Bin
Changes in v2: * Only change the comment and coding style as suggested by Steve Li Bin (1): sched/deadline.c: pick and check task if double_lock_balance() unlock the rq Zhou Chengming (1): sched/rt.c: pick and check task if double_lock_balance() unlock the rq kernel/sched

[PATCH v2 2/2] sched/deadline.c: pick and check task if double_lock_balance() unlock the rq

2018-04-12 Thread Li Bin
task_A is still on the rq1, even though we hold the rq1->lock. This patch will repick the first pushable task to be sure the task is still on the rq. Signed-off-by: Li Bin Acked-by: Peter Zijlstra (Intel) Reviewed-by: Steven Rostedt (VMware) --- kernel/

[PATCH v2 1/2] sched/rt.c: pick and check task if double_lock_balance() unlock the rq

2018-04-12 Thread Li Bin
ly on these checks of task_A to make sure the task_A is still on the rq1, even though we hold the rq1->lock. This patch will repick the first pushable task to be sure the task is still on the rq. Signed-off-by: Zhou Chengming Signed-off-by: Li Bin Acked-by: Peter Zijlstra (Intel) Review

Re: sched: spinlock recursion in sched_rr_get_interval

2014-12-25 Thread Li Bin
> SPIN_BUG_ON(lock->owner == current, "recursion"); > Hello, Does ACCESS_ONCE() can help this issue? I have no evidence that its lack is responsible for the issue, but I think here need it indeed. Is that right? SPIN_BUG_ON(ACCESS_ONCE(lock->owner) == current, "

Re: sched: spinlock recursion in sched_rr_get_interval

2014-12-27 Thread Li Bin
On 2014/12/26 15:01, Sasha Levin wrote: > On 12/26/2014 01:45 AM, Li Bin wrote: >> On 2014/7/8 4:05, Peter Zijlstra wrote: >>>> On Mon, Jul 07, 2014 at 09:55:43AM -0400, Sasha Levin wrote: >>>>>> I've also had this one, which looks similar: >>>

Re: [PATCH 2/2] livepatch: disable/enable_patch manners for interdependent patches

2015-01-22 Thread Li Bin
On 2015/1/22 21:05, Josh Poimboeuf wrote: > On Thu, Jan 22, 2015 at 05:54:23PM +0800, Li Bin wrote: >> On 2015/1/22 16:39, Li Bin wrote: >>> On 2015/1/22 11:51, Josh Poimboeuf wrote: >>>> On Thu, Jan 22, 2015 at 08:42:29AM +0800, Li Bin wrote: >>>>> On

Re: [RFC 0/4] arm64: add livepatch support

2015-04-23 Thread Li Bin
t support it, but by adding a helper function to > ftrace, we will be able to support livepatch on arch's which don't support > this option. > This is not correct for the case that the prologue of the old and new function is different. Thanks, Li Bin > I submit thi

Re: [RFC 0/4] arm64: add livepatch support

2015-05-27 Thread Li Bin
On 2015/4/24 14:05, Masami Hiramatsu wrote: > (2015/04/24 12:24), Li Bin wrote: >> On 2015/4/24 10:44, AKASHI Takahiro wrote: >>> This patchset enables livepatch support on arm64. >>> >>> Livepatch was merged in v4.0, and allows replacying a function dynamicall

[RFC PATCH 0/5] livepatch: add support on arm64

2015-05-27 Thread Li Bin
register mov operation have ralatively small impact on performance. This patchset has been tested on arm64 platform. Li Bin (4): livepatch: ftrace: arm64: Add support for DYNAMIC_FTRACE_WITH_REGS livepatch: ftrace: add ftrace_function_stub_ip function livepatch: ftrace: arm64: Add support for

[RFC PATCH 2/5] livepatch: ftrace: add ftrace_function_stub_ip function

2015-05-27 Thread Li Bin
e function. EXAMPLES: ... stub_ip = ftrace_function_stub_ip(func_addr); ftrace_set_filter_ip(&ftrace_ops, stub_ip, 0, 0); register_ftrace_function(&ftrace_ops); ... Signed-off-by: Li Bin --- include/linux/ftrace.h |1 + kernel/trace/ftrace.c | 32 2

[RFC PATCH 4/5] livepatch: arm64: add support for livepatch on arm64

2015-05-27 Thread Li Bin
This patch add support for livepatch on arm64 based on the gcc -mfentry feature and the ftrace DYNAMIC_FTRACE_WITH_REGS feature. Signed-off-by: Li Bin --- arch/arm64/Kconfig |3 ++ arch/arm64/include/asm/livepatch.h | 45 arch/arm64

[RFC PATCH 1/5] livepatch: ftrace: arm64: Add support for DYNAMIC_FTRACE_WITH_REGS

2015-05-27 Thread Li Bin
such as kernel live patching. This patch adds DYNAMIC_FTRACE_WITH_REGS feature support for arm64 architecture. Signed-off-by: Li Bin --- arch/arm64/Kconfig |1 + arch/arm64/include/asm/ftrace.h |4 ++ arch/arm64/kernel/entry-ftrace.S | 95

[RFC PATCH 3/5] livepatch: ftrace: arm64: Add support for -mfentry on arm64

2015-05-27 Thread Li Bin
_' and not '_mcount' and is done before the function's stack frame is set up. So __fentry__ is responsibel to protect parameter registers and corruptible registers. Signed-off-by: Li Bin --- arch/arm64/Kconfig |1 + arch/arm64/include/asm/ftrace.h

[RFC PATCH 5/5] livepatch: arm64: support relocation in a module

2015-05-27 Thread Li Bin
From: Xie XiuQi This patch implement klp_write_module_reloc on arm64 platform. Signed-off-by: Xie XiuQi Signed-off-by: Li Bin --- arch/arm64/kernel/livepatch.c |7 +- arch/arm64/kernel/module.c| 355 + 2 files changed, 186 insertions(+), 176

Re: [PATCH] livepatch: match function return value type with prototype

2015-05-27 Thread Li Bin
On 2015/5/26 15:32, Jiri Slaby wrote: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA256 > > On 05/26/2015, 06:46 AM, Minfei Huang wrote: >> On Tue, May 26, 2015 at 10:44 AM, Li Bin >> wrote: >>> The klp_is_module return type should be boolean. >>>

Re: [RFC 0/4] arm64: add livepatch support

2015-05-27 Thread Li Bin
on arm64 with gcc -pg look like as following: func: stp x29, x30, [sp, -48]! add x29, sp, 0 mov x1, x30 str w0, [x29,28] mov x0, x1 bl _mcount ... Thanks, Li Bin > Thanks, > -- To unsubscribe from this l

Re: [RFC PATCH 1/5] livepatch: ftrace: arm64: Add support for DYNAMIC_FTRACE_WITH_REGS

2015-05-29 Thread Li Bin
On 2015/5/29 15:14, Paul Bolle wrote: > On Thu, 2015-05-28 at 13:51 +0800, Li Bin wrote: >> --- a/arch/arm64/Kconfig >> +++ b/arch/arm64/Kconfig > >> select HAVE_DYNAMIC_FTRACE >> +select HAVE_DYNAMIC_FTRACE_WITH_REGS if HAVE_DYNAMIC_FTRAC

[PATCH] livepatch: add sysfs interface /sys/kernel/livepatch/state

2015-06-16 Thread Li Bin
tch State --- 1 klp_test1 enabled 2 klp_test2 enabled 3 klp_test3 disabled --- Signed-off-by: Li

Re: [PATCH] livepatch: add sysfs interface /sys/kernel/livepatch/state

2015-06-17 Thread Li Bin
On 2015/6/17 16:13, Miroslav Benes wrote: > On Wed, 17 Jun 2015, Li Bin wrote: > >> The added sysfs interface /sys/kernel/livepatch/state is read-only, >> it shows the patches that have been applied, incluing the stack index >> and the state of each patch. >> >&g

Re: [PATCH] livepatch: add sysfs interface /sys/kernel/livepatch/state

2015-06-17 Thread Li Bin
On 2015/6/17 21:20, Miroslav Benes wrote: > On Wed, 17 Jun 2015, Li Bin wrote: > >> On 2015/6/17 16:13, Miroslav Benes wrote: >>> On Wed, 17 Jun 2015, Li Bin wrote: >> >>> The list of applied patches can be obtained just by 'ls >>> /sys/kernel/

Re: [RFC PATCH 0/5] livepatch: add support on arm64

2015-06-02 Thread Li Bin
On 2015/6/2 10:15, AKASHI Takahiro wrote: > On 05/30/2015 09:01 AM, Masami Hiramatsu wrote: >> On 2015/05/28 14:51, Li Bin wrote: >>> This patchset propose a method for gcc -mfentry feature(profile >>> before prologue) implementation for arm64, and propose the livep

[PATCH] sched: fix typo in error message

2018-04-24 Thread Li Bin
Signed-off-by: Li Bin --- kernel/sched/topology.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c index 64cc564..cf15c1c 100644 --- a/kernel/sched/topology.c +++ b/kernel/sched/topology.c @@ -1618,7 +1618,7 @@ static struct

[PATCH] kprobes: Update Documentation/kprobes.txt

2014-09-24 Thread Li Bin
The patch 125e564("Move Kconfig.instrumentation to arch/Kconfig and init/Kconfig") had removed the "Instrumentation Support" menu, and the configurations under this had be moved to "General setup". Update Documentation/kprobes.txt to reflect this change. Signed-off-

Re: [PATCH v12 00/10] arm64: Add kernel probes (kprobes) support

2016-05-11 Thread Li Bin
regs, (long)jp->entry); preempt_disable(); + pause_graph_tracing(); return 1; } @@ -757,6 +758,7 @@ int __kprobes longjmp_break_handler(struct kprobe *p, struct pt_regs *regs) show_regs(regs); BUG(); }

Re: [PATCH v2 2/2] arm64: ftrace: fix the comments for ftrace_modify_code

2015-12-03 Thread Li Bin
I will also update the comment for the other arch that using the similar description, such as ia64/metag/powerpc/sh/x86. Thanks, Li Bin on 2015/12/4 10:50, Steven Rostedt wrote: > On Fri, 4 Dec 2015 10:18:39 +0800 > Li Bin wrote: > >> There is no need to worry about module te

[PATCH 1/5] ia64: ftrace: fix the comments for ftrace_modify_code

2015-12-03 Thread Li Bin
. Cc: Tony Luck Cc: Fenghua Yu Cc: linux-i...@vger.kernel.org Suggested-by: Steven Rostedt Signed-off-by: Li Bin --- arch/ia64/kernel/ftrace.c | 13 ++--- 1 files changed, 6 insertions(+), 7 deletions(-) diff --git a/arch/ia64/kernel/ftrace.c b/arch/ia64/kernel/ftrace.c index 3b0c2aa..a4

[PATCH 0/5] ftrace: fix ftrace misleading comments for arch using it

2015-12-03 Thread Li Bin
...@vger.kernel.org Cc: Thomas Gleixner "Cc: H. Peter Anvin" Cc: x...@kernel.org Li Bin (5): ia64: ftrace: fix the comments for ftrace_modify_code metag: ftrace: fix the comments for ftrace_modify_code powerpc: ftrace: fix the comments for ftrace_modify_code sh: ftrace: fix the co

[PATCH 2/5] metag: ftrace: fix the comments for ftrace_modify_code

2015-12-03 Thread Li Bin
. Cc: James Hogan Cc: linux-me...@vger.kernel.org Suggested-by: Steven Rostedt Signed-off-by: Li Bin --- arch/metag/kernel/ftrace.c | 12 ++-- 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/arch/metag/kernel/ftrace.c b/arch/metag/kernel/ftrace.c index ed1d685..e5d71b1 1

[PATCH 4/5] sh: ftrace: fix the comments for ftrace_modify_code

2015-12-03 Thread Li Bin
. Cc: linux...@vger.kernel.org Suggested-by: Steven Rostedt Signed-off-by: Li Bin --- arch/sh/kernel/ftrace.c | 13 ++--- 1 files changed, 6 insertions(+), 7 deletions(-) diff --git a/arch/sh/kernel/ftrace.c b/arch/sh/kernel/ftrace.c index 079d70e..b696f92 100644 --- a/arch/sh/kernel/ftr

[PATCH 3/5] powerpc: ftrace: fix the comments for ftrace_modify_code

2015-12-03 Thread Li Bin
. Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Michael Ellerman Cc: linuxppc-...@lists.ozlabs.org Suggested-by: Steven Rostedt Signed-off-by: Li Bin --- arch/powerpc/kernel/ftrace.c | 13 ++--- 1 files changed, 6 insertions(+), 7 deletions(-) diff --git a/arch/powerpc/kernel/ftrac

[PATCH 5/5] x86: ftrace: fix the comments for ftrace_modify_code_direct

2015-12-03 Thread Li Bin
. Cc: Thomas Gleixner Cc: "H. Peter Anvin" Cc: x...@kernel.org Suggested-by: Steven Rostedt Signed-off-by: Li Bin --- arch/x86/kernel/ftrace.c | 13 ++--- 1 files changed, 6 insertions(+), 7 deletions(-) diff --git a/arch/x86/kernel/ftrace.c b/arch/x86/kernel/ftrace.c index 3

[PATCH v2 2/5] metag: ftrace: fix the comments for ftrace_modify_code

2015-12-05 Thread Li Bin
. Cc: James Hogan Cc: linux-me...@vger.kernel.org Suggested-by: Steven Rostedt Signed-off-by: Li Bin --- arch/metag/kernel/ftrace.c | 11 +-- 1 files changed, 5 insertions(+), 6 deletions(-) diff --git a/arch/metag/kernel/ftrace.c b/arch/metag/kernel/ftrace.c index ed1d685..ac8c039 1

[PATCH v2 0/5] ftrace: fix ftrace misleading comments for arch using it

2015-12-05 Thread Li Bin
...@vger.kernel.org Cc: Thomas Gleixner "Cc: H. Peter Anvin" Cc: x...@kernel.org Li Bin (5): ia64: ftrace: fix the comments for ftrace_modify_code metag: ftrace: fix the comments for ftrace_modify_code powerpc: ftrace: fix the comments for ftrace_modify_code sh: ftrace: fix the co

[PATCH v2 1/5] ia64: ftrace: fix the comments for ftrace_modify_code

2015-12-05 Thread Li Bin
. Cc: Tony Luck Cc: Fenghua Yu Cc: linux-i...@vger.kernel.org Suggested-by: Steven Rostedt Signed-off-by: Li Bin --- arch/ia64/kernel/ftrace.c | 12 +--- 1 files changed, 5 insertions(+), 7 deletions(-) diff --git a/arch/ia64/kernel/ftrace.c b/arch/ia64/kernel/ftrace.c index 3b0c2aa..ce

[PATCH v2 4/5] sh: ftrace: fix the comments for ftrace_modify_code

2015-12-05 Thread Li Bin
. Cc: linux...@vger.kernel.org Suggested-by: Steven Rostedt Signed-off-by: Li Bin --- arch/sh/kernel/ftrace.c | 12 +--- 1 files changed, 5 insertions(+), 7 deletions(-) diff --git a/arch/sh/kernel/ftrace.c b/arch/sh/kernel/ftrace.c index 079d70e..38993e0 100644 --- a/arch/sh/kernel/ftr

[PATCH v2 3/5] powerpc: ftrace: fix the comments for ftrace_modify_code

2015-12-05 Thread Li Bin
. Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Michael Ellerman Cc: linuxppc-...@lists.ozlabs.org Suggested-by: Steven Rostedt Signed-off-by: Li Bin --- arch/powerpc/kernel/ftrace.c | 12 +--- 1 files changed, 5 insertions(+), 7 deletions(-) diff --git a/arch/powerpc/kernel/ftrac

[PATCH v2 5/5] x86: ftrace: fix the comments for ftrace_modify_code_direct

2015-12-05 Thread Li Bin
. Cc: Thomas Gleixner Cc: "H. Peter Anvin" Cc: x...@kernel.org Suggested-by: Steven Rostedt Signed-off-by: Li Bin --- arch/x86/kernel/ftrace.c | 12 +--- 1 files changed, 5 insertions(+), 7 deletions(-) diff --git a/arch/x86/kernel/ftrace.c b/arch/x86/kernel/ftrace.c index 3

Re: [PATCH 5/5] x86: ftrace: fix the comments for ftrace_modify_code_direct

2015-12-05 Thread Li Bin
on 2015/12/6 6:52, Steven Rostedt wrote: > On Sat, 5 Dec 2015 18:12:57 +0100 (CET) > Thomas Gleixner wrote: > >> On Fri, 4 Dec 2015, Li Bin wrote: >>> --- a/arch/x86/kernel/ftrace.c >>> +++ b/arch/x86/kernel/ftrace.c >>> @@ -106,13 +106,12 @@ ftrace_mod

[PATCH] arm64: ftrace: stop using kstop_machine to enable/disable tracing

2015-11-27 Thread Li Bin
: # 3.18+ Signed-off-by: Li Bin --- arch/arm64/kernel/ftrace.c |5 + 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/arch/arm64/kernel/ftrace.c b/arch/arm64/kernel/ftrace.c index c851be7..9669b33 100644 --- a/arch/arm64/kernel/ftrace.c +++ b/arch/arm64/kernel/ftrace.c @@ -93,6

[PATCH] livepatch: fix race between enabled_store() and klp_unregister_patch()

2015-11-29 Thread Li Bin
lp_mutex);| |-klp_free_patch(); | |-mutex_unlock(&klp_mutex); |-[process the patch's state]| |-mutex_unlock(&klp_mutex) | Fix this race condition by adding klp_is_patch_registered() check in enabled_store() after get the lock klp_mutex. Signed-off-by: Li Bin

[PATCH] ftrace: fix a typo in comment

2015-11-30 Thread Li Bin
s/ARCH_SUPPORT_FTARCE_OPS/ARCH_SUPPORTS_FTARCE_OPS Signed-off-by: Li Bin --- kernel/trace/ftrace.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c index 3f743b1..eb4a881 100644 --- a/kernel/trace/ftrace.c +++ b/kernel/trace

[PATCH v2] ftrace: fix a typo in comment

2015-11-30 Thread Li Bin
s/ARCH_SUPPORT_FTARCE_OPS/ARCH_SUPPORTS_FTRACE_OPS Signed-off-by: Li Bin --- kernel/trace/ftrace.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c index 3f743b1..0033e05 100644 --- a/kernel/trace/ftrace.c +++ b/kernel/trace

[PATCH v2 1/2] arm64: ftrace: stop using kstop_machine to enable/disable tracing

2015-12-03 Thread Li Bin
uot;, that can be executed by one thread of execution as they are being modified by another thread of execution without requiring explicit synchronization. Signed-off-by: Li Bin --- arch/arm64/kernel/ftrace.c |5 + 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/arch/ar

[PATCH v2 2/2] arm64: ftrace: fix the comments for ftrace_modify_code

2015-12-03 Thread Li Bin
no longer do any modifications to that module's text. The update to make functions be traced or not is done under the ftrace_lock mutex as well. Signed-off-by: Li Bin --- arch/arm64/kernel/ftrace.c |5 + 1 files changed, 1 insertions(+), 4 deletions(-) diff --git a/arch/arm64/k

[PATCH v2 0/2] arm64: stop using kstop_machine for ftrace

2015-12-03 Thread Li Bin
v2: Based on the comments from Will and Steve, 1. Modify the commit message 2. Fix the misleading comments for ftrace_modify_code Link: https://lkml.org/lkml/2015/12/3/422 Li Bin (2): arm64: ftrace: stop using kstop_machine to enable/disable tracing arm64: ftrace: fix the comments for

Re: [PATCH v2 2/2] arm64: ftrace: fix the comments for ftrace_modify_code

2015-12-03 Thread Li Bin
on 2015/12/4 10:50, Steven Rostedt wrote: > On Fri, 4 Dec 2015 10:18:39 +0800 > Li Bin wrote: > >> There is no need to worry about module text disappearing case, >> because that ftrace has a module notifier that is called when >> a module is being unloaded and bef

[PATCH v3 2/2] arm64: ftrace: fix the comments for ftrace_modify_code

2015-12-03 Thread Li Bin
trace. Suggested-by: Steven Rostedt Signed-off-by: Li Bin --- arch/arm64/kernel/ftrace.c | 11 +-- 1 files changed, 5 insertions(+), 6 deletions(-) diff --git a/arch/arm64/kernel/ftrace.c b/arch/arm64/kernel/ftrace.c index 9669b33..8f7005b 100644 --- a/arch/arm64/kernel/ftrace.c +++ b/arch/

[PATCH v3 0/2] arm64: stop using kstop_machine for ftrace

2015-12-03 Thread Li Bin
v2: Based on the comments from Will and Steve, 1. Modify the commit message 2. Fix the misleading comments for ftrace_modify_code v3: Modify the comments again based on the comment from Steve. Link: https://lkml.org/lkml/2015/12/3/422 Li Bin (2): arm64: ftrace: stop using kstop_machine to

[PATCH v3 1/2] arm64: ftrace: stop using kstop_machine to enable/disable tracing

2015-12-03 Thread Li Bin
uot;, that can be executed by one thread of execution as they are being modified by another thread of execution without requiring explicit synchronization. Signed-off-by: Li Bin Reviewed-by: Steven Rostedt --- arch/arm64/kernel/ftrace.c |5 + 1 files changed, 5 insertions(+), 0 deletion

[PATCH] recordmcount: arm64: replace the ignored mcount call into nop

2015-10-28 Thread Li Bin
bring performance overhead, such as do_mem_abort (in .exception.text section). This patch make the call mcount to nop for this case in recordmcount. Signed-off-by: Li Bin --- scripts/recordmcount.c | 23 ++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a

[PATCH] recordmcount: x86: assign a meaningful value to rel_type_nop

2015-10-28 Thread Li Bin
-by: Li Bin --- scripts/recordmcount.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c index 3d1984e..8cc020b 100644 --- a/scripts/recordmcount.c +++ b/scripts/recordmcount.c @@ -345,6 +345,7 @@ do_file(char const *const

livepatch: match function return value type with prototype

2015-05-25 Thread Li Bin
The klp_is_module return type should be boolean. Signed-off-by: Li Bin --- kernel/livepatch/core.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/kernel/livepatch/core.c b/kernel/livepatch/core.c index 284e269..30e9339 100644 --- a/kernel/livepatch/core.c +++ b/kernel

[PATCH] livepatch: match function return value type with prototype

2015-05-25 Thread Li Bin
The klp_is_module return type should be boolean. Signed-off-by: Li Bin --- kernel/livepatch/core.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/kernel/livepatch/core.c b/kernel/livepatch/core.c index 284e269..30e9339 100644 --- a/kernel/livepatch/core.c +++ b/kernel

[kpatch] [PATCH] livepatch v7: move x86 specific ftrace handler code to arch/x86

2014-12-18 Thread Li Bin
The execution flow redirection related implemention in the livepatch ftrace handler is depended on the specific architecture. This patch introduces klp_arch_set_pc(like kgdb_arch_set_pc) interface to change the pt_regs. Signed-off-by: Li Bin --- arch/x86/include/asm/livepatch.h |5

[PATCH] ftrace: fix typo in comment

2014-12-18 Thread Li Bin
%s/ARCH_SUPPORT_FTARCE_OPS/ARCH_SUPPORTS_FTRACE_OPS/ Signed-off-by: Li Bin --- kernel/trace/ftrace.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c index 929a733..9473b24 100644 --- a/kernel/trace/ftrace.c +++ b/kernel

[kpatch] [PATCH] livepatch v7: move x86 specific ftrace handler code to arch/x86

2014-12-18 Thread Li Bin
The execution flow redirection related implemention in the livepatch ftrace handler is depended on the specific architecture. This patch introduces klp_arch_set_pc(like kgdb_arch_set_pc) interface to change the pt_regs. Signed-off-by: Li Bin --- arch/x86/include/asm/livepatch.h |5

Re: [kpatch] [PATCH] livepatch v7: move x86 specific ftrace handler code to arch/x86

2014-12-18 Thread Li Bin
Sorry! Bad format, please ignore this patch. On 2014/12/19 13:37, Li Bin wrote: > The execution flow redirection related implemention in the livepatch > ftrace handler is depended on the specific architecture. This patch > introduces klp_arch_set_pc(like kgdb_arch_set_pc) interface

[PATCH resend] kprobes: Update Documentation/kprobes.txt

2015-03-04 Thread Li Bin
The patch 125e564("Move Kconfig.instrumentation to arch/Kconfig and init/Kconfig") had removed the "Instrumentation Support" menu, and the configurations under this had be moved to "General setup". Update Documentation/kprobes.txt to reflect this change. Signed-of

[PATCH 0/2] disable/enable_patch manners for interdependent patches

2015-01-21 Thread Li Bin
enabled if one patch before has dependencies with it and has been disabled. Li Bin (2): livepatch: Revert "livepatch: enforce patch stacking semantics" livepatch: disable/enable_patch manners for interdependent patches kernel/livepatch/cor

[PATCH 1/2] livepatch: Revert "livepatch: enforce patch stacking semantics"

2015-01-21 Thread Li Bin
be able to do new live patch unless disabing the patch1 although there is no dependencies. Signed-off-by: Li Bin --- kernel/livepatch/core.c | 10 -- 1 files changed, 0 insertions(+), 10 deletions(-) diff --git a/kernel/livepatch/core.c b/kernel/livepatch/core.c index bc05d39..7861ed2

[PATCH 2/2] livepatch: disable/enable_patch manners for interdependent patches

2015-01-21 Thread Li Bin
for disable_patch: The patch is unallowed to be disabled if one patch after has dependencies with it and has been enabled. for enable_patch: The patch is unallowed to be enabled if one patch before has dependencies with it and has been disabled. Signed-off-by: Li Bin --- kernel/livepatch

Re: [PATCH 2/2] livepatch: disable/enable_patch manners for interdependent patches

2015-01-21 Thread Li Bin
On 2015/1/21 22:08, Jiri Kosina wrote: > On Wed, 21 Jan 2015, Li Bin wrote: > >> for disable_patch: >> The patch is unallowed to be disabled if one patch after has >> dependencies with it and has been enabled. >> >> for enable_patch: >> The patch is unall

Re: [PATCH 1/2] livepatch: Revert "livepatch: enforce patch stacking semantics"

2015-01-21 Thread Li Bin
On 2015/1/21 22:36, Seth Jennings wrote: > On Wed, Jan 21, 2015 at 03:06:38PM +0100, Jiri Kosina wrote: >> On Wed, 21 Jan 2015, Li Bin wrote: >> >>> This reverts commit 83a90bb1345767f0cb96d242fd8b9db44b2b0e17. >>> >>> The method that only allowing the to

Re: [PATCH 1/2] livepatch: Revert "livepatch: enforce patch stacking semantics"

2015-01-21 Thread Li Bin
On 2015/1/21 17:07, Li Bin wrote: > This reverts commit 83a90bb1345767f0cb96d242fd8b9db44b2b0e17. > > The method that only allowing the topmost patch on the stack to be > enabled or disabled is unreasonable. Such as the following case: > > - do live patch1 >

Re: [PATCH 2/2] livepatch: disable/enable_patch manners for interdependent patches

2015-01-22 Thread Li Bin
On 2015/1/22 11:51, Josh Poimboeuf wrote: > On Thu, Jan 22, 2015 at 08:42:29AM +0800, Li Bin wrote: >> On 2015/1/21 22:08, Jiri Kosina wrote: >>> On Wed, 21 Jan 2015, Li Bin wrote: >>> By this you limit the definition of the patch inter-dependency to just >>>

Re: [PATCH 1/2] livepatch: Revert "livepatch: enforce patch stacking semantics"

2015-01-22 Thread Li Bin
On 2015/1/22 17:15, Miroslav Benes wrote: > On Thu, 22 Jan 2015, Li Bin wrote: > >> On 2015/1/21 17:07, Li Bin wrote: >>> This reverts commit 83a90bb1345767f0cb96d242fd8b9db44b2b0e17. >>> >>> The method that only allowing the topmost patch on the

Re: [PATCH 2/2] livepatch: disable/enable_patch manners for interdependent patches

2015-01-22 Thread Li Bin
On 2015/1/22 16:39, Li Bin wrote: > On 2015/1/22 11:51, Josh Poimboeuf wrote: >> On Thu, Jan 22, 2015 at 08:42:29AM +0800, Li Bin wrote: >>> On 2015/1/21 22:08, Jiri Kosina wrote: >>>> On Wed, 21 Jan 2015, Li Bin wrote: >>>> By this you limit the defini

Re: [PATCH 2/2] arm64: Fix watchpoint recursion when single-step is wrongly triggered in irq

2016-04-07 Thread Li Bin
Hi Pratyush, on 2016/4/4 13:17, Pratyush Anand wrote: > Hi Li, > > On 31/03/2016:08:45:05 PM, Li Bin wrote: >> Hi Pratyush, >> >> on 2016/3/21 18:24, Pratyush Anand wrote: >>> On 21/03/2016:08:37:50 AM, He Kuang wrote: >>>> On arm64, watchpoin

Re: [PATCH 2/2] arm64: Fix watchpoint recursion when single-step is wrongly triggered in irq

2016-04-08 Thread Li Bin
on 2016/4/8 13:14, Pratyush Anand wrote: > Hi Li, > > On 07/04/2016:07:34:37 PM, Li Bin wrote: >> Hi Pratyush, >> >> on 2016/4/4 13:17, Pratyush Anand wrote: >>> Hi Li, >>> >>> On 31/03/2016:08:45:05 PM, Li Bin wrote: >>>&g

[PATCH] kprobes: fix race condition in __unregister_kprobe_top

2016-04-19 Thread Li Bin
, in exception handler, because the break_handler has been set NULL, it will not setup_singlestep, and will return to the original instrucion... To fix this bug, __unregister_kprobe_top call the synchronize_sched() before clearing the handler. Signed-off-by: Li Bin --- kernel/kprobes.c |1

Re: [PATCH v11 5/9] arm64: Kprobes with single stepping support

2016-04-19 Thread Li Bin
Hi David, on 2016/3/9 13:32, David Long wrote: > +int __kprobes arch_prepare_kprobe(struct kprobe *p) > +{ > + unsigned long probe_addr = (unsigned long)p->addr; Here should verify the addr alignment: if (probe_addr & 0x3) return -EINVAL;

Re: [PATCH 2/2] arm64: Fix watchpoint recursion when single-step is wrongly triggered in irq

2016-03-31 Thread Li Bin
> > ~Pratyush > > [1] > https://github.com/pratyushanand/linux/commit/7623c8099ac22eaa00e7e0f52430f7a4bd154652 This patch did not consider that, when excetpion return, the singlestep flag should be restored, otherwise the right singlestep will not triggered. Right? Thanks, Li Bin

[PATCH 1/3] recordmcount: fix endianness handling bug for nop_mcount

2015-10-30 Thread Li Bin
In nop_mcount, shdr->sh_offset and welp->r_offset should handle endianness properly, otherwise it will trigger Segmentation fault if the recordmcount main and file.o have different endianness. Cc: # 3.0+ Signed-off-by: Li Bin --- scripts/recordmcount.h | 5 +++-- 1 file changed, 3 inse

[PATCH 3/3] recordmcount: arm64: replace the ignored mcount call into nop

2015-10-30 Thread Li Bin
bring performance overhead, such as do_mem_abort (in .exception.text section). This patch make the call mcount to nop for this case in recordmcount. Cc: # 3.18+ Signed-off-by: Li Bin --- scripts/recordmcount.c | 24 +++- 1 file changed, 23 insertions(+), 1 deletion(-) diff

[PATCH 2/3] recordmcount: x86: assign a meaningful value to rel_type_nop

2015-10-30 Thread Li Bin
-by: Li Bin --- scripts/recordmcount.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c index 3d1984e..8cc020b 100644 --- a/scripts/recordmcount.c +++ b/scripts/recordmcount.c @@ -345,6 +345,7 @@ do_file(char const *const fname

[PATCH 0/3] recordmcount: bugfix and amend

2015-10-30 Thread Li Bin
Li Bin (3): recordmcount: fix endianness handling bug for nop_mcount recordmcount: x86: assign a meaningful value to rel_type_nop recordmcount: arm64: replace the ignored mcount call into nop scripts/recordmcount.c | 26 +- scripts/recordmcount.h | 5 +++-- 2 files

[PATCH] arm64: ftrace: fix function_graph tracer panic

2015-09-29 Thread Li Bin
his is because when using function graph tracer, if the traced function return value is in multi regs ([0x-07]), return_to_handler may corrupt them. So in return_to_handler, the parameter regs should be protected properly. Cc: # 3.18+ Signed-off-by: Li Bin --- arch/arm64/kernel/entry-ftrace.S

[PATCH] prctl: fix compat handling for prctl

2018-04-17 Thread Li Bin
The member auxv in prctl_mm_map structure which be shared with userspace is pointer type, but the kernel supporting COMPAT didn't handle it. This patch fix the compat handling for prctl syscall. Signed-off-by: Li Bin --- kernel/sys.c | 41 + 1

[PATCH v2] prctl: fix compat handling for prctl

2018-04-18 Thread Li Bin
The member auxv in prctl_mm_map structure which be shared with userspace is pointer type, but the kernel supporting COMPAT didn't handle it. This patch fix the compat handling for prctl syscall. Signed-off-by: Li Bin --- kernel/sys.c | 42 ++ 1

[PATCH] kernel/Makefile: remove the useless CFLAGS_REMOVE_cgroup-debug.o

2016-01-29 Thread Li Bin
The file cgroup-debug.c had been removed from commit fe6934354f8e (cgroups: move the cgroup debug subsys into cgroup.c to access internal state). Remain the CFLAGS_REMOVE_cgroup-debug.o = $(CC_FLAGS_FTRACE) useless in kernel/Makefile. Signed-off-by: Li Bin --- kernel/Makefile |3 +-- 1

[PATCH] perf svghelper: fix memory leak in svg_build_topology_map

2020-06-02 Thread Li Bin
Fix leak of memory pointed to by t.sib_thr and t.sib_core in svg_build_topology_map in the non-error path. Signed-off-by: Li Bin --- tools/perf/util/svghelper.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/perf/util/svghelper.c b/tools/perf/util/svghelper.c

Re: [PATCH] reduce the time of finding symbols for module

2017-03-28 Thread Li Bin
re validating the livepatch support on aarch64 based on aarch64 mfentry feature. When the community has a clear plan, we are happy to make adaptation and contribute our related work to the community, including the kpatch-build support :-) [1] livepatch: add support on arm64 https://lkml.org/lkml/2015/5/28/54 [2] [AArch64] support -mfentry feature for arm64 https://gcc.gnu.org/ml/gcc-patches/2016-03/msg00756.html [3] Kernel livepatching support in GCC https://gcc.gnu.org/ml/gcc/2015-05/msg00267.html [4] arm64: ftrace with regs for livepatch support http://lists.infradead.org/pipermail/linux-arm-kernel/2016-January/401352.html Thanks, Li Bin > > Jessica > > . >

[PATCH] perf probe: Fix kprobe blacklist checking condition

2017-08-29 Thread Li Bin
7;t be included. Signed-off-by: Li Bin --- tools/perf/util/probe-event.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c index a2670e9..bf7c928 100644 --- a/tools/perf/util/probe-event.c +++ b/tools/perf/util/probe-eve

[PATCH] perf symbols: Fix plt entry calculation for ARM and AARCH64

2017-06-04 Thread Li Bin
adrpx16, 1 <__FRAME_END__+0xf8a8> 594: f944c611ldr x17, [x16,#2440] 598: 91262210add x16, x16, #0x988 59c: d61f0220br x17 NOTES: In addition to ARM and AARCH64, other architectures, such as s390/alpha/mips/parisc/poperpc/sh/sparc/xtensa

Re: [Question] null pointer risk of kernel workqueue

2017-10-22 Thread Li Bin
/ static inline struct worker *current_wq_worker(void) { - if (current->flags & PF_WQ_WORKER) + if (!in_irq() && (current->flags & PF_WQ_WORKER)) return kthread_data(current); return NULL; } Thanks, Li Bin > Thanks. >

Re: [Question] null pointer risk of kernel workqueue

2017-10-23 Thread Li Bin
KER)) >> return kthread_data(current); >> return NULL; >> } > > Yeah, that makes sense to me. Can you please resend the patch with > patch description and SOB? Ok, I will resend the patch soon. Thanks, Li Bin > > Thanks. >

[PATCH] workqueue: Fix NULL pointer dereference

2017-10-23 Thread Li Bin
#x27;t use the 'current' to check the condition. Reported-by: Xiaofei Tan Signed-off-by: Li Bin --- kernel/workqueue_internal.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kernel/workqueue_internal.h b/kernel/workqueue_internal.h index 8635417..d81cb9b 100644 --

Re: Enhancement for PLE handler in KVM

2014-03-12 Thread Li, Bin (Bin)
Thanks, Paolo for the comments Understand the requirement to "fix it for all guest OSes". I will investigate the "new hypercall KVM_HC_HALT_AND_YIELD_TO_CPU that takes an APIC id, donates the quantum to that CPU, and puts the originating CPU in halted state. " Regards Bin -- To unsubscribe

RE: Enhancement for PLE handler in KVM

2014-03-05 Thread Li, Bin (Bin)
pplication related either. And the max. jitter is very close to the pinning vCPU to pCPU case. ( no vCPU stack from same VM in the system - the best we can expect. ) Regards Bin -Original Message- From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo Bo

RE: Enhancement for PLE handler in KVM

2014-03-05 Thread Li, Bin (Bin)
Thanks for the quick response. Inline the comments and also added a typical log. Regards Bin -Original Message- From: Paolo Bonzini [mailto:pbonz...@redhat.com] Sent: Wednesday, March 05, 2014 9:49 AM To: Li, Bin (Bin); k...@vger.kernel.org Cc: Jatania, Neel (Neel); linux-kernel

Enhancement for PLE handler in KVM

2014-03-03 Thread Li, Bin (Bin)
Hello, all. The PLE handler attempts to determine an alternate vCPU to schedule. In some cases the wrong vCPU is scheduled and performance suffers. This patch allows for the guest OS to signal, using a hypercall, that it's starting/ending a critical section. Using this information in the P

RE: Enhancement for PLE handler in KVM

2014-03-07 Thread Li, Bin (Bin)
kvm-intel ple_window=16384 Regards Bin -Original Message- From: Marcelo Tosatti [mailto:mtosa...@redhat.com] Sent: Thursday, March 06, 2014 10:07 PM To: Li, Bin (Bin) Cc: Paolo Bonzini; k...@vger.kernel.org; Jatania, Neel (Neel); linux-kernel@vger.kernel.org; Peter Zijlstra; Mike Galbraith; Ch

RE: Enhancement for PLE handler in KVM

2014-03-07 Thread Li, Bin (Bin)
windows ). Is there any concern regarding to the enhancement we need to address? Or more work need to be done? Regards Bin -Original Message- From: Marcelo Tosatti [mailto:mtosa...@redhat.com] Sent: Friday, March 07, 2014 12:42 PM To: Li, Bin (Bin) Cc: Paolo Bonzini; k...@vger.kernel.org

  1   2   >