[PATCH 0/8] tty/serial: Convert ->set_termios() related callchains to const old ktermios

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



->set_termios() callchains input old ktermios (mainly used as fallback
and feature compares). It is discarded right after returning from the
calls and should therefore not be modified by drivers because any such
change will get lost (instead, the changes must be applied to the new
ktermios). While doing this patchset, I found a few such issues that
were fixed earlier.

Now enforce old ktermios constness. Another goodie is that "get" named
functions in tty_baudrate.c that previously mucked with the old
ktermios can no longer have such side-effects. I found out that the
ktermios adjustments made were dead-code for all in-tree archs anyway.

Ilpo Järvinen (8):
  tty: Remove baudrate dead code & make ktermios params const
  tty: Fix comment style in tty_termios_input_baud_rate()
  serial: dz: Assume previous baudrate is valid
  tty: Make tty_termios_copy_hw() old ktermios const
  tty: Make ldisc ->set_termios() old ktermios const
  serial: Make ->set_termios() old ktermios const
  usb: serial: Make ->set_termios() old ktermios const
  tty: Make ->set_termios() old ktermios const

 drivers/char/pcmcia/synclink_cs.c           |  3 ++-
 drivers/ipack/devices/ipoctal.c             |  2 +-
 drivers/mmc/core/sdio_uart.c                |  4 ++--
 drivers/net/usb/hso.c                       |  3 ++-
 drivers/s390/char/tty3270.c                 |  2 +-
 drivers/staging/fwserial/fwserial.c         |  3 ++-
 drivers/staging/greybus/uart.c              |  2 +-
 drivers/tty/amiserial.c                     |  6 ++---
 drivers/tty/moxa.c                          |  9 +++----
 drivers/tty/mxser.c                         |  6 +++--
 drivers/tty/n_gsm.c                         |  3 ++-
 drivers/tty/n_tty.c                         |  2 +-
 drivers/tty/pty.c                           |  2 +-
 drivers/tty/serial/21285.c                  |  2 +-
 drivers/tty/serial/8250/8250_bcm7271.c      |  2 +-
 drivers/tty/serial/8250/8250_dw.c           |  2 +-
 drivers/tty/serial/8250/8250_dwlib.c        |  3 ++-
 drivers/tty/serial/8250/8250_dwlib.h        |  2 +-
 drivers/tty/serial/8250/8250_fintek.c       |  2 +-
 drivers/tty/serial/8250/8250_lpss.c         |  2 +-
 drivers/tty/serial/8250/8250_mid.c          |  5 ++--
 drivers/tty/serial/8250/8250_mtk.c          |  2 +-
 drivers/tty/serial/8250/8250_omap.c         |  2 +-
 drivers/tty/serial/8250/8250_port.c         |  6 ++---
 drivers/tty/serial/altera_jtaguart.c        |  4 ++--
 drivers/tty/serial/altera_uart.c            |  2 +-
 drivers/tty/serial/amba-pl010.c             |  2 +-
 drivers/tty/serial/amba-pl011.c             |  4 ++--
 drivers/tty/serial/apbuart.c                |  2 +-
 drivers/tty/serial/ar933x_uart.c            |  2 +-
 drivers/tty/serial/arc_uart.c               |  2 +-
 drivers/tty/serial/atmel_serial.c           |  5 ++--
 drivers/tty/serial/bcm63xx_uart.c           |  5 ++--
 drivers/tty/serial/clps711x.c               |  2 +-
 drivers/tty/serial/cpm_uart/cpm_uart_core.c |  2 +-
 drivers/tty/serial/digicolor-usart.c        |  2 +-
 drivers/tty/serial/dz.c                     | 11 +++++----
 drivers/tty/serial/fsl_linflexuart.c        |  2 +-
 drivers/tty/serial/fsl_lpuart.c             |  4 ++--
 drivers/tty/serial/icom.c                   |  5 ++--
 drivers/tty/serial/imx.c                    |  2 +-
 drivers/tty/serial/ip22zilog.c              |  2 +-
 drivers/tty/serial/jsm/jsm_tty.c            |  4 ++--
 drivers/tty/serial/lantiq.c                 |  4 ++--
 drivers/tty/serial/liteuart.c               |  2 +-
 drivers/tty/serial/lpc32xx_hs.c             |  2 +-
 drivers/tty/serial/max3100.c                |  2 +-
 drivers/tty/serial/max310x.c                |  2 +-
 drivers/tty/serial/mcf.c                    |  2 +-
 drivers/tty/serial/men_z135_uart.c          |  4 ++--
 drivers/tty/serial/meson_uart.c             |  2 +-
 drivers/tty/serial/milbeaut_usio.c          |  3 ++-
 drivers/tty/serial/mpc52xx_uart.c           | 12 +++++-----
 drivers/tty/serial/mps2-uart.c              |  2 +-
 drivers/tty/serial/msm_serial.c             |  2 +-
 drivers/tty/serial/mux.c                    |  2 +-
 drivers/tty/serial/mvebu-uart.c             |  2 +-
 drivers/tty/serial/mxs-auart.c              |  2 +-
 drivers/tty/serial/omap-serial.c            |  2 +-
 drivers/tty/serial/owl-uart.c               |  2 +-
 drivers/tty/serial/pch_uart.c               |  3 ++-
 drivers/tty/serial/pic32_uart.c             |  2 +-
 drivers/tty/serial/pmac_zilog.c             |  4 ++--
 drivers/tty/serial/pxa.c                    |  2 +-
 drivers/tty/serial/qcom_geni_serial.c       |  3 ++-
 drivers/tty/serial/rda-uart.c               |  2 +-
 drivers/tty/serial/rp2.c                    |  5 ++--
 drivers/tty/serial/sa1100.c                 |  2 +-
 drivers/tty/serial/samsung_tty.c            |  2 +-
 drivers/tty/serial/sb1250-duart.c           |  2 +-
 drivers/tty/serial/sc16is7xx.c              |  2 +-
 drivers/tty/serial/sccnxp.c                 |  3 ++-
 drivers/tty/serial/serial-tegra.c           |  3 ++-
 drivers/tty/serial/serial_core.c            |  8 +++----
 drivers/tty/serial/serial_txx9.c            |  2 +-
 drivers/tty/serial/sh-sci.c                 |  2 +-
 drivers/tty/serial/sifive.c                 |  2 +-
 drivers/tty/serial/sprd_serial.c            |  5 ++--
 drivers/tty/serial/st-asc.c                 |  2 +-
 drivers/tty/serial/stm32-usart.c            |  2 +-
 drivers/tty/serial/sunhv.c                  |  2 +-
 drivers/tty/serial/sunplus-uart.c           |  2 +-
 drivers/tty/serial/sunsab.c                 |  2 +-
 drivers/tty/serial/sunsu.c                  |  2 +-
 drivers/tty/serial/sunzilog.c               |  2 +-
 drivers/tty/serial/tegra-tcu.c              |  2 +-
 drivers/tty/serial/timbuart.c               |  4 ++--
 drivers/tty/serial/uartlite.c               |  5 ++--
 drivers/tty/serial/ucc_uart.c               |  3 ++-
 drivers/tty/serial/vt8500_serial.c          |  2 +-
 drivers/tty/serial/xilinx_uartps.c          |  3 ++-
 drivers/tty/serial/zs.c                     |  2 +-
 drivers/tty/synclink_gt.c                   |  3 ++-
 drivers/tty/tty.h                           |  2 +-
 drivers/tty/tty_baudrate.c                  | 26 +++++++--------------
 drivers/tty/tty_ioctl.c                     |  4 ++--
 drivers/usb/class/cdc-acm.c                 |  4 ++--
 drivers/usb/serial/ark3116.c                |  2 +-
 drivers/usb/serial/belkin_sa.c              |  6 +++--
 drivers/usb/serial/ch341.c                  |  5 ++--
 drivers/usb/serial/cp210x.c                 | 13 +++++++----
 drivers/usb/serial/cypress_m8.c             |  6 +++--
 drivers/usb/serial/digi_acceleport.c        |  6 +++--
 drivers/usb/serial/f81232.c                 |  3 ++-
 drivers/usb/serial/f81534.c                 |  4 ++--
 drivers/usb/serial/ftdi_sio.c               |  6 +++--
 drivers/usb/serial/io_edgeport.c            |  7 +++---
 drivers/usb/serial/io_ti.c                  |  8 ++++---
 drivers/usb/serial/ir-usb.c                 |  6 +++--
 drivers/usb/serial/iuu_phoenix.c            |  3 ++-
 drivers/usb/serial/keyspan.c                |  3 ++-
 drivers/usb/serial/keyspan_pda.c            |  3 ++-
 drivers/usb/serial/kl5kusb105.c             |  5 ++--
 drivers/usb/serial/kobil_sct.c              |  6 +++--
 drivers/usb/serial/mct_u232.c               |  5 ++--
 drivers/usb/serial/mos7720.c                |  5 ++--
 drivers/usb/serial/mos7840.c                |  5 ++--
 drivers/usb/serial/mxuport.c                |  4 ++--
 drivers/usb/serial/oti6858.c                |  6 +++--
 drivers/usb/serial/pl2303.c                 |  3 ++-
 drivers/usb/serial/quatech2.c               |  4 ++--
 drivers/usb/serial/spcp8x5.c                |  3 ++-
 drivers/usb/serial/ssu100.c                 |  4 ++--
 drivers/usb/serial/ti_usb_3410_5052.c       |  6 +++--
 drivers/usb/serial/upd78f0730.c             |  4 ++--
 drivers/usb/serial/usb-serial.c             |  3 ++-
 drivers/usb/serial/whiteheat.c              |  6 +++--
 drivers/usb/serial/xr_serial.c              | 20 +++++++++-------
 include/linux/serial_8250.h                 |  4 ++--
 include/linux/serial_core.h                 |  6 ++---
 include/linux/tty.h                         |  4 ++--
 include/linux/tty_driver.h                  |  4 ++--
 include/linux/tty_ldisc.h                   |  4 ++--
 include/linux/usb/serial.h                  |  4 ++--
 net/bluetooth/rfcomm/tty.c                  |  3 ++-
 135 files changed, 283 insertions(+), 234 deletions(-)

-- 
2.30.2




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux