linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/80] TTY updates for 2.6.28
@ 2008-10-13  9:31 Alan Cox
  2008-10-13  9:31 ` [PATCH 01/80] drivers/serial/crisv10.c: add missing put_tty_driver Alan Cox
                   ` (79 more replies)
  0 siblings, 80 replies; 86+ messages in thread
From: Alan Cox @ 2008-10-13  9:31 UTC (permalink / raw)
  To: torvalds, linux-kernel

The big thrust of this is krefs. The tty and tty drivers are now kref accounted
and this allows some of the locking to be simplified. The pty special casing
has been mostly pushed into the pty layer and the open paths simplified so we
are close to disposing of the BKL on open/close.

Also fix a pile of bugs found in the tty layer during this process and in
driver code.

Finally we add the basics of termiox (the standard Unix termios extension) as
bits of it are now needed by people wanting things like non-standard handshake.

Resynched against the current git tree as of this morning.

Signed-off-by: Alan Cox <alan@redhat.com>


---

Adrian Bunk (1):
      coldfire: scheduled SERIAL_COLDFIRE removal

Akinobu Mita (1):
      ip2: avoid add_timer with pending timer

Alan Cox (46):
      tty: rename the remaining oddly named n_tty functions
      fs3270: Correct error returns
      fs3270: remove extra locks
      applicom: Fix an unchecked user ioctl range and an error return
      tty: Minor tidyups and document fixes for n_tty
      tty: Remove lots of NULL checks
      tty: fix up gigaset a bit
      tty: some ICANON magic is in the wrong places
      tty: simplify ktermios allocation
      pty: simplify unix98 allocation
      pty: Fix allocation failure double free
      pty: Coding style and polish
      tty: extract the pty init time special cases
      tty: Finish fixing up the init_dev interface to use ERR_PTR
      tty: More driver operations
      tty: kref the tty driver object
      tty: Clean up the tty_init_dev changes further
      tty: Remove more special casing and out of place code
      tty: shutdown method
      vt: remove bogus lock dropping
      pty: If the administrator creates a device for a ptmx slave we should not error
      tty: Fix abusers of current->sighand->tty
      tty: Redo current tty locking
      tty: the vhangup syscall is racy
      mxser: Switch to kref tty
      stallion: Use krefs
      tty: kref usage for isicom and moxa
      tty: usb-serial krefs
      tty: Move tty_write_message out of kernel/printk
      tty: Make get_current_tty use a kref
      tty: compare the tty winsize
      tty: Termios locking - sort out real_tty confusions and lock reads
      tty: Add termiox
      tty: ipw need reworking
      tty: Cris has a nice RS485 ioctl so we should steal it
      tty: use krefs to protect driver module counts
      tty: Add a kref count
      pps: Reserve a line discipline number for PPS
      tty: Split tty_port into its own file
      tty: split the buffering from tty_io
      uml: small cleanups and note bugs to be dealt with by uml authors...
      tty: move tioclinux from a special case
      serial_8250: pci_enable_device fail is not fully handled
      ftdi: A few errors are err() that should be debug which causes much spewage
      nozomi: Fix close on error
      epca: call tty_port_init

Andrew Morton (1):
      serial-make-uart_ports-ioport-unsigned-long-fix

David Miller (2):
      serial: allow 8250 to be used on sparc
      serial: Make uart_port's ioport "unsigned long".

David S. Miller (1):
      serial: fix device name reporting when minor space is shared between drivers

Graf Yang (1):
      Blackfin Serial Driver: Fix bug - ircp fails on sir over Blackfin UART

Jason Wessel (2):
      tty: tty_io.c shadows sparse fix
      usb: fix pl2303 initialization

Jiri Slaby (6):
      ip2, init/deinit cleanup
      ip2, fix sparse warnings
      ip2, cleanup globals
      Char: merge ip2main and ip2base
      Char: sx, fix io unmapping
      Char: cyclades. remove bogus iomap

Julia Lawall (2):
      drivers/char/hvc_console.c: adjust call to put_tty_driver
      drivers/serial/crisv10.c: add missing put_tty_driver

Mike Frysinger (3):
      Blackfin Serial Driver: move common variables out of serial headers and into the serial driver
      Blackfin Serial Driver: trim trailing whitespace -- no functional changes
      Blackfin Serial Driver: use __initdata for data, not __init

Miloslav Trmac (1):
      audit: Handle embedded NUL in TTY input auditing

