lkml.org 
[lkml]   [2014]   [Jun]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [PATCH tty-next 14/22] tty: Remove tty_wait_until_sent_from_close()
Date
From: Arnd Bergmann
> On Monday 16 June 2014 09:17:11 Peter Hurley wrote:
> > tty_wait_until_sent_from_close() drops the tty lock while waiting
> > for the tty driver to finish sending previously accepted data (ie.,
> > data remaining in its write buffer and transmit fifo).
> >
> > However, dropping the tty lock is a hold-over from when the tty
> > lock was system-wide; ie., one lock for all ttys.
> >
> > Since commit 89c8d91e31f267703e365593f6bfebb9f6d2ad01,
> > 'tty: localise the lock', dropping the tty lock has not been necessary.
> >
> > CC: Karsten Keil <isdn@linux-pingi.de>
> > CC: linuxppc-dev@lists.ozlabs.org
> > Signed-off-by: Peter Hurley <peter@hurleysoftware.com>
>
> I don't understand the second half of the changelog, it doesn't seem
> to fit here: there deadlock that we are trying to avoid here happens
> when the *same* tty needs the lock to complete the function that
> sends the pending data. I don't think we do still do that any more,
> but it doesn't seem related to the tty lock being system-wide or not.

While I've not looked at the code in question; my thoughts were that
holding any lock while waiting for output to drain (or anything else
really) probably isn't a good idea.
You might find that something else needs the lock - even if only
some kind of status request.

David

\
 
 \ /
  Last update: 2014-06-17 10:41    [W:0.162 / U:0.108 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site