aha/drivers
OGAWA Hirofumi e043e42bdb pty: avoid forcing 'low_latency' tty flag
We really don't want to mark the pty as a low-latency device, because as
Alan points out, the ->write method can be called from an IRQ (ppp?),
and that means we can't use ->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 3a54297478: "pty: quickfix for the
pty ENXIO timing problems").

Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Tested-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
[ 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 <torvalds@linux-foundation.org>
2009-07-29 12:15:56 -07:00
..
accessibility
acpi
amba [ARM] amba: fix amba device resources 2009-07-05 22:39:08 +01:00
ata ahci: add device ID for 82801JI sata controller 2009-07-14 22:42:56 -04:00
atm
auxdisplay
base Firmware: firmware_class, fix lock imbalance 2009-07-12 13:02:10 -07:00
block Merge branch 'tj-block-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc 2009-07-22 10:06:33 -07:00
bluetooth headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
cdrom
char pty: avoid forcing 'low_latency' tty flag 2009-07-29 12:15:56 -07:00
clocksource
connector connector: maintainer/mail update. 2009-07-21 12:43:51 -07:00
cpufreq [CPUFREQ] Fix compile failure in cpufreq.c 2009-07-08 19:04:23 -04:00
cpuidle
crypto
dca Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-23 09:25:58 -07:00
dio
dma
edac amd64_edac: read the right F2 maskoffset reg 2009-07-27 14:42:24 +02:00
eisa
firewire Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 2009-07-06 14:03:44 -07:00
firmware
gpio headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
gpu drm: Move a dereference below a NULL test 2009-07-15 16:56:48 +10:00
hid Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid 2009-07-22 09:30:07 -07:00
hwmon hwmon: (asus_atk0110) Fix upper limit readings 2009-07-28 16:31:39 +02:00
i2c i2c/tsl2550: Fix lux value in dark environment 2009-07-28 16:33:03 +02:00
ide ide-tape: Don't leak kernel stack information 2009-07-21 20:36:25 -07:00
idle
ieee1394 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 2009-07-06 14:03:44 -07:00
ieee802154
infiniband
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2009-07-22 09:25:31 -07:00
isdn mISDN: Fix handling of receive buffer size in L1oIP 2009-07-28 14:26:51 -07:00
leds Update Yoichi Yuasa's e-mail address 2009-07-03 15:45:29 +01:00
lguest lguest: remove unnecessary forward struct declaration 2009-07-17 21:47:44 +09:30
macintosh
mca
md dm table: pass correct dev area size to device_area_is_valid 2009-07-23 20:30:42 +01:00
media V4L/DVB (12303): cx23885: check pointers before dereferencing in dprintk macro 2009-07-24 14:03:32 -03:00
memstick
message
mfd Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2009-07-08 09:32:41 -07:00
misc headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
mmc mvsdio: fix handling of partial word at the end of PIO transfer 2009-07-20 16:46:34 -07:00
mtd UBI: fix bug in image sequence number handling 2009-07-15 11:30:59 +03:00
net Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2009-07-27 13:42:47 -07:00
nubus
of of/mdio: Add support function for Ethernet fixed-link property 2009-07-22 09:27:18 -07:00
oprofile oprofile: reset bt_lost_no_mapping with other stats 2009-07-10 12:35:36 +02:00
parisc Remove multiple KERN_ prefixes from printk formats 2009-07-08 10:30:03 -07:00
parport
pci headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
pcmcia Remove multiple KERN_ prefixes from printk formats 2009-07-08 10:30:03 -07:00
platform Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2009-07-27 13:42:47 -07:00
pnp
power wm97xx_batery: replace driver_data with dev_get_drvdata() 2009-07-12 13:02:10 -07:00
pps
ps3
rapidio
regulator
rtc rtc: ds1374, fix lock imbalance 2009-07-06 13:57:03 -07:00
s390 [S390] zcrypt: fix scheduling of hrtimer ap_poll_timer 2009-07-24 12:41:02 +02:00
sbus
scsi headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
serial drivers/serial/bfin_sport_uart.c: remove wrong and unneeded memset 2009-07-16 09:19:16 -07:00
sh
sn
spi
ssb Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2009-07-09 20:33:18 -07:00
staging Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6 2009-07-13 10:24:43 -07:00
tc
telephony headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
thermal
uio
usb usb_serial: Fix remaining ref count/lock bugs 2009-07-27 17:26:23 -07:00
uwb
video fbmon: work around compiler bug in gcc-2.4.2 2009-07-22 08:49:22 -07:00
virtio virtio-pci: correctly unregister root device on error 2009-07-17 21:47:47 +09:30
vlynq vlynq: fix typo in Kconfig to enable debugging 2009-07-06 13:57:03 -07:00
w1
watchdog Merge master.kernel.org:/home/rmk/linux-2.6-arm 2009-07-18 11:59:33 -07:00
xen xen: Use kcalloc() in xen_init_IRQ() 2009-07-01 11:19:47 +02:00
zorro
Kconfig
Makefile