Scott Ashcroft (1):
      Fix oti6858 debug level

Sonic Zhang (4):
      Blackfin Serial Driver: Fix bug - request UART2/3 peripheral mapped interrupts in PIO mode
      Blackfin Serial Driver: Fix bug - Don't call tx_stop in tx_transfer.
      Blackfin Serial Driver: Remove useless stop
      Blackfin Serial Driver: Fix bug - should suspend/resume/remove all uart ports.

Stephen Rothwell (1):
      tty: Fallout from tty-move-canon-specials

Sukadev Bhattiprolu (6):
      Simplify devpts_pty_kill
      Simplify devpts_pty_new()
      Simplify devpts_get_tty()
      Add an instance parameter devpts interfaces
      Move tty lookup/reopen to caller
      tty: Move parts of tty_init_dev into new functions

\\\"Will Newton\\\ (1):
      8250: remove a few inlines of dubious value


 Documentation/feature-removal-schedule.txt         |    8 
 arch/blackfin/kernel/bfin_dma_5xx.c                |   13 
 .../mach-bf527/include/mach/bfin_serial_5xx.h      |    6 
 .../mach-bf533/include/mach/bfin_serial_5xx.h      |    4 
 .../mach-bf537/include/mach/bfin_serial_5xx.h      |    6 
 .../mach-bf548/include/mach/bfin_serial_5xx.h      |    6 
 .../mach-bf561/include/mach/bfin_serial_5xx.h      |    4 
 arch/sparc/include/asm/serial.h                    |    6 
 arch/um/drivers/line.c                             |    2 
 drivers/bluetooth/hci_ldisc.c                      |    2 
 drivers/char/Kconfig                               |    4 
 drivers/char/Makefile                              |    2 
 drivers/char/amiserial.c                           |    6 
 drivers/char/applicom.c                            |    6 
 drivers/char/cyclades.c                            |   21 
 drivers/char/epca.c                                |    5 
 drivers/char/generic_serial.c                      |   21 
 drivers/char/hvc_console.c                         |    4 
 drivers/char/ip2/Makefile                          |    2 
 drivers/char/ip2/i2ellis.c                         |   32 
 drivers/char/ip2/i2ellis.h                         |    2 
 drivers/char/ip2/ip2base.c                         |  108 -
 drivers/char/ip2/ip2main.c                         |  550 +++---
 drivers/char/isicom.c                              |   61 -
 drivers/char/istallion.c                           |  113 +
 drivers/char/moxa.c                                |   61 -
 drivers/char/mxser.c                               |  193 +-
 drivers/char/n_hdlc.c                              |    2 
 drivers/char/n_r3964.c                             |    8 
 drivers/char/n_tty.c                               |  125 +
 drivers/char/nozomi.c                              |    5 
 drivers/char/pcmcia/ipwireless/tty.c               |   19 
 drivers/char/pty.c                                 |  335 +++
 drivers/char/stallion.c                            |  139 +
 drivers/char/sx.c                                  |    4 
 drivers/char/tty_audit.c                           |    2 
 drivers/char/tty_buffer.c                          |  511 +++++
 drivers/char/tty_io.c                              | 1380 ++++----------
 drivers/char/tty_ioctl.c                           |  212 ++
 drivers/char/tty_port.c                            |   96 +
 drivers/char/vt.c                                  |   84 -
 drivers/char/vt_ioctl.c                            |    2 
 drivers/isdn/capi/capi.c                           |    2 
 drivers/isdn/gigaset/ser-gigaset.c                 |   27 
 drivers/net/wan/Kconfig                            |    2 
 drivers/s390/char/fs3270.c                         |   17 
 drivers/serial/8250.c                              |   52 -
 drivers/serial/8250_pci.c                          |    4 
 drivers/serial/Kconfig                             |   17 
 drivers/serial/Makefile                            |   16 
 drivers/serial/bfin_5xx.c                          |  123 +
 drivers/serial/crisv10.c                           |    5 
 drivers/serial/mcfserial.c                         | 1965 --------------------
 drivers/serial/mcfserial.h                         |   74 -
 drivers/serial/serial_core.c                       |   12 
 drivers/usb/serial/aircable.c                      |   15 
 drivers/usb/serial/belkin_sa.c                     |    3 
 drivers/usb/serial/console.c                       |    8 
 drivers/usb/serial/cyberjack.c                     |    3 
 drivers/usb/serial/cypress_m8.c                    |    5 
 drivers/usb/serial/digi_acceleport.c               |   19 
 drivers/usb/serial/empeg.c                         |    8 
 drivers/usb/serial/ftdi_sio.c                      |   25 
 drivers/usb/serial/garmin_gps.c                    |    3 
 drivers/usb/serial/generic.c                       |    3 
 drivers/usb/serial/io_edgeport.c                   |   43 
 drivers/usb/serial/io_ti.c                         |   26 
 drivers/usb/serial/ipaq.c                          |    3 
 drivers/usb/serial/ipw.c                           |    3 
 drivers/usb/serial/ir-usb.c                        |    3 
 drivers/usb/serial/iuu_phoenix.c                   |    3 
 drivers/usb/serial/keyspan.c                       |   77 -
 drivers/usb/serial/keyspan_pda.c                   |   16 
 drivers/usb/serial/kl5kusb105.c                    |    3 
 drivers/usb/serial/kobil_sct.c                     |    3 
 drivers/usb/serial/mct_u232.c                      |    6 
 drivers/usb/serial/mos7720.c                       |   36 
 drivers/usb/serial/mos7840.c                       |    7 
 drivers/usb/serial/navman.c                        |    3 
 drivers/usb/serial/omninet.c                       |   10 
 drivers/usb/serial/option.c                        |   18 
 drivers/usb/serial/oti6858.c                       |    7 
 drivers/usb/serial/pl2303.c                        |   15 
 drivers/usb/serial/safe_serial.c                   |   11 
 drivers/usb/serial/sierra.c                        |   16 
 drivers/usb/serial/spcp8x5.c                       |    3 
 drivers/usb/serial/ti_usb_3410_5052.c              |   44 
 drivers/usb/serial/usb-serial.c                    |   24 
 drivers/usb/serial/visor.c                         |   18 
 drivers/usb/serial/whiteheat.c                     |    8 
 fs/devpts/inode.c                                  |   66 -
 fs/dquot.c                                         |    6 
 fs/open.c                                          |    3 
 include/asm-x86/ioctls.h                           |    6 
 include/linux/devpts_fs.h                          |   31 
 include/linux/serial.h                             |   16 
 include/linux/serial_core.h                        |    2 
 include/linux/termios.h                            |   15 
 include/linux/tty.h                                |   45 
 include/linux/tty_driver.h                         |   56 +
 include/linux/vt_kern.h                            |    2 
 kernel/acct.c                                      |    2 
 kernel/auditsc.c                                   |    9 
 kernel/fork.c                                      |    5 
 kernel/printk.c                                    |   16 
 kernel/sys.c                                       |    4 
 security/selinux/hooks.c                           |    3 
 107 files changed, 2877 insertions(+), 4396 deletions(-)
 create mode 100644 arch/sparc/include/asm/serial.h
 delete mode 100644 drivers/char/ip2/ip2base.c
 create mode 100644 drivers/char/tty_buffer.c
 create mode 100644 drivers/char/tty_port.c
 delete mode 100644 drivers/serial/mcfserial.c
 delete mode 100644 drivers/serial/mcfserial.h

