On Fri, Jan 20, 2012 at 12:32 PM, Dave Hylands <dhyla...@gmail.com> wrote:
> Hi Darshan, > HI Dave, > > Replying to all this time.... > Thanks. > > On Thu, Jan 19, 2012 at 9:41 PM, Darshan Ghumare > <darshan.ghum...@gmail.com> wrote: > ...snip... > > 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? > > -- > Dave Hylands > Shuswap, BC, Canada > http://www.davehylands.com > Regards Darshan -- Darshan®
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies