Re: [PATCH] uprobes: Improve scalability by reducing the contention on siglock

From
Oleg Nesterov <oleg@redhat.com>
Date
2024-08-08 13:17:41
Also in
bpf, linux-trace-kernel, lkml
Reply to
Liao, Chang, 2024-08-08
On 08/08, Liao, Chang wrote:

在 2024/8/8 18:28, Oleg Nesterov 写道:
quoted
--- x/kernel/events/uprobes.c
+++ x/kernel/events/uprobes.c
@@ -2308,9 +2308,10 @@ static void handle_singlestep(struct upr
 	utask->state = UTASK_RUNNING;
 	xol_free_insn_slot(current);

-	spin_lock_irq(&current->sighand->siglock);
-	recalc_sigpending(); /* see uprobe_deny_signal() */
-	spin_unlock_irq(&current->sighand->siglock);
+	if (utask->xxx) {
+		set_thread_flag(TIF_SIGPENDING);
+		utask->xxx = 0;
+	}
Agree, if no more discussion about this flag, I will just send v2 today.
Please also resend the previous patch a 1/2, this one as 2/2.

Oleg.
Thread (11 messages) 11 messages, 2 authors, last reply 2024-08-08
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help