Thread (9 messages) 9 messages, 4 authors, 2012-01-22
  • (off-list ancestor, not in this archive)
  • SIGKILL · Mulyadi Santosa <hidden> · 2012-01-19
  • SIGKILL · Darshan Ghumare <hidden> · 2012-01-19
  • SIGKILL · Mulyadi Santosa <hidden> · 2012-01-19
  • SIGKILL · Dave Hylands <hidden> · 2012-01-19
  • SIGKILL · Darshan Ghumare <hidden> · 2012-01-20
  • SIGKILL · Dave Hylands <hidden> · 2012-01-20
  • SIGKILL · Darshan Ghumare <hidden> · 2012-01-22
  • SIGKILL · Dave Hylands <hidden> · 2012-01-22
  • SIGKILL · Anand Moon <hidden> · 2012-01-19

SIGKILL

From: Dave Hylands <hidden>
Date: 2012-01-22 05:03:22

Hi Darshan,

On Sat, Jan 21, 2012 at 7:31 PM, Darshan Ghumare
[off-list ref] wrote:
On Fri, Jan 20, 2012 at 12:32 PM, Dave Hylands [off-list ref] wrote:
...snip...
quoted
On Thu, Jan 19, 2012 at 9:41 PM, Darshan Ghumare
[off-list ref] wrote:
...snip...
quoted
What if,
spin_lock_irqsave(&lock, flags);
for ( ; ; )
{
? ? ? ?;
}
spin_lock_irqrestore(&lock, flags);
Since you're using spinlocks and disabling interrupts, this would be
running in kernel space.

On a single core machine - you'll have locked up your entire computer.

On a multi-core machine you'll have locked up one core.

You don't need to use the spinlock, just disabling interrupts is
sufficient. Even on a multicore machine, the spinlocks would just
prevent a second core from executing the code if it tried to acquire
the same spinlock.

I don't think that there is any convenient way to kill such a thread.
IMHO, signals are handled when process is about to switch back to user-mode.
If that is the case then what if, there are two threads(in user-mode) in the
process where one is stuck
in the syscall which has infinite loop & other is executing some task in the
user-mode, then still this process can not be killed?
The one that's stuck in the infinite loop will essnetially lockup one
core. If you have additional cores, then the other threads will
continue to run normally. If you're on a single core machine, then the
other threads will never get a chance to run, ergo thay can't be
killed.

-- 
Dave Hylands
Shuswap, BC, Canada
http://www.davehylands.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help