<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/tty, branch v3.10.28</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/tty?h=v3.10.28</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/tty?h=v3.10.28'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2014-01-25T16:27:12Z</updated>
<entry>
<title>serial: amba-pl011: use port lock to guard control register access</title>
<updated>2014-01-25T16:27:12Z</updated>
<author>
<name>Jon Medhurst</name>
<email>tixy@linaro.org</email>
</author>
<published>2013-12-10T10:18:58Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3bb0df1b71413ae789767d928d9126c5a5cb1e11'/>
<id>urn:sha1:3bb0df1b71413ae789767d928d9126c5a5cb1e11</id>
<content type='text'>
commit fe43390702a1b5741fdf217063b05c7612b38303 upstream.

When the pl011 is being used for a console, pl011_console_write forces
the control register (CR) to enable the UART for transmission and then
restores this to the original value afterwards. It does this while
holding the port lock.

Unfortunately, when the uart is started or shutdown - say in response to
userland using the serial device for a terminal - then this updates the
control register without any locking.

This means we can have

  pl011_console_write   Save CR
  pl011_startup         Initialise CR, e.g. enable receive
  pl011_console_write   Restore old CR with receive not enabled

this result is a serial port which doesn't respond to any input.

A similar race in reverse could happen when the device is shutdown.

We can fix these problems by taking the port lock when updating CR.

Signed-off-by: Jon Medhurst &lt;tixy@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>serial: 8250_dw: add new ACPI IDs</title>
<updated>2014-01-09T20:24:20Z</updated>
<author>
<name>Mika Westerberg</name>
<email>mika.westerberg@linux.intel.com</email>
</author>
<published>2013-12-10T10:56:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a718268abcb22c6276b8a9126335b6f0714bd0e9'/>
<id>urn:sha1:a718268abcb22c6276b8a9126335b6f0714bd0e9</id>
<content type='text'>
commit d24c195f90cb1adb178d26d84c722d4b9e551e05 upstream.

Newer Intel PCHs with LPSS have the same Designware controllers than
Haswell but ACPI IDs are different. Add these IDs to the driver list.

Signed-off-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>TTY: pmac_zilog, check existence of ports in pmz_console_init()</title>
<updated>2014-01-09T20:24:19Z</updated>
<author>
<name>Geert Uytterhoeven</name>
<email>geert@linux-m68k.org</email>
</author>
<published>2013-11-22T15:47:26Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fb36b98472a57ce5e9aaa81de2a8d21089210071'/>
<id>urn:sha1:fb36b98472a57ce5e9aaa81de2a8d21089210071</id>
<content type='text'>
commit dc1dc2f8a5dd863bf2e79f338fc3ae29e99c683a upstream.

When booting a multi-platform m68k kernel on a non-Mac with "console=ttyS0"
on the kernel command line, it crashes with:

Unable to handle kernel NULL pointer dereference at virtual address   (null)
Oops: 00000000
PC: [&lt;0013ad28&gt;] __pmz_startup+0x32/0x2a0
...
Call Trace: [&lt;002c5d3e&gt;] pmz_console_setup+0x64/0xe4

The normal tty driver doesn't crash, because init_pmz() checks
pmz_ports_count again after calling pmz_probe().

In the serial console initialization path, pmz_console_init() doesn't do
this, causing the driver to crash later.

Add a check for pmz_ports_count to fix this.

Signed-off-by: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
Cc: Finn Thain &lt;fthain@telegraphics.com.au&gt;
Cc: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>serial: vt8500: add missing braces</title>
<updated>2013-11-04T12:31:06Z</updated>
<author>
<name>Roel Kluin</name>
<email>roel.kluin@gmail.com</email>
</author>
<published>2013-10-14T21:21:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=bfddde1b4056f5b7d0d365606000df3442b82cd0'/>
<id>urn:sha1:bfddde1b4056f5b7d0d365606000df3442b82cd0</id>
<content type='text'>
commit d969de8d83401683420638c8107dcfedb2146f37 upstream.

Due to missing braces on an if statement, in presence of a device_node a
port was always assigned -1, regardless of any alias entries in the
device tree. Conversely, if device_node was NULL, an unitialized port
ended up being used.

This patch adds the missing braces, fixing the issues.

Signed-off-by: Roel Kluin &lt;roel.kluin@gmail.com&gt;
Acked-by: Tony Prisk &lt;linux@prisktech.co.nz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>xen/hvc: allow xenboot console to be used again</title>
<updated>2013-10-13T23:08:33Z</updated>
<author>
<name>David Vrabel</name>
<email>david.vrabel@citrix.com</email>
</author>
<published>2013-10-01T18:00:49Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8598a32d43af4abe6f3a464af8be7fc020080cf3'/>
<id>urn:sha1:8598a32d43af4abe6f3a464af8be7fc020080cf3</id>
<content type='text'>
commit a9fbf4d591da6cd1d3eaab826c7c15f77fc8f6a3 upstream.

Commit d0380e6c3c0f6edb986d8798a23acfaf33d5df23 (early_printk:
consolidate random copies of identical code) added in 3.10 introduced
a check for con-&gt;index == -1 in early_console_register().

