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().