Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/tty/tty_ldisc.c tty_ldisc_deinit() -> tty_ldisc_put()

Type Parameter Key Value
PARAM_VALUE 0 ld 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/tty/tty_ldisc.c tty_ldisc_failto() -> tty_ldisc_put()

Type Parameter Key Value
PARAM_VALUE 0 ld 4096-ptr_max
PARAM_VALUE 0 ld->ops 4096-ptr_max
PARAM_VALUE 0 ld->ops->open 1-u64max
PARAM_VALUE 0 ld->ops->owner 0,4096-ptr_max
PARAM_VALUE 0 ld->tty 4096-ptr_max
BUF_SIZE 0 ld 16
BUF_SIZE 0 ld->tty (-1),1816
DATA_SOURCE 0 ld r tty_ldisc_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tty->legacy_mutex
HALF_LOCKED2 global &speakup_tty_mutex
HALF_LOCKED2 global &spk_mutex
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_ldisc.c tty_ldisc_kill() -> tty_ldisc_put()

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

drivers/tty/tty_ldisc.c tty_ldisc_reinit() -> tty_ldisc_put()

Type Parameter Key Value
PARAM_VALUE 0 ld 4096-ptr_max
PARAM_VALUE 0 ld->ops 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tty->legacy_mutex
HALF_LOCKED2 &tty->driver_data->d_lockref.lock
HALF_LOCKED2 &tty->ldisc_sem
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_ldisc.c tty_ldisc_reinit() -> tty_ldisc_put()

Type Parameter Key Value
PARAM_VALUE 0 ld 4096-ptr_max
PARAM_VALUE 0 ld->ops 4096-ptr_max
PARAM_VALUE 0 ld->ops->open 1-u64max
PARAM_VALUE 0 ld->ops->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 ld->tty 4096-ptr_max
BUF_SIZE 0 ld 16
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tty->legacy_mutex
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_ldisc.c tty_set_ldisc() -> tty_ldisc_put()

Type Parameter Key Value
PARAM_VALUE 0 ld 4096-ptr_max
PARAM_VALUE 0 ld->ops 4096-ptr_max
PARAM_VALUE 0 ld->ops->open 1-u64max
PARAM_VALUE 0 ld->ops->owner 0,4096-ptr_max
PARAM_VALUE 0 ld->tty 4096-ptr_max
BUF_SIZE 0 ld 16
BUF_SIZE 0 ld->tty (-1),1816
DATA_SOURCE 0 ld r tty_ldisc_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 ld->tty->termios.c_line 0-30
LOCK2 &tty->legacy_mutex
HALF_LOCKED2 global &speakup_tty_mutex
HALF_LOCKED2 global &spk_mutex
TYPE_LOCK (struct tty_struct)->legacy_mutex

drivers/tty/tty_ldisc.c tty_set_ldisc() -> tty_ldisc_put()

Type Parameter Key Value
PARAM_VALUE 0 ld 4096-ptr_max
PARAM_VALUE 0 ld->ops 4096-ptr_max
PARAM_VALUE 0 ld->ops->owner 0,4096-ptr_max
BUF_SIZE 0 ld (-1),16
BUF_SIZE 0 ld (-1),16
BUF_SIZE 0 ld->tty (-1),1816
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 ld->tty->termios.c_line 0-30
LOCK2 &tty->legacy_mutex
HALF_LOCKED2 global &speakup_tty_mutex
HALF_LOCKED2 global &spk_mutex
TYPE_LOCK (struct tty_struct)->legacy_mutex