[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Re: some doubts on cache coherence



Hello...

> I think BH are not executed in process context, they are executed

Maybe I am not clear. What I refered by bottom half is the general 
mechanism of deferred procedure. So, in this sense, workqueue can be 
classified as bottom half. And since workqueue is executed by 
keventd/events kernel thread, this means it works on process context.

I hope I clear out the confusion....

>
> I dont think, kernel preemption have any role here. When kernel
> preemption is not enabled and we are in kernel mode (las in your case
> P2 looping on spinloop), after serving any interrupts, we will again
> be put back to that busy loop only, so P2 will keep on looping till
> the spinlock is not release by P1, it does not matter even if the
> quantum of P2 has been expired.

I have corrected my statement as I did in my second post on this thread. 
Grabbing spin lock does disable kernel level preemption ;) And correct, 
spin lock should be held and then released as fast as possible.

regards

Mulyadi


--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/