At Thu, 26 Nov 2009 18:12:26 +0900, Tejun Heo wrote: > > Hello, > > 11/26/2009 05:16 PM, Peter Ujfalusi wrote: > >> Takashi, RT workqueue is going away. Do you really need it? > > > > What can be used instead of RT workqueue? > > The tlv320dac33 needs RT workqueue because I need to send the I2C > > command with minimum delay to the codec. If this can not be done > > (the workqueue is delayed), and the codec does not receive the > > command in time, it will literally die. What are the options to > > replace the RT workqueue? > > The problem with RT workqueue is that RT and queue don't really mix > well. To act in real time, it requires all the resource pre-allocated > and dedicated to it making queueing or pooling meaningless. The > original workqueue code created dedicated pool of threads for each > workqueue so it could be used for RT but new implementation uses > shared worker pool, so it can't be used as an interface to dedicated > threads. > > I haven't read the code but, > > * If you need to respond fast, wouldn't you be doing that from IRQ > handler or softirq? Do you need task context? > > * Or is it that it's not triggered by IRQ but once the transfer > started it can't be interrupted? But in this case preempt_disable() > or local_irq_disable() should suffice. The relevant code uses the workqueue as a sort of BH, just triggers from the hard irq handler. If any, we may use a threaded handler or so... thanks, Takashi -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html