Thread (7 messages) flat view 7 messages, 5 authors, 2013-02-26

Re: [PATCH] ptrace: add ability to retrieve signals without removing from a queue (v2)

From: Andrey Wagin <hidden>
Date: 2013-02-25 10:46:39
Also in: lkml

2013/2/25 Pavel Emelyanov [off-list ref]:
quoted
+     for (i = 0; i < arg.nr; i++) {
+             off = arg.off + i;
+
+             spin_lock_irq(&child->sighand->siglock);
+             list_for_each_entry(q, &pending->list, list) {
+                     if (!off--) {
+                             copy_siginfo(&info, &q->info);
+                             break;
+                     }
+             }
+             spin_unlock_irq(&child->sighand->siglock);
What's the point of arg.nr if you for every single siginfo drop the lock
and perform linear search anyway?
arg.nr may be useful, if we will decide to optimize this part in a
future. Currently the problem with complexity of finding a signal in a
queue is true not only for this code. It exists for delivering
real-time signals as well. Probably in a future this problem will be
fixed for both cases by the same way.

Thanks,
  Andrew
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help