Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/tty/tty_io.c iterate_tty_write() -> tty_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->ldisc 1-u64max
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->next->next 4096-ptr_max
PARAM_VALUE 0 tty->ldisc_sem.read_wait.prev->prev 4096-ptr_max
PARAM_VALUE 0 tty->ops 4096-ptr_max
PARAM_VALUE 0 tty->ops->write 4096-ptr_max
PARAM_VALUE 0 tty->ops->write_room 0,4096-ptr_max
DATA_SOURCE 0 tty $1
BIT_INFO 1 ndelay 0x0,0x800
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &tty->ldisc_sem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct tty_struct)->ldisc_sem

drivers/tty/tty_io.c send_break() -> tty_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->driver 4096-ptr_max
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->write_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 tty->ops 4096-ptr_max
PARAM_VALUE 0 tty->ops->break_ctl 4096-ptr_max
PARAM_VALUE 1 ndelay 0
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty $0
BIT_INFO 0 tty->driver->flags 0x0,0xffffffffffffffdf

drivers/tty/tty_io.c tty_send_xchar() -> tty_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->ldisc 1-u64max
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->next->next 4096-ptr_max
PARAM_VALUE 0 tty->ldisc_sem.read_wait.prev->prev 4096-ptr_max
PARAM_VALUE 0 tty->ops 4096-ptr_max
PARAM_VALUE 0 tty->ops->chars_in_buffer 0,4096-ptr_max
PARAM_VALUE 0 tty->ops->compat_ioctl 0,1607379221601308672,5008286898947497984,6364353445524312064
PARAM_VALUE 0 tty->ops->ioctl 0,4096-ptr_max
PARAM_VALUE 0 tty->ops->send_xchar 0
PARAM_VALUE 0 tty->termios.c_cc 4096-ptr_max
PARAM_VALUE 1 ndelay 0
CAPPED_DATA 0 tty 1
DATA_SOURCE 0 tty $0
LOCK2 0 &tty->ldisc_sem
TYPE_LOCK (struct tty_struct)->ldisc_sem

drivers/tty/tty_ioctl.c set_termios() -> tty_write_lock()

Type Parameter Key Value
PARAM_VALUE 0 tty 4096-ptr_max
PARAM_VALUE 0 tty->driver 4096-ptr_max
PARAM_VALUE 0 tty->ldisc 1-u64max
PARAM_VALUE 0 tty->ldisc_sem.read_wait.next 4096-ptr_max
PARAM_VALUE 0 tty->ldisc_sem.read_wait.prev 4096-ptr_max
PARAM_VALUE 0 tty->ops 4096-ptr_max
PARAM_VALUE 0 tty->termios_rwsem.dep_map->name 0-255
PARAM_VALUE 0 tty->termios_rwsem.first_waiter->handoff_set 1
PARAM_VALUE 0 tty->termios_rwsem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 tty->termios_rwsem.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 tty->termios_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 tty->termios_rwsem.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 tty->termios_rwsem.wait_lock.owner (-1)
PARAM_VALUE 0 tty->termios_rwsem.wait_lock.owner_cpu u32max
PARAM_VALUE 1 ndelay 0
CAPPED_DATA 0 &tty->termios_rwsem 1
DATA_SOURCE 0 tty $0
LOCK2 &tty->ldisc_sem
TYPE_LOCK (struct tty_struct)->ldisc_sem