Messages in this thread | | | Date | Tue, 17 Jul 2007 21:15:26 +0100 (BST) | From | James Simmons <> | Subject | Re: [PATCH] Use tty_schedule in VT code. |
| |
> James Simmons wrote: > > Because sometimes you do want the delay. In other parts of the tty code we > > do delay. What should be done is > > Correct, so we must stick with the delayed work structure > which requires calling the delayed work function. > > > if (tty->low_latency) > > flush_to_ldisc(&tty->buf.work.work); > > else > > schedule_delayed_work(&tty->buf.work, 1); > > > > Is this acceptable to you? > > That does not make sense to me. > > If you are calling from interrupt context, you do not want > to call flush_to_ldisc() directly regardless of low_latency. > This used to be the way it was done and it ended up causing > deadlocks in just that situation.
The low_latency is used by the drivers in the case where its not in a interrupt context. Well we are trusting the drivers. Now if it is true what you said then tty_flip_buffer_push has a bug. Looking at several drivers including serial devices they set the low_latency flag.
> And the initial schedule has no reason to add the extra delay.
So do you support a non delay work queue as well?
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |