Re: [REGRESSION] 2.6.39-rc1: f23eb2b breaks console output

From: Alexander Beregalov
Date: Mon Apr 04 2011 - 16:43:04 EST


On 4 April 2011 23:59, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Mon, Apr 4, 2011 at 12:42 PM, Sitsofe Wheeler <sitsofe@xxxxxxxxx> wrote:
>> On Mon, Apr 04, 2011 at 11:15:10PM +0400, Alexander Beregalov wrote:
>>>
>>> commit f23eb2b2b28547fc70df82dd5049eb39bec5ba12 tty: stop using
>>> "delayed_work" in the tty layer
>>> breaks console output for me.
>>
>> Same here - doing a dmesg in an xterm makes the machine hang for about
>> 10 seconds and latencytop whinges that a raw SCSI command took 4000ms to
>> complete (uniprocessor x86 EeePC 900).
>>
>> Additionally, you won't see this problem if you have CONFIG_PREEMPT set
>> but as my config has CONFIG_PREEMPT_VOLUNTARY=y I do see this problem.
>> Reverting f23eb2b2b28547fc70df82dd5049eb39bec5ba12 fixed the problem for
>> me too.
>
> Does this patch make a difference?
Yes, it works on top of 2.6.39-rc1-00184-g78fca1b9
Thanks
>
> The tty ldisc flushing code had this crazy "reflush if we're full"
> logic, which was apparently hiding a problem in N_TTY handling where
> it wouldn't wake things up when the receive-room was opened up again.
>
> When I made it not do timers, the "reflush" logic basically made for
> an infinite loop (before, it used to instead basically poll for the
> event on each timer tick instead).
>
> The attached patch removes the reflush logic, and makes N_TTY instead
> wake up the work when opening up the receive buffer again.
>
> Â Â Â Â Â Â Â Linus
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/