Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 8 files:

Smatch caller information:

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

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->ctrl.session 0,4096-ptr_max
DATA_SOURCE 0 tty $0
NOCHECK_CALL
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &console_sem

drivers/tty/tty_port.c tty_port_close_end() -> tty_ldisc_flush()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->closing 1
PARAM_VALUE 0 tty->driver_data->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 tty->driver_data->port_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 tty->driver_data->refcount.counter 0-s32max
PARAM_VALUE 0 tty->driver_data->serial->disc_mutex.dep_map->name 0-255
PARAM_VALUE 0 tty->driver_data->serial->disc_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 tty->driver_data->serial->disc_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 tty->driver_data->serial->disc_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 tty->driver_data->serial->disc_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 tty->driver_data->serial->disc_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 tty->driver_data->serial->disc_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 tty->driver_data->uart_port->state->refcount.counter s32min-s32max
PARAM_VALUE 0 tty->driver_data->write_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 tty->ldisc_sem.dep_map->name 0-255
PARAM_VALUE 0 tty->ldisc_sem.read_wait.next 4096-ptr_max
PARAM_VALUE 0 tty->ldisc_sem.read_wait.next->next 4096-ptr_max
PARAM_VALUE 0 tty->ldisc_sem.read_wait.prev 4096-ptr_max
PARAM_VALUE 0 tty->ldisc_sem.read_wait.prev->next 4096-ptr_max
PARAM_VALUE 0 tty->ldisc_sem.read_wait.prev->prev 4096-ptr_max
PARAM_VALUE 0 tty->ldisc_sem.wait_readers 0
PARAM_VALUE 0 tty->legacy_mutex.dep_map->name 0-255
PARAM_VALUE 0 tty->legacy_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 tty->legacy_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 tty->legacy_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 tty->legacy_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 tty->ops->close 4096-ptr_max
PARAM_VALUE 0 tty->ops->ldisc_ok 0,4096-ptr_max
PARAM_VALUE 0 tty->ops->lookup 0,1028560029362032640,3174408500077174784
PARAM_VALUE 0 tty->ops->open 0,4096-ptr_max
PARAM_VALUE 0 tty->ops->set_ldisc 0,4096-ptr_max
PARAM_VALUE 0 tty->ops->set_termios 0,4096-ptr_max
PARAM_VALUE 0 tty->port->buf.lock.dep_map->name 0-255
PARAM_VALUE 0 tty->port->buf.lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 tty->port->buf.lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 tty->port->buf.lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 tty->port->buf.lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 tty->port->buf.lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 tty->port->buf.lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 tty->port->buf.lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 tty->port->buf.lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 tty->port->buf.lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 tty->port->buf.work.entry.next 4096-ptr_max
PARAM_VALUE 0 tty->port->buf.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 tty->termios_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 tty->termios_rwsem.first_waiter->type 0-1
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
NOCHECK_CALL
LOCK2 0 &tty->legacy_mutex
HALF_LOCKED2 global &spk_mutex
HALF_LOCKED2 0 &tty->driver_data->d_lockref.lock
TYPE_LOCK (struct tty_struct)->legacy_mutex

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

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->closing 1
PARAM_VALUE 0 tty->legacy_mutex.dep_map->name 0-255
PARAM_VALUE 0 tty->legacy_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 tty->legacy_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 tty->legacy_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 tty->legacy_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 tty->ops->close 4096-ptr_max
PARAM_VALUE 0 tty->ops->ldisc_ok 0,4096-ptr_max
PARAM_VALUE 0 tty->ops->lookup 0,1028560029362032640,3174408500077174784
PARAM_VALUE 0 tty->ops->open 0,4096-ptr_max
PARAM_VALUE 0 tty->ops->set_ldisc 0,4096-ptr_max
PARAM_VALUE 0 tty->ops->set_termios 0,4096-ptr_max
PARAM_VALUE 0 tty->termios_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 tty->termios_rwsem.first_waiter->type 0-1
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
NOCHECK_CALL
LOCK2 0 &tty->legacy_mutex
HALF_LOCKED2 global &spk_mutex
HALF_LOCKED2 0 &tty->driver_data->d_lockref.lock
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/vt/vt_ioctl.c vt_k_ioctl() -> tty_ldisc_flush()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->driver_data 4096-ptr_max
PARAM_VALUE 0 tty->ops 4096-ptr_max
PARAM_VALUE 0 tty->ops->compat_ioctl 0,1607379221601308672,5008286898947497984,6364353445524312064
PARAM_VALUE 0 tty->ops->ioctl 0,4096-ptr_max
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty $0
NOCHECK_CALL

drivers/bluetooth/hci_ldisc.c hci_uart_flush() -> tty_ldisc_flush()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &hdev->req_lock

drivers/tty/n_gsm.c gsm_cleanup_mux() -> tty_ldisc_flush()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tty->ldisc_sem

drivers/accessibility/speakup/spk_ttyio.c spk_ttyio_release() -> tty_ldisc_flush()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->legacy_mutex.dep_map->name 0-255
PARAM_VALUE 0 tty->legacy_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 tty->legacy_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 tty->legacy_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 tty->ops 4096-ptr_max
PARAM_VALUE 0 tty->ops->close 0,4096-ptr_max
BUF_SIZE 0 tty 1816
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &spk_mutex
LOCK2 0 &tty->legacy_mutex
TYPE_LOCK (struct tty_struct)->legacy_mutex