Hi! On 17:44 Thu 21 Apr , Pankaj B wrote: ... > INIT_WORK(&event->work, do_handling_work); > schedule_work(&event->work); > flush_scheduled_work(); > > But the work never gets scheduled. I have put some printks in the > do_handling_work() function. Creating workqueue and queueing > the work to that workqueue doen't work either. I find this a > very strange problem. Does anybody knows about this? > > FYI: my system has heavy IO load when I schedule the work. 1) Why call flush_scheduled_work? This function will wait until do_handling_work is finished. You could just call do_handling_work directly... 2) If you have heavy IO load, it might will up the workqueues. It should not cause total starvation. But if (1) did not solve your problem, try reproducing it while the system is idle. -Michi -- programing a layer 3+4 network protocol for mesh networks see http://michaelblizek.twilightparadox.com _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies