|
FreeBSD kernel kern code
|
#include <sys/cdefs.h>#include <sys/param.h>#include <sys/kernel.h>#include <sys/lock.h>#include <sys/queue.h>#include <sys/systm.h>#include <sys/tty.h>#include <sys/uio.h>#include <vm/uma.h>
Go to the source code of this file.
Data Structures | |
| struct | ttyoutq_block |
Macros | |
| #define | TTYOUTQ_INSERT_TAIL(to, tob) |
| #define | TTYOUTQ_REMOVE_HEAD(to) |
| #define | TTYOUTQ_RECYCLE(to, tob) |
Functions | |
| __FBSDID ("$BSDSUniX$") | |
| void | ttyoutq_flush (struct ttyoutq *to) |
| void | ttyoutq_setsize (struct ttyoutq *to, struct tty *tp, size_t size) |
| void | ttyoutq_free (struct ttyoutq *to) |
| size_t | ttyoutq_read (struct ttyoutq *to, void *buf, size_t len) |
| int | ttyoutq_read_uio (struct ttyoutq *to, struct tty *tp, struct uio *uio) |
| size_t | ttyoutq_write (struct ttyoutq *to, const void *buf, size_t nbytes) |
| int | ttyoutq_write_nofrag (struct ttyoutq *to, const void *buf, size_t nbytes) |
| static void | ttyoutq_startup (void *dummy) |
| SYSINIT (ttyoutq, SI_SUB_DRIVERS, SI_ORDER_FIRST, ttyoutq_startup, NULL) | |
Variables | |
| static uma_zone_t | ttyoutq_zone |
| #define TTYOUTQ_INSERT_TAIL | ( | to, | |
| tob | |||
| ) |
Definition at line 61 of file tty_outq.c.
Referenced by ttyoutq_setsize().
| #define TTYOUTQ_RECYCLE | ( | to, | |
| tob | |||
| ) |
Definition at line 77 of file tty_outq.c.
Referenced by ttyoutq_read(), and ttyoutq_read_uio().
| #define TTYOUTQ_REMOVE_HEAD | ( | to | ) |
Definition at line 72 of file tty_outq.c.
Referenced by ttyoutq_free(), ttyoutq_read(), and ttyoutq_read_uio().
| __FBSDID | ( | "$BSDSUniX$" | ) |
| SYSINIT | ( | ttyoutq | , |
| SI_SUB_DRIVERS | , | ||
| SI_ORDER_FIRST | , | ||
| ttyoutq_startup | , | ||
| NULL | |||
| ) |
| void ttyoutq_flush | ( | struct ttyoutq * | to | ) |
Definition at line 85 of file tty_outq.c.
Referenced by tty_flush(), ttydisc_close(), and ttyoutq_free().

| void ttyoutq_free | ( | struct ttyoutq * | to | ) |
Definition at line 119 of file tty_outq.c.
References ttyoutq_flush(), TTYOUTQ_REMOVE_HEAD, and ttyoutq_zone.
Referenced by ttydev_leave().


| size_t ttyoutq_read | ( | struct ttyoutq * | to, |
| void * | buf, | ||
| size_t | len | ||
| ) |
Definition at line 135 of file tty_outq.c.
References buf, ttyoutq_block::tob_data, TTYOUTQ_RECYCLE, and TTYOUTQ_REMOVE_HEAD.
Referenced by ttydisc_getc().

| int ttyoutq_read_uio | ( | struct ttyoutq * | to, |
| struct tty * | tp, | ||
| struct uio * | uio | ||
| ) |
Definition at line 196 of file tty_outq.c.
References ttyoutq_block::tob_data, TTYOUTQ_RECYCLE, TTYOUTQ_REMOVE_HEAD, and uiomove().
Referenced by ttydisc_getc_uio().


| void ttyoutq_setsize | ( | struct ttyoutq * | to, |
| struct tty * | tp, | ||
| size_t | size | ||
| ) |
Definition at line 93 of file tty_outq.c.
References TTYOUTQ_INSERT_TAIL, and ttyoutq_zone.
Referenced by TAILQ_HEAD().

|
static |
Definition at line 332 of file tty_outq.c.
References ttyoutq_zone.
| size_t ttyoutq_write | ( | struct ttyoutq * | to, |
| const void * | buf, | ||
| size_t | nbytes | ||
| ) |
Definition at line 272 of file tty_outq.c.
References buf, ttyoutq_block::tob_data, and ttyoutq_block::tob_next.
Referenced by ttydisc_write(), and ttyoutq_write_nofrag().

| int ttyoutq_write_nofrag | ( | struct ttyoutq * | to, |
| const void * | buf, | ||
| size_t | nbytes | ||
| ) |
Definition at line 317 of file tty_outq.c.
References ttyoutq_write().
Referenced by tty_hiwat_in_block(), tty_hiwat_in_unblock(), ttydisc_echo_force(), ttydisc_rint(), ttydisc_rubchar(), and ttydisc_write_oproc().


|
static |
Definition at line 59 of file tty_outq.c.
Referenced by ttyoutq_free(), ttyoutq_setsize(), and ttyoutq_startup().