<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/include/linux/tty.h, branch linux-2.6.31.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.31.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.31.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2009-10-05T16:32:34Z</updated>
<entry>
<title>tty: Add a full port_close function</title>
<updated>2009-10-05T16:32:34Z</updated>
<author>
<name>Alan Cox</name>
</author>
<published>2009-09-19T20:13:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4260dc792fabfd20c8644fa9414b2ae48372365f'/>
<id>urn:sha1:4260dc792fabfd20c8644fa9414b2ae48372365f</id>
<content type='text'>
commit 7ca0ff9ab3218ec443a7a9ad247e4650373ed41e upstream.

Now we are extracting out methods for shutdown and the like we can add a
proper tty_port_close method that knows all the innards of the tty closing
process and hides the lot from the caller.

At some point in the future this will be paired with a similar open()
helper and the drivers can stick to hardware management.

Signed-off-by: Alan Cox &lt;alan@linux.intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>pty: avoid forcing 'low_latency' tty flag</title>
<updated>2009-07-29T19:15:56Z</updated>
<author>
<name>OGAWA Hirofumi</name>
</author>
<published>2009-07-29T19:15:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e043e42bdb66885b3ac10d27a01ccb9972e2b0a3'/>
<id>urn:sha1:e043e42bdb66885b3ac10d27a01ccb9972e2b0a3</id>
<content type='text'>
We really don't want to mark the pty as a low-latency device, because as
Alan points out, the -&gt;write method can be called from an IRQ (ppp?),
and that means we can't use -&gt;low_latency=1 as we take mutexes in the
low_latency case.

So rather than using low_latency to force the written data to be pushed
to the ldisc handling at 'write()' time, just make the reader side (or
the poll function) do the flush when it checks whether there is data to
be had.

