Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/tty/n_hdlc.c flush_rx_queue() -> n_hdlc_buf_put()

Type Parameter Key Value
PARAM_VALUE 0 buf_list 4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
DATA_SOURCE 1 buf r n_hdlc_buf_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &buf->lock
HALF_LOCKED2 &tty->atomic_write_lock
HALF_LOCKED2 &tty->ldisc_sem
HALF_LOCKED2 &tty->ldisc_sem
HALF_LOCKED2 &tty->legacy_mutex

drivers/tty/n_hdlc.c flush_tx_queue() -> n_hdlc_buf_put()

Type Parameter Key Value
PARAM_VALUE 0 buf_list 4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
DATA_SOURCE 1 buf r n_hdlc_buf_get
NOCHECK_CALL
LOCK2 &tty->ldisc_sem
TYPE_LOCK (struct tty_struct)->ldisc_sem

drivers/tty/n_hdlc.c n_hdlc_alloc_buf() -> n_hdlc_buf_put()

Type Parameter Key Value
PARAM_VALUE 0 buf_list 4096-ptr_max
PARAM_VALUE 0 buf_list->list.next 4096-ptr_max
PARAM_VALUE 0 buf_list->list.prev 4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
BUF_SIZE 1 buf 24-u64max
BUF_SIZE 1 buf 24-u64max
DATA_SOURCE 0 buf_list $0
DATA_SOURCE 1 buf r _kmalloc_noprof
STR_LEN 0 buf_list 2
STR_LEN 0 buf_list 2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tty->ldisc_sem
HALF_LOCKED2 &tty->legacy_mutex

drivers/tty/n_hdlc.c n_hdlc_send_frames() -> n_hdlc_buf_put()

Type Parameter Key Value
PARAM_VALUE 0 buf_list 4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
CAPPED_DATA 1 buf->count 1
DATA_SOURCE 1 buf r n_hdlc_buf_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &tty->atomic_write_lock
HALF_LOCKED2 &tty->ldisc_sem

drivers/tty/n_hdlc.c n_hdlc_tty_read() -> n_hdlc_buf_put()

Type Parameter Key Value
PARAM_VALUE 0 buf_list 4096-ptr_max
PARAM_VALUE 0 buf_list->count s32min-10
PARAM_VALUE 1 buf 4096-ptr_max
CAPPED_DATA 1 buf->count 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tty->ldisc_sem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct tty_struct)->ldisc_sem

drivers/tty/n_hdlc.c n_hdlc_tty_receive() -> n_hdlc_buf_put()

Type Parameter Key Value
PARAM_VALUE 0 buf_list 4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
BUF_SIZE 1 buf 24-u64max
BUF_SIZE 1 buf 24-u64max
CAPPED_DATA 1 buf->count 1
NOCHECK_CALL
USER_DATA 1 *buf->buf 0-255
USER_PTR 1 buf->buf
HALF_LOCKED2 &tty->ldisc_sem
HALF_LOCKED2 &tty->ldisc_sem
HALF_LOCKED2 &tty->port->buf.lock

drivers/tty/n_hdlc.c n_hdlc_tty_write() -> n_hdlc_buf_put()

Type Parameter Key Value
PARAM_VALUE 0 buf_list 4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 1 buf->count 0-65536
DATA_SOURCE 1 buf r n_hdlc_buf_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tty->atomic_write_lock
LOCK2 &tty->ldisc_sem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct tty_struct)->atomic_write_lock
TYPE_LOCK (struct tty_struct)->ldisc_sem