Documented in 1 files:
Defined in 1 files as a function:
Referenced in 8 files:
- drivers/accessibility/speakup/selection.c
- drivers/tty/n_gsm.c, line 3578
- drivers/tty/tty_io.c, line 1203
- drivers/tty/tty_jobctrl.c
- drivers/tty/tty_mutex.c
- drivers/tty/tty_port.c
- kernel/audit.c, line 2446
- kernel/fork.c, line 2526
Smatch caller information:
drivers/tty/tty_io.c tty_driver_lookup_tty() -> tty_kref_get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | tty | 0-ptr_max |
| BUF_SIZE | 0 | tty | (-1),1-s32max |
| BUF_SIZE | 0 | tty | (-1),1-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &tty_mutex |
drivers/tty/tty_port.c tty_port_tty_get() -> tty_kref_get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| BUF_SIZE | 0 | tty | s32min,(-1),1-s32max |
| BUF_SIZE | 0 | tty | s32min,(-1),1-s32max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &port->lock | ||
| LOCK2 | irq | ||
| HALF_LOCKED2 | &dc->spin_mutex | ||
| HALF_LOCKED2 | &dev->event_lock | ||
| HALF_LOCKED2 | &edge_serial->es_lock | ||
| HALF_LOCKED2 | &gsm->mutex | ||
| HALF_LOCKED2 | &hp->lock | ||
| HALF_LOCKED2 | &port->slock | ||
| HALF_LOCKED2 | &priv->lock | ||
| HALF_LOCKED2 | &priv->port.lock | ||
| HALF_LOCKED2 | &serial->serial_lock | ||
| HALF_LOCKED2 | &sport->port.lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | global &kbd_event_lock | ||
| HALF_LOCKED2 | global &moxa_lock | ||
| HALF_LOCKED2 | rcu_read | ||
| TYPE_LOCK | (struct tty_port)->lock |
drivers/tty/tty_port.c tty_port_tty_set() -> tty_kref_get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | tty | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->link->termios_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | tty->link->termios_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | tty->ops | 4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->lookup | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->open | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->write | 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 |
| BUF_SIZE | 0 | tty->driver_data | (-1),1-s32max |
| BUF_SIZE | 0 | tty->link->driver_data | (-1),1-s32max |
| BUF_SIZE | 0 | tty->ops | (-1),296 |
| CAPPED_DATA | 0 | tty | 1 |
| DATA_SOURCE | 0 | tty | $1 |
| NOSPEC | 0 | tty->index | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | tty->index | 0-s16max[c] |
| USER_DATA | 0 | tty->termios.c_ispeed | 0-u32max |
| USER_DATA | 0 | tty->termios.c_ospeed | 0-u32max |
| LOCK2 | &port->lock | ||
| LOCK2 | irq | ||
| HALF_LOCKED2 | &gsm->mutex | ||
| HALF_LOCKED2 | &serial->disc_mutex | ||
| HALF_LOCKED2 | &serial->parent->mutex | ||
| HALF_LOCKED2 | &tty->legacy_mutex | ||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | global &console_mutex | ||
| HALF_LOCKED2 | 0 | &tty->legacy_mutex | |
| TYPE_LOCK | (struct tty_port)->lock |
kernel/fork.c copy_process() -> tty_kref_get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | global &tasklist_lock | ||
| LOCK2 | irq |
drivers/accessibility/speakup/selection.c speakup_paste_selection() -> tty_kref_get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | tty | $0 |
| NOCHECK_CALL | |||
| LOCK2 | flags | ||
| LOCK2 | global &speakup_info.spinlock | ||
| TYPE_LOCK | (struct speakup_info_t)->spinlock |
drivers/accessibility/speakup/selection.c speakup_set_selection() -> tty_kref_get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | tty | $0 |
| NOCHECK_CALL | |||
| LOCK2 | flags | ||
| LOCK2 | global &speakup_info.spinlock | ||
| TYPE_LOCK | (struct speakup_info_t)->spinlock |
drivers/tty/n_gsm.c gsmld_attach_gsm() -> tty_kref_get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | tty | 4096-ptr_max |
| PARAM_VALUE | 0 | tty->disc_data | 4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops | 4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->break_ctl | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->chars_in_buffer | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->cleanup | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->close | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->compat_ioctl | 0,1607379221601308672,5008286898947497984,6364353445524312064 |
| PARAM_VALUE | 0 | tty->ops->flush_buffer | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->flush_chars | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->get_icount | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->get_serial | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->hangup | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->install | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->ioctl | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->ldisc_ok | 0,6843386834578624512 |
| PARAM_VALUE | 0 | tty->ops->lookup | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->open | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->poll_get_char | 0,4172584550987694080,8810588628199956480 |
| PARAM_VALUE | 0 | tty->ops->poll_init | 0,1455831725284642816,7005422354281586688 |
| PARAM_VALUE | 0 | tty->ops->poll_put_char | 0,317088091350007808,4944462343817641984 |
| PARAM_VALUE | 0 | tty->ops->proc_show | 0,356236415985979392,5729891321464528896,9011853526131630080 |
| PARAM_VALUE | 0 | tty->ops->put_char | 0,46317935159074816,946511232463630336,5234932001147445248,6499862429192966144,7134038662404317184 |
| PARAM_VALUE | 0 | tty->ops->remove | 0,384629141214146560,3489019467251376128 |
| PARAM_VALUE | 0 | tty->ops->resize | 0,2815742157479378944,7598537204212207616 |
| PARAM_VALUE | 0 | tty->ops->send_xchar | 0,2462859047340216320,4708555404674125824,8710759130855649280 |
| PARAM_VALUE | 0 | tty->ops->set_ldisc | 0,1741587377620623360 |
| PARAM_VALUE | 0 | tty->ops->set_serial | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->set_termios | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->show_fdinfo | 0,5525676422896762880 |
| PARAM_VALUE | 0 | tty->ops->shutdown | 0,3518621193109893120,5469287042401259520 |
| PARAM_VALUE | 0 | tty->ops->start | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->stop | 0,550124932249174016,3234480389994364928,5153393563898503168,6441875407016759296,7334840043119542272 |
| PARAM_VALUE | 0 | tty->ops->throttle | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->tiocmget | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->tiocmset | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->unthrottle | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->wait_until_sent | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->write | 4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->write_room | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->receive_room | 65536 |
| 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 |
| BUF_SIZE | 0 | tty->disc_data | 1552 |
| BUF_SIZE | 0 | tty->ldisc | (-1),4,16,24,64,168-s32max |
| BUF_SIZE | 0 | tty->port->itty | (-1),8-s32max |
| DATA_SOURCE | 0 | tty | $0 |
| CAPABLE | 0 | 12 | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | tty->termios.c_line | 0-30 |
| NO_OVERFLOW_SIMPLE | 0 | tty->driver_data->d_fsdata | |
| NO_OVERFLOW_SIMPLE | 0 | tty->driver_data->d_fsdata->d_fsdata | |
| NO_OVERFLOW_SIMPLE | 0 | tty->name | |
| HALF_LOCKED2 | &tty->legacy_mutex | ||
| HALF_LOCKED2 | 0 | &tty->ldisc_sem | |
| HALF_LOCKED2 | 0 | &tty->legacy_mutex |
drivers/tty/tty_mutex.c tty_lock() -> tty_kref_get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | tty->link->termios_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | tty->link->termios_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | tty->ops->chars_in_buffer | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->close | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->hangup | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->ldisc_ok | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->lookup | 0,4096-ptr_max |
| 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->ops->write | 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 |
| BUF_SIZE | 0 | tty->driver_data | (-1),1-s32max |
| BUF_SIZE | 0 | tty->link->driver_data | (-1),1-s32max |
| DATA_SOURCE | 0 | tty | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &tty->legacy_mutex | ||
| HALF_LOCKED2 | global &spk_mutex | ||
| HALF_LOCKED2 | 0 | &tty->driver_data->d_lockref.lock |
drivers/tty/tty_mutex.c tty_lock_interruptible() -> tty_kref_get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | tty | 4096-ptr_max |
| PARAM_VALUE | 0 | tty->port | 4096-ptr_max |
| BUF_SIZE | 0 | tty | (-1),1-s32max |
| BUF_SIZE | 0 | tty | (-1),1-s32max |
| DATA_SOURCE | 0 | tty | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/audit.c audit_get_tty() -> tty_kref_get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | flags |
drivers/tty/tty_jobctrl.c __proc_set_tty() -> tty_kref_get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | tty | 4096-ptr_max |
| PARAM_VALUE | 0 | tty->ctrl.lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | tty->ctrl.pgrp | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ctrl.session | 0,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.first_waiter->list.prev->prev | 5159360019465732096 |
| PARAM_VALUE | 0 | tty->legacy_mutex.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | tty->ops->lookup | 0,4096-ptr_max |
| PARAM_VALUE | 0 | tty->ops->open | 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 | (-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 get_current_tty() -> tty_kref_get()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | flags |