This also fixes the problem with lost data in an emacs compile buffer
(bugzilla 13815), and we can thus revert the low_latency pty hack
(commit 3a54297478e6578f96fd54bf4daa1751130aca86: "pty: quickfix for the
pty ENXIO timing problems").

Signed-off-by: OGAWA Hirofumi &lt;hirofumi@mail.parknet.co.jp&gt;
Tested-by: Aneesh Kumar K.V &lt;aneesh.kumar@linux.vnet.ibm.com&gt;
[ Modified to do the tty_flush_to_ldisc() inside input_available_p() so
  that it triggers for both read and poll()  - Linus]
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>tty: rewrite the ldisc locking</title>
<updated>2009-06-11T15:51:01Z</updated>
<author>
<name>Alan Cox</name>
</author>
<published>2009-06-11T11:50:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c65c9bc3efa5589f691276bb9db689119a711222'/>
<id>urn:sha1:c65c9bc3efa5589f691276bb9db689119a711222</id>
<content type='text'>
There are several pretty much unfixable races in the old ldisc code, especially
with respect to pty behaviour and also to hangup. It's easier to rewrite the
code than simply try and patch it up.

This patch
- splits the ldisc from the tty (so we will be able to refcount it more cleanly
  later)
- introduces a mutex lock for ldisc changing on an active device
- fixes the complete mess that hangup caused
- implements hopefully correct setldisc/close/hangup locking

There are still some problems around pty pairs that have always been there but
at least it is now possible to understand the code and fix further problems.

This fixes the following known bugs
- hang up can leak ldisc references
- hang up may not call open/close on ldisc in a matched way
- pty/tty pairs can deadlock during an ldisc change
- reading the ldisc proc files can cause every ldisc to be loaded

and probably a few other of the mysterious ldisc race reports.

I'm sure it also adds the odd new one.

Signed-off-by: Alan Cox &lt;alan@linux.intel.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>tty: Extract various bits of ldisc code</title>
<updated>2009-06-11T15:51:01Z</updated>
<author>
<name>Alan Cox</name>
</author>
<published>2009-06-11T11:48:02Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e8b70e7d3e86319a8b2aaabde3866833d92cd80f'/>
<id>urn:sha1:e8b70e7d3e86319a8b2aaabde3866833d92cd80f</id>
<content type='text'>
Before trying to tackle the ldisc bugs the code needs to be a good deal
more readable, so do the simple extractions of routines first.

Signed-off-by: Alan Cox &lt;alan@linux.intel.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>tty: Implement a drain delay in the tty port</title>
<updated>2009-06-11T15:50:56Z</updated>
<author>
<name>Alan Cox</name>
</author>
<published>2009-06-11T11:25:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1ec739be75a6cb961a46ba0b1982d0edb7f27558'/>
<id>urn:sha1:1ec739be75a6cb961a46ba0b1982d0edb7f27558</id>
<content type='text'>
We need this for devices that cannot flush and wait, but which do not order
data and modem events. Without it we will hang up before all the data
clears the hardware. Needed for the USB changes.

Signed-off-by: Alan Cox &lt;alan@linux.intel.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>tty: Add carrier processing on close to the tty_port core</title>
<updated>2009-06-11T15:50:56Z</updated>
<author>
<name>Alan Cox</name>
</author>
<published>2009-06-11T11:24:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fcc8ac1825d3d0fb81f73bc1a80ebc863168bb56'/>
<id>urn:sha1:fcc8ac1825d3d0fb81f73bc1a80ebc863168bb56</id>
<content type='text'>
Some drivers implement this internally, others miss it out. Push the
behaviour into the core code as that way everyone will do it consistently.

Update the dtr rts method to raise or lower depending upon flags. Having a
single method in this style fits most of the implementations more cleanly than
two funtions.

We need this in place before we tackle the USB side

Signed-off-by: Alan Cox &lt;alan@lxorguk.ukuu.org.uk&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>tty: Introduce some close helpers for ports</title>
<updated>2009-01-02T18:19:40Z</updated>
<author>
<name>Alan Cox</name>
</author>
<published>2009-01-02T13:46:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a6614999e800cf3a134ce93ea46ef837e3c0e76e'/>
<id>urn:sha1:a6614999e800cf3a134ce93ea46ef837e3c0e76e</id>
<content type='text'>
Again this is a lot of common code we can unify

Signed-off-by: Alan Cox &lt;alan@redhat.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>tty: Introduce a tty_port generic block_til_ready</title>
<updated>2009-01-02T18:19:39Z</updated>
<author>
<name>Alan Cox</name>
</author>
<published>2009-01-02T13:46:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=36c621d82b956ff6ff72273f848af53e6c581aba'/>
<id>urn:sha1:36c621d82b956ff6ff72273f848af53e6c581aba</id>
<content type='text'>
Start sucking more commonality out of the drivers into a single piece of
core code.

Signed-off-by: Alan Cox &lt;alan@redhat.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>isicom: redo locking to use tty port locks</title>
<updated>2009-01-02T18:19:38Z</updated>
<author>
<name>Alan Cox</name>
</author>
<published>2009-01-02T13:45:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3e61696bdc2103107674b06d0daf30b76193e922'/>
<id>urn:sha1:3e61696bdc2103107674b06d0daf30b76193e922</id>
<content type='text'>
This helps set the basis for moving block_til_ready into common code. We also
introduce a tty_port_hangup helper as this will also be generally needed.

Signed-off-by: Alan Cox &lt;alan@redhat.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>tty: Pull the dtr raise into tty port</title>
<updated>2009-01-02T18:19:38Z</updated>
<author>
<name>Alan Cox</name>
</author>
<published>2009-01-02T13:45:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5d951fb458f847e5485b5251597fbf326000bb3b'/>
<id>urn:sha1:5d951fb458f847e5485b5251597fbf326000bb3b</id>
<content type='text'>
This moves another per device special out of what should be shared open
wait paths into private methods

Signed-off-by: Alan Cox &lt;alan@redhat.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