Initialize index to -1 for the xenboot console so earlyprintk=xen
works again.

Signed-off-by: David Vrabel &lt;david.vrabel@citrix.com&gt;
Cc: Jiri Slaby &lt;jslaby@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>serial: pch_uart: fix tty-kref leak in dma-rx path</title>
<updated>2013-10-05T14:13:10Z</updated>
<author>
<name>Johan Hovold</name>
<email>jhovold@gmail.com</email>
</author>
<published>2013-09-10T10:50:50Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=20d7e144c93a9f06224fc983cb5b248bb5bc87fb'/>
<id>urn:sha1:20d7e144c93a9f06224fc983cb5b248bb5bc87fb</id>
<content type='text'>
commit 19b85cfb190eb9980eaf416bff96aef4159a430e upstream.

Fix tty_kref leak when tty_buffer_request room fails in dma-rx path.

Note that the tty ref isn't really needed anymore, but as the leak has
always been there, fixing it before removing should makes it easier to
backport the fix.

Signed-off-by: Johan Hovold &lt;jhovold@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>serial: pch_uart: fix tty-kref leak in rx-error path</title>
<updated>2013-10-05T14:13:10Z</updated>
<author>
<name>Johan Hovold</name>
<email>jhovold@gmail.com</email>
</author>
<published>2013-09-10T10:50:49Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b0a382b5a35e306362cde912bff18a42cc00b0f5'/>
<id>urn:sha1:b0a382b5a35e306362cde912bff18a42cc00b0f5</id>
<content type='text'>
commit fc0919c68cb2f75bb1af759315f9d7e2a9443c28 upstream.

Fix tty-kref leak introduced by commit 384e301e ("pch_uart: fix a
deadlock when pch_uart as console") which never put its tty reference.

Signed-off-by: Johan Hovold &lt;jhovold@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>serial: tegra: fix tty-kref leak</title>
<updated>2013-10-05T14:13:10Z</updated>
<author>
<name>Johan Hovold</name>
<email>jhovold@gmail.com</email>
</author>
<published>2013-09-10T10:50:48Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=64dc8de491ef490e979fe65d83daaadf32c83633'/>
<id>urn:sha1:64dc8de491ef490e979fe65d83daaadf32c83633</id>
<content type='text'>
commit cfd29aa0e81b791985e8428e6507e80e074e6730 upstream.

Fix potential tty-kref leak in stop_rx path.

Signed-off-by: Johan Hovold &lt;jhovold@gmail.com&gt;
Tested-by: Stephen Warren &lt;swarren@nvidia.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>tty: Fix SIGTTOU not sent with tcflush()</title>
<updated>2013-10-05T14:13:10Z</updated>
<author>
<name>Peter Hurley</name>
<email>peter@hurleysoftware.com</email>
</author>
<published>2013-09-26T00:13:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fe0da74501e9eb204dc1b8167708bd9273f4277f'/>
<id>urn:sha1:fe0da74501e9eb204dc1b8167708bd9273f4277f</id>
<content type='text'>
commit 5cec7bf699c61d14f0538345076480bb8c8ebfbb upstream.

Commit 'e7f3880cd9b98c5bf9391ae7acdec82b75403776'
  tty: Fix recursive deadlock in tty_perform_flush()
introduced a regression where tcflush() does not generate
SIGTTOU for background process groups.

Make sure ioctl(TCFLSH) calls tty_check_change() when
invoked from the line discipline.

Reported-by: Oleg Nesterov &lt;oleg@redhat.com&gt;
Signed-off-by: Peter Hurley &lt;peter@hurleysoftware.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>tty: disassociate_ctty() sends the extra SIGCONT</title>
<updated>2013-09-27T00:18:04Z</updated>
<author>
<name>Oleg Nesterov</name>
<email>oleg@redhat.com</email>
</author>
<published>2013-09-15T15:50:26Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d5cc290b92837eb9844579e297e969cc7a804da0'/>
<id>urn:sha1:d5cc290b92837eb9844579e297e969cc7a804da0</id>
<content type='text'>
commit 03e1261778cca782d41a3d8e3945ca88cf93e01e upstream.

Starting from v3.10 (probably commit f91e2590410b: "tty: Signal
foreground group processes in hangup") disassociate_ctty() sends SIGCONT
if tty &amp;&amp; on_exit.  This breaks LSB test-suite, in particular test8 in
_exit.c and test40 in sigcon5.c.

Put the "!on_exit" check back to restore the old behaviour.

Review by Peter Hurley:
 "Yes, this regression was introduced by me in that commit.  The effect
  of the regression is that ptys will receive a SIGCONT when, in similar
  circumstances, ttys would not.

  The fact that two test vectors accidentally tripped over this
  regression suggests that some other apps may as well.

  Thanks for catching this"

Signed-off-by: Oleg Nesterov &lt;oleg@redhat.com&gt;
Reported-by: Karel Srot &lt;ksrot@redhat.com&gt;
Reviewed-by: Peter Hurley &lt;peter@hurleysoftware.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
</feed>
