Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/tty/tty_io.c __do_SAK() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
DATA_SOURCE 0 tty $0
LOCK2 global &tasklist_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &console_sem

drivers/tty/tty_io.c __do_SAK() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty $0
LOCK2 global &tasklist_lock
HALF_LOCKED2 &_T->lock->alloc_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &console_sem

drivers/tty/tty_io.c __do_SAK() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty $0
LOCK2 &_T->lock->alloc_lock
LOCK2 global &tasklist_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &console_sem

drivers/tty/tty_io.c check_tty_count() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->driver 4096-ptr_max
BUF_SIZE 0 tty (-1),1-s32max
BUF_SIZE 0 tty (-1),1-s32max
CAPPED_DATA 0 tty 1
CAPPED_DATA 0 &tty->tty_files 1
DATA_SOURCE 0 tty $0
STR_LEN 0 tty (-1),10
STR_LEN 0 tty (-1),10
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &tty->driver_data->d_lockref.lock
HALF_LOCKED2 0 &tty->legacy_mutex

drivers/tty/tty_io.c file_tty_write() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
DATA_SOURCE 0 tty r file_tty
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/tty/tty_io.c tty_init_dev() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->driver 4096-ptr_max
BUF_SIZE 0 tty 1816
BUF_SIZE 0 tty->port->itty 1816
DATA_SOURCE 0 tty r alloc_tty_struct
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &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/tty_io.c tty_release() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->driver 4096-ptr_max
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty r file_tty
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &tty->legacy_mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_io.c tty_release() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->driver 4096-ptr_max
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty r file_tty
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &tty->legacy_mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_io.c tty_release() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->driver 4096-ptr_max
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty r file_tty
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &tty->legacy_mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_io.c tty_release_checks() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->driver 4096-ptr_max
DATA_SOURCE 0 tty $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &tty->legacy_mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_io.c tty_release_checks() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->driver 4096-ptr_max
DATA_SOURCE 0 tty $0
BIT_INFO 0 tty->driver->flags 0x0,0xffffffffffffffef
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &tty->legacy_mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_io.c tty_release_checks() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->driver 4096-ptr_max
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty $0
BIT_INFO 0 tty->driver->flags 0x0,0xffffffffffffffef
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &tty->legacy_mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_io.c tty_release_checks() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->driver 4096-ptr_max
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty $0
BIT_INFO 0 tty->driver->flags 0x0,0xffffffffffffffef
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &tty->legacy_mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_port.c tty_port_close_start() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
BUF_SIZE 0 tty s32min,(-1),1-s32max
BUF_SIZE 0 tty s32min,(-1),1-s32max
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &port->lock
LOCK2 irq
LOCK2 0 &tty->legacy_mutex
HALF_LOCKED2 global &spk_mutex
HALF_LOCKED2 0 &tty->driver_data->d_lockref.lock
TYPE_LOCK (struct tty_port)->lock
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_port.c tty_port_close_start() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
BUF_SIZE 0 tty s32min,(-1),1-s32max
BUF_SIZE 0 tty s32min,(-1),1-s32max
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &port->lock
LOCK2 irq
LOCK2 0 &tty->legacy_mutex
HALF_LOCKED2 global &spk_mutex
HALF_LOCKED2 0 &tty->driver_data->d_lockref.lock
TYPE_LOCK (struct tty_port)->lock
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_jobctrl.c __proc_set_tty() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
BUF_SIZE 0 tty (-1),1-s32max
BUF_SIZE 0 tty (-1),1-s32max
DATA_SOURCE 0 tty $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &tasklist_lock
LOCK2 irq
HALF_LOCKED2 0 &tty->legacy_mutex

drivers/tty/tty_jobctrl.c __tty_check_change() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
BUF_SIZE 0 tty->write_buf (-1),1024-65536
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 tty->write_cnt 1025-u16max[c]
HALF_LOCKED2 0 &tty->atomic_write_lock
HALF_LOCKED2 0 &tty->ldisc_sem

drivers/tty/n_tty.c n_tty_receive_char_flagged() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty $0
USER_PTR 0 tty->disc_data->priv->rx_skb->data
LOCK2 _T->lock
HALF_LOCKED2 &tty->ldisc_sem
HALF_LOCKED2 0 &tty->ldisc_sem
HALF_LOCKED2 0 &tty->port->buf.lock

drivers/tty/n_tty.c n_tty_receive_overrun() -> tty_driver_name()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty $0
USER_PTR 0 tty->disc_data->priv->rx_skb->data
LOCK2 _T->lock
HALF_LOCKED2 &tty->ldisc_sem
HALF_LOCKED2 0 &tty->ldisc_sem
HALF_LOCKED2 0 &tty->port->buf.lock