Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 12 files:

Smatch caller information:

drivers/tty/vt/vt_ioctl.c vt_disallocate() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
NOCHECK_CALL

drivers/tty/vt/vt_ioctl.c vt_disallocate_all() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 1-u64max
NOCHECK_CALL

drivers/tty/n_gsm.c dlci_put() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &gsm->mutex
HALF_LOCKED2 &tty->legacy_mutex

drivers/staging/greybus/uart.c gb_tty_cleanup() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/staging/greybus/uart.c gb_tty_install() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->kref.refcount.refs.counter (-1073741824),0-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tty->legacy_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &spk_mutex
HALF_LOCKED2 global &tty_mutex
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/staging/greybus/uart.c gb_uart_probe() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->buf.head 256
PARAM_VALUE 0 port->buf.lock.magic 4096-ptr_max
PARAM_VALUE 0 port->buf.mem_limit 655360
PARAM_VALUE 0 port->buf.sentinel.flags 1
PARAM_VALUE 0 port->buf.tail 256
PARAM_VALUE 0 port->buf_mutex.magic 4096-ptr_max
PARAM_VALUE 0 port->client_ops 6331571049099714560
PARAM_VALUE 0 port->close_delay 125
PARAM_VALUE 0 port->closing_wait 7500
PARAM_VALUE 0 port->console 0
PARAM_VALUE 0 port->count 0
PARAM_VALUE 0 port->delta_msr_wait.head.next 4096-ptr_max
PARAM_VALUE 0 port->delta_msr_wait.head.prev 4096-ptr_max
PARAM_VALUE 0 port->flags 0
PARAM_VALUE 0 port->iflags 0
PARAM_VALUE 0 port->itty 0
PARAM_VALUE 0 port->kref.refcount.refs.counter 1
PARAM_VALUE 0 port->open_wait.head.next 4096-ptr_max
PARAM_VALUE 0 port->open_wait.head.prev 4096-ptr_max
PARAM_VALUE 0 port->ops 5883381809575297024
PARAM_VALUE 0 port->tty 0
PARAM_VALUE 0 port->xmit_buf 0
MEM_ZERO 0 port
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/staging/greybus/uart.c gb_uart_remove() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->tty 0,4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->mutex

drivers/tty/hvc/hvc_console.c hvc_cleanup() -> tty_port_put()

Type Parameter Key Value
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/tty/hvc/hvc_console.c hvc_install() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->kref.refcount.refs.counter (-1073741824),0-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tty->legacy_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &spk_mutex
HALF_LOCKED2 global &tty_mutex
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/hvc/hvc_console.c hvc_instantiate() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->kref.refcount.refs.counter (-1073741824),0-s32max
NOCHECK_CALL

drivers/tty/hvc/hvc_console.c hvc_remove() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 1-u64max
PARAM_VALUE 0 port->tty 0,4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &xenwatch_mutex

drivers/tty/rpmsg_tty.c rpmsg_tty_cleanup() -> tty_port_put()

Type Parameter Key Value
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/tty/rpmsg_tty.c rpmsg_tty_probe() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->buf.head 256
PARAM_VALUE 0 port->buf.lock.magic 4096-ptr_max
PARAM_VALUE 0 port->buf.mem_limit 655360
PARAM_VALUE 0 port->buf.sentinel.flags 1
PARAM_VALUE 0 port->buf.tail 256
PARAM_VALUE 0 port->buf_mutex.magic 4096-ptr_max
PARAM_VALUE 0 port->client_ops 6331571049099714560
PARAM_VALUE 0 port->close_delay 125
PARAM_VALUE 0 port->closing_wait 7500
PARAM_VALUE 0 port->console 0
PARAM_VALUE 0 port->count 0
PARAM_VALUE 0 port->delta_msr_wait.head.next 4096-ptr_max
PARAM_VALUE 0 port->delta_msr_wait.head.prev 4096-ptr_max
PARAM_VALUE 0 port->flags 0
PARAM_VALUE 0 port->iflags 0
PARAM_VALUE 0 port->itty 0
PARAM_VALUE 0 port->kref.refcount.refs.counter 1
PARAM_VALUE 0 port->open_wait.head.next 4096-ptr_max
PARAM_VALUE 0 port->open_wait.head.prev 4096-ptr_max
PARAM_VALUE 0 port->ops 5068979051638902784
PARAM_VALUE 0 port->tty 0
PARAM_VALUE 0 port->xmit_buf 0
MEM_ZERO 0 port
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/tty/rpmsg_tty.c rpmsg_tty_remove() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port->tty 0,4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/tty/pty.c pty_cleanup() -> tty_port_put()

