kernel_optimize_test/drivers/char
Thomas Pfaff ff8cb0fd6f tty: N_TTY SIGIO only works for read
The N_TTY ldisc layer does not send SIGIO POLL_OUTs correctly when output is
possible due to flawed handling of the TTY_DO_WRITE_WAKEUP bit. It will
either send no SIGIOs at all or on every tty wakeup.

The fix is to set the bit when the tty driver write would block and test
and clear it on write wakeup.

[Merged with existing N_TTY patches and a small buglet fixed -- Alan]

Signed-off-by: Thomas Pfaff <tpfaff@pcs.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-01-02 10:19:40 -08:00
..
agp agp/intel: Fix broken ® symbol in device name. 2008-12-29 10:06:20 +10:00
hw_random Tidy up addresses in random drivers 2008-10-27 08:39:52 -07:00
ip2 device create: char: convert device_create_drvdata to device_create 2008-10-16 09:24:42 -07:00
ipmi Fix platform drivers that crash on suspend/resume 2008-11-12 17:17:16 -08:00
mwave mwave: ioctl BKL pushdown 2008-07-25 10:53:43 -07:00
pcmcia pcmcia: IRQ_TYPE_EXCLUSIVE is long obsoleted 2008-10-17 23:07:10 +02:00
rio rio: Kill off ckmalloc 2009-01-02 10:19:38 -08:00
tpm tpm: don't export static functions 2008-10-20 08:50:24 -07:00
xilinx_hwicap xilinx_hwicap: remove improper wording in license statement 2008-12-17 11:23:07 -08:00
.gitignore
amiserial.c m68k: Disable Amiga serial console support if modular 2008-10-26 12:11:21 -07:00
apm-emulation.c APM emulation: Notify about all suspend events, not just APM invoked ones (v2) 2008-07-16 23:27:02 +02:00
applicom.c applicom.c: fix apparently-broken code in do_ac_read() 2008-10-16 11:21:47 -07:00
applicom.h
bfin-otp.c
briq_panel.c
bsr.c powerpc/BSR: Support multiple OF-node description of BSR 2008-12-03 21:03:27 +11:00
cd1865.h
ChangeLog
consolemap.c
cp437.uni unicode table for cp437 2008-12-13 11:25:49 -08:00
cs5535_gpio.c
cyclades.c Char: cyclades. remove bogus iomap 2008-10-13 09:51:38 -07:00
defkeymap.c_shipped
defkeymap.map
digi1.h
digiFep1.h
digiPCI.h
ds1302.c rtc: use bcd2bin/bin2bcd 2008-10-20 08:52:41 -07:00
ds1620.c [ARM] netwinder: clean up GPIO naming 2008-12-13 09:12:07 +00:00
dsp56k.c device create: char: convert device_create_drvdata to device_create 2008-10-16 09:24:42 -07:00
dtlk.c
efirtc.c drivers/char/efirtc.c: removed duplicated #include 2008-08-04 16:59:56 -07:00
epca.c epca: Add infinite break support 2008-10-20 09:41:06 -07:00
epca.h epca: use tty_port 2008-07-20 17:12:36 -07:00
epcaconfig.h
esp.c tty_port: Add a port level carrier detect operation 2009-01-02 10:19:38 -08:00
generic_nvram.c
generic_serial.c tty: relock generic_serial 2009-01-02 10:19:38 -08:00
genrtc.c
hangcheck-timer.c
hpet.c x86: correct link to HPET timer specification 2008-11-24 10:05:12 +01:00
hvc_beat.c
hvc_console.c pty: simplify resize 2009-01-02 10:19:36 -08:00
hvc_console.h powerpc: Make open count variables signed in hvcs/hvsi/hvc_console 2008-12-03 21:04:13 +11:00
hvc_irq.c hvc_console: Add a hangup notifier for backends 2008-10-22 10:59:54 +11:00
hvc_iseries.c drivers/hvc: Add missing of_node_put 2008-12-03 21:04:09 +11:00
hvc_iucv.c [S390] s390/hvc_console: z/VM IUCV hypervisor console support 2008-12-25 13:39:03 +01:00
hvc_rtas.c
hvc_udbg.c powerpc: udbg-based backend for hvc_console 2008-11-19 16:04:25 +11:00
hvc_vio.c drivers/hvc: Add missing of_node_put 2008-12-03 21:04:09 +11:00
hvc_xen.c hvc_console: Add a hangup notifier for backends 2008-10-22 10:59:54 +11:00
hvcs.c powerpc: Make open count variables signed in hvcs/hvsi/hvc_console 2008-12-03 21:04:13 +11:00
hvsi.c powerpc: Make open count variables signed in hvcs/hvsi/hvc_console 2008-12-03 21:04:13 +11:00
i8k.c
isicom.c tty: Introduce some close helpers for ports 2009-01-02 10:19:40 -08:00
istallion.c tty: Introduce some close helpers for ports 2009-01-02 10:19:40 -08:00
Kconfig tty: ESP has been broken for locking etc forver 2009-01-02 10:19:39 -08:00
keyboard.c Input: keyboard - fix potential out of bound access to key_map 2008-10-08 23:45:36 -04:00
lp.c device create: char: convert device_create_drvdata to device_create 2008-10-16 09:24:42 -07:00
Makefile Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc 2008-12-28 16:54:33 -08:00
mbcs.c
mbcs.h
mem.c device create: char: convert device_create_drvdata to device_create 2008-10-16 09:24:42 -07:00
misc.c device create: char: convert device_create_drvdata to device_create 2008-10-16 09:24:42 -07:00
mmtimer.c mmtimer: Push BKL down into the ioctl handler 2008-07-17 11:34:49 -07:00
moxa.c tty_port: Add a port level carrier detect operation 2009-01-02 10:19:38 -08:00
moxa.h
mspec.c mspec: convert nopfn to fault 2008-07-24 10:47:14 -07:00
mxser.c tty: Introduce some close helpers for ports 2009-01-02 10:19:40 -08:00
mxser.h
n_hdlc.c tty: some ICANON magic is in the wrong places 2008-10-13 09:51:44 -07:00
n_r3964.c tty: Remove lots of NULL checks 2008-10-13 09:51:44 -07:00
n_tty.c tty: N_TTY SIGIO only works for read 2009-01-02 10:19:40 -08:00
nozomi.c nozomi: Fix close on error 2008-10-13 09:51:39 -07:00
nsc_gpio.c
nvram.c [PATCH] nvram - convert PRINT_PROC to seq_file 2008-11-11 09:56:00 +00:00
nwbutton.c
nwbutton.h
nwflash.c [ARM] netwinder: clean up GPIO naming 2008-12-13 09:12:07 +00:00
pc8736x_gpio.c pc8736x_gpio: add support for PC87365 chips 2008-10-20 08:52:40 -07:00
ppdev.c device create: char: convert device_create_drvdata to device_create 2008-10-16 09:24:42 -07:00
ps3flash.c
pty.c pty: simplify resize 2009-01-02 10:19:36 -08:00
random.c sparse irq_desc[] array: core kernel and x86 changes 2008-12-08 14:31:51 +01:00
raw.c [PATCH] kill the rest of struct file propagation in block ioctls 2008-10-21 07:49:14 -04:00
riscom8_reg.h
riscom8.c tty: Introduce some close helpers for ports 2009-01-02 10:19:40 -08:00
riscom8.h tty: add more tty_port fields 2008-07-20 17:12:38 -07:00
rocket_int.h tty: rocketport uses different port flags to everyone else 2009-01-02 10:19:39 -08:00
rocket.c tty: rocketport uses different port flags to everyone else 2009-01-02 10:19:39 -08:00
rocket.h tty: rocketport uses different port flags to everyone else 2009-01-02 10:19:39 -08:00
rtc.c saner FASYNC handling on file close 2008-11-01 09:49:46 -07:00
scc.h
scx200_gpio.c
selection.c tty: Ldisc revamp 2008-07-20 17:12:34 -07:00
ser_a2232.c tty_port: Add a port level carrier detect operation 2009-01-02 10:19:38 -08:00
ser_a2232.h
ser_a2232fw.ax
ser_a2232fw.h
serial167.c Fix incorrect use of loose in tty/serial drivers 2008-12-05 13:40:52 -08:00
snsc_event.c
snsc.c device create: char: convert device_create_drvdata to device_create 2008-10-16 09:24:42 -07:00
snsc.h
sonypi.c Merge branch 'misc' into release 2008-11-11 21:14:11 -05:00
specialix_io8.h tty: add more tty_port fields 2008-07-20 17:12:38 -07:00
specialix.c Create/use more directory structure in the Documentation/ tree. 2008-11-14 17:28:53 +00:00
stallion.c tty: Introduce some close helpers for ports 2009-01-02 10:19:40 -08:00
sx.c tty_port: Add a port level carrier detect operation 2009-01-02 10:19:38 -08:00
sx.h
sxboards.h
sxwindow.h
synclink_gt.c tty: Introduce some close helpers for ports 2009-01-02 10:19:40 -08:00
synclink.c tty: Introduce some close helpers for ports 2009-01-02 10:19:40 -08:00
synclinkmp.c tty: Introduce some close helpers for ports 2009-01-02 10:19:40 -08:00
sysrq.c ftrace: sysrq-z to dump the buffers 2008-11-04 11:01:35 +01:00
tb0219.c
tlclk.c
toshiba.c
tty_audit.c Audit: Log TIOCSTI 2008-12-09 20:32:06 +11:00
tty_buffer.c tty: split the buffering from tty_io 2008-10-13 09:51:40 -07:00
tty_io.c pty: simplify resize 2009-01-02 10:19:36 -08:00
tty_ioctl.c tty: some ICANON magic is in the wrong places 2008-10-13 09:51:44 -07:00
tty_ldisc.c tty: Fix PPP hang under load 2009-01-02 10:19:38 -08:00
tty_port.c tty: Introduce some close helpers for ports 2009-01-02 10:19:40 -08:00
vc_screen.c device create: char: convert device_create_drvdata to device_create 2008-10-16 09:24:42 -07:00
viotape.c device create: char: convert device_create_drvdata to device_create 2008-10-16 09:24:42 -07:00
virtio_console.c virtio_console: support console resizing 2008-12-30 09:26:10 +10:30
vme_scc.c tty: Introduce a tty_port generic block_til_ready 2009-01-02 10:19:39 -08:00
vr41xx_giu.c drivers/char: use nr_irqs 2008-10-16 16:52:05 +02:00
vt_ioctl.c tty: move tioclinux from a special case 2008-10-13 09:51:40 -07:00
vt.c pty: simplify resize 2009-01-02 10:19:36 -08:00