Messages in this thread | | | Date | Thu, 5 Mar 2015 14:23:06 +0100 | From | Michal Hocko <> | Subject | Re: Synchronization mechanism between wait_for_completion_interruptible_timeout() & complete() |
| |
On Wed 04-03-15 18:46:43, Naveen Kumar Parna wrote: > Hello, > > I have a question regarding the synchronization mechanism between > wait_for_completion_interruptible_timeout() & complete(). I used > complete() API in the ISR Tx interrupt path and > wait_for_completion_interruptible_timeout() in struct file_operations > .write method. > > Let assume a scenario in which Tx interrupt occurred and ISR called > complete() API before any process actually blocked at write method on > wait_for_completion_interruptible_timeout(). > > After a few milli seconds, a process called write() API. Does it gets > blocked on wait_for_completion_interruptible_timeout() for completion > of a specific task to be signaled from new Tx interrupt?
No, see do_wait_for_common resp. complete and x->done handling.
-- Michal Hocko SUSE Labs
| |