Type Parameter Key Value
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/tty/vt/vt.c con_cleanup() -> tty_port_put()

Type Parameter Key Value
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

net/bluetooth/rfcomm/tty.c __rfcomm_release_dev() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->kref.refcount.refs.counter (-1073741824),0-s32max
CAPABLE 0 12
NOCHECK_CALL
LOCK2 global &rfcomm_ioctl_mutex

net/bluetooth/rfcomm/tty.c __rfcomm_release_dev() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->kref.refcount.refs.counter (-1073741824),0-s32max
NOCHECK_CALL
LOCK2 global &rfcomm_ioctl_mutex

net/bluetooth/rfcomm/tty.c __rfcomm_release_dev() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->kref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 port->tty 0,4096-ptr_max
NOCHECK_CALL
LOCK2 global &rfcomm_ioctl_mutex

net/bluetooth/rfcomm/tty.c __rfcomm_release_dev() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->tty 0,4096-ptr_max
NOCHECK_CALL
LOCK2 global &rfcomm_ioctl_mutex

net/bluetooth/rfcomm/tty.c rfcomm_dev_add() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->buf.head 4096-ptr_max
PARAM_VALUE 0 port->buf.lock.magic 4096-ptr_max
PARAM_VALUE 0 port->buf.mem_limit 655360
PARAM_VALUE 0 port->buf.sentinel.flags 1
PARAM_VALUE 0 port->buf.tail 4096-ptr_max
PARAM_VALUE 0 port->buf_mutex.magic 4096-ptr_max
PARAM_VALUE 0 port->client_ops 6331571049099714560
PARAM_VALUE 0 port->close_delay 125
PARAM_VALUE 0 port->closing_wait 7500
PARAM_VALUE 0 port->console 0
PARAM_VALUE 0 port->count 0
PARAM_VALUE 0 port->delta_msr_wait.head.next 4096-ptr_max
PARAM_VALUE 0 port->delta_msr_wait.head.prev 4096-ptr_max
PARAM_VALUE 0 port->flags 0
PARAM_VALUE 0 port->iflags 0
PARAM_VALUE 0 port->itty 0
PARAM_VALUE 0 port->kref.refcount.refs.counter 1
PARAM_VALUE 0 port->open_wait.head.next 4096-ptr_max
PARAM_VALUE 0 port->open_wait.head.prev 4096-ptr_max
PARAM_VALUE 0 port->ops 5055247438337708032
PARAM_VALUE 0 port->tty 0
PARAM_VALUE 0 port->xmit_buf 0
NOCHECK_CALL
LOCK2 global &rfcomm_ioctl_mutex
HALF_LOCKED2 &smc->sk

net/bluetooth/rfcomm/tty.c rfcomm_get_dev_info() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->kref.refcount.refs.counter (-1073741824),0-s32max
NOCHECK_CALL
HALF_LOCKED2 &smc->sk

net/bluetooth/rfcomm/tty.c rfcomm_get_dev_list() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->kref.refcount.refs.counter (-1073741824),0-s32max
NOCHECK_CALL
LOCK2 global &rfcomm_dev_lock
HALF_LOCKED2 &smc->sk

net/bluetooth/rfcomm/tty.c rfcomm_tty_cleanup() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tty->legacy_mutex

net/bluetooth/rfcomm/tty.c rfcomm_tty_install() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->kref.refcount.refs.counter (-1073741824),0-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tty->legacy_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &spk_mutex
HALF_LOCKED2 global &tty_mutex
TYPE_LOCK (struct tty_struct)->legacy_mutex

net/bluetooth/rfcomm/tty.c rfcomm_wfree() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &commonring->lock
HALF_LOCKED2 &dlc->lock
HALF_LOCKED2 &fq->q.lock
HALF_LOCKED2 &priv->driver_lock
HALF_LOCKED2 &qp->q.lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 global &rfcomm_dev_lock
HALF_LOCKED2 global &rfcomm_ioctl_mutex
HALF_LOCKED2 global &rfcomm_mutex
HALF_LOCKED2 rcu_read

drivers/usb/class/cdc-acm.c acm_disconnect() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->tty 0,4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/usb/class/cdc-acm.c acm_tty_cleanup() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/usb/class/cdc-acm.c acm_tty_install() -> tty_port_put()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->kref.refcount.refs.counter (-1073741824),0-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tty->legacy_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &spk_mutex
HALF_LOCKED2 global &tty_mutex
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/mmc/core/sdio_uart.c sdio_uart_port_put() -> tty_port_put()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &m->lock
HALF_LOCKED2 &tty->legacy_mutex