-- 
Signature

^ permalink raw reply	[flat|nested] 86+ messages in thread

end of thread, other threads:[~2008-10-24 11:21 UTC | newest]

Thread overview: 86+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-10-13  9:31 [PATCH 00/80] TTY updates for 2.6.28 Alan Cox
2008-10-13  9:31 ` [PATCH 01/80] drivers/serial/crisv10.c: add missing put_tty_driver Alan Cox
2008-10-13  9:31 ` [PATCH 02/80] drivers/char/hvc_console.c: adjust call to put_tty_driver Alan Cox
2008-10-13  9:31 ` [PATCH 03/80] coldfire: scheduled SERIAL_COLDFIRE removal Alan Cox
2008-10-13  9:32 ` [PATCH 04/80] epca: call tty_port_init Alan Cox
2008-10-13  9:32 ` [PATCH 05/80] Blackfin Serial Driver: use __initdata for data, not __init Alan Cox
2008-10-13  9:32 ` [PATCH 06/80] Blackfin Serial Driver: Fix bug - should suspend/resume/remove all uart ports Alan Cox
2008-10-13  9:33 ` [PATCH 07/80] Blackfin Serial Driver: trim trailing whitespace -- no functional changes Alan Cox
2008-10-13  9:33 ` [PATCH 08/80] Blackfin Serial Driver: move common variables out of serial headers and into the serial driver Alan Cox
2008-10-13  9:33 ` [PATCH 09/80] Blackfin Serial Driver: Remove useless stop Alan Cox
2008-10-13  9:33 ` [PATCH 10/80] Blackfin Serial Driver: Fix bug - Don't call tx_stop in tx_transfer Alan Cox
2008-10-13  9:33 ` [PATCH 11/80] Blackfin Serial Driver: Fix bug - ircp fails on sir over Blackfin UART Alan Cox
2008-10-13  9:33 ` [PATCH 12/80] Blackfin Serial Driver: Fix bug - request UART2/3 peripheral mapped interrupts in PIO mode Alan Cox
2008-10-13  9:34 ` [PATCH 13/80] Fix oti6858 debug level Alan Cox
2008-10-13  9:34 ` [PATCH 14/80] Char: cyclades. remove bogus iomap Alan Cox
2008-10-13  9:34 ` [PATCH 15/80] Char: sx, fix io unmapping Alan Cox
2008-10-13  9:34 ` [PATCH 16/80] Char: merge ip2main and ip2base Alan Cox
2008-10-13  9:34 ` [PATCH 17/80] ip2, cleanup globals Alan Cox
2008-10-13  9:34 ` [PATCH 18/80] ip2, fix sparse warnings Alan Cox
2008-10-13  9:34 ` [PATCH 19/80] ip2, init/deinit cleanup Alan Cox
2008-10-13  9:35 ` [PATCH 20/80] ip2: avoid add_timer with pending timer Alan Cox
2008-10-13  9:35 ` [PATCH 21/80] audit: Handle embedded NUL in TTY input auditing Alan Cox
2008-10-13  9:35 ` [PATCH 22/80] serial: Make uart_port's ioport "unsigned long" Alan Cox
2008-10-13  9:35 ` [PATCH 23/80] nozomi: Fix close on error Alan Cox
2008-10-13  9:35 ` [PATCH 24/80] serial-make-uart_ports-ioport-unsigned-long-fix Alan Cox
2008-10-13  9:35 ` [PATCH 25/80] usb: fix pl2303 initialization Alan Cox
2008-10-13  9:36 ` [PATCH 26/80] ftdi: A few errors are err() that should be debug which causes much spewage Alan Cox
2008-10-13  9:36 ` [PATCH 27/80] serial_8250: pci_enable_device fail is not fully handled Alan Cox
2008-10-13  9:36 ` [PATCH 28/80] 8250: remove a few inlines of dubious value Alan Cox
2008-10-13  9:36 ` [PATCH 29/80] serial: allow 8250 to be used on sparc Alan Cox
2008-10-13  9:36 ` [PATCH 30/80] tty: move tioclinux from a special case Alan Cox
2008-10-13  9:36 ` [PATCH 31/80] uml: small cleanups and note bugs to be dealt with by uml authors Alan Cox
2008-10-13  9:36 ` [PATCH 32/80] tty: split the buffering from tty_io Alan Cox
2008-10-13  9:37 ` [PATCH 33/80] tty: Split tty_port into its own file Alan Cox
2008-10-13  9:37 ` [PATCH 34/80] pps: Reserve a line discipline number for PPS Alan Cox
2008-10-13  9:37 ` [PATCH 35/80] tty: Add a kref count Alan Cox
2008-10-13  9:37 ` [PATCH 36/80] tty: use krefs to protect driver module counts Alan Cox
2008-10-13  9:37 ` [PATCH 37/80] tty: Cris has a nice RS485 ioctl so we should steal it Alan Cox
2008-10-13  9:38 ` [PATCH 38/80] tty: ipw need reworking Alan Cox
2008-10-13  9:38 ` [PATCH 39/80] tty: Add termiox Alan Cox
2008-10-13  9:38 ` [PATCH 40/80] tty: Termios locking - sort out real_tty confusions and lock reads Alan Cox
2008-10-13  9:39 ` [PATCH 41/80] tty: compare the tty winsize Alan Cox
2008-10-13  9:39 ` [PATCH 42/80] tty: Make get_current_tty use a kref Alan Cox
2008-10-13  9:39 ` [PATCH 43/80] tty: Move tty_write_message out of kernel/printk Alan Cox
2008-10-13  9:39 ` [PATCH 44/80] tty: usb-serial krefs Alan Cox
2008-10-13  9:39 ` [PATCH 45/80] tty: kref usage for isicom and moxa Alan Cox
2008-10-13  9:40 ` [PATCH 46/80] stallion: Use krefs Alan Cox
2008-10-13  9:40 ` [PATCH 47/80] mxser: Switch to kref tty Alan Cox
2008-10-13  9:40 ` [PATCH 48/80] tty: the vhangup syscall is racy Alan Cox
2008-10-13  9:40 ` [PATCH 49/80] tty: Redo current tty locking Alan Cox
2008-10-13  9:40 ` [PATCH 50/80] tty: Fix abusers of current->sighand->tty Alan Cox
2008-10-13  9:41 ` [PATCH 51/80] pty: If the administrator creates a device for a ptmx slave we should not error Alan Cox
2008-10-13  9:41 ` [PATCH 52/80] vt: remove bogus lock dropping Alan Cox
2008-10-13  9:41 ` [PATCH 53/80] tty: shutdown method Alan Cox
2008-10-13  9:41 ` [PATCH 54/80] tty: Remove more special casing and out of place code Alan Cox
2008-10-13  9:41 ` [PATCH 55/80] tty: Move parts of tty_init_dev into new functions Alan Cox
2008-10-13  9:42 ` [PATCH 56/80] tty: Clean up the tty_init_dev changes further Alan Cox
2008-10-13  9:42 ` [PATCH 57/80] tty: kref the tty driver object Alan Cox
2008-10-13  9:42 ` [PATCH 58/80] tty: More driver operations Alan Cox
2008-10-13  9:42 ` [PATCH 59/80] tty: Finish fixing up the init_dev interface to use ERR_PTR Alan Cox
2008-10-13  9:42 ` [PATCH 60/80] tty: extract the pty init time special cases Alan Cox
2008-10-13  9:42 ` [PATCH 61/80] Move tty lookup/reopen to caller Alan Cox
2008-10-13  9:42 ` [PATCH 62/80] Add an instance parameter devpts interfaces Alan Cox
2008-10-13  9:43 ` [PATCH 63/80] Simplify devpts_get_tty() Alan Cox
2008-10-13  9:43 ` [PATCH 64/80] Simplify devpts_pty_new() Alan Cox
2008-10-13  9:43 ` [PATCH 65/80] Simplify devpts_pty_kill Alan Cox
2008-10-13  9:43 ` [PATCH 66/80] pty: Coding style and polish Alan Cox
2008-10-13  9:43 ` [PATCH 67/80] pty: Fix allocation failure double free Alan Cox
2008-10-13  9:43 ` [PATCH 68/80] pty: simplify unix98 allocation Alan Cox
2008-10-13  9:44 ` [PATCH 69/80] tty: simplify ktermios allocation Alan Cox
2008-10-13  9:44 ` [PATCH 70/80] tty: some ICANON magic is in the wrong places Alan Cox
2008-10-13  9:44 ` [PATCH 71/80] tty: Fallout from tty-move-canon-specials Alan Cox
2008-10-13  9:44 ` [PATCH 72/80] tty: fix up gigaset a bit Alan Cox
2008-10-16 15:50   ` Tilman Schmidt
2008-10-17 11:40     ` Alan Cox
2008-10-19 12:28       ` Tilman Schmidt
2008-10-22  9:00         ` Alan Cox
2008-10-24 11:21           ` Tilman Schmidt
2008-10-13  9:44 ` [PATCH 73/80] tty: Remove lots of NULL checks Alan Cox
2008-10-13  9:45 ` [PATCH 74/80] tty: Minor tidyups and document fixes for n_tty Alan Cox
2008-10-13  9:45 ` [PATCH 75/80] applicom: Fix an unchecked user ioctl range and an error return Alan Cox
2008-10-13  9:45 ` [PATCH 76/80] serial: fix device name reporting when minor space is shared between drivers Alan Cox
2008-10-13  9:45 ` [PATCH 77/80] tty: tty_io.c shadows sparse fix Alan Cox
2008-10-13  9:45 ` [PATCH 78/80] fs3270: remove extra locks Alan Cox
2008-10-13  9:46 ` [PATCH 79/80] fs3270: Correct error returns Alan Cox
2008-10-13  9:46 ` [PATCH 80/80] tty: rename the remaining oddly named n_tty functions Alan Cox

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).