taglinefilesource code
tty492fs/open.cstruct tty_struct *tty;
tty498fs/open.cif (current->tty < 0)
tty501fs/open.ctty = TTY_TABLE(current->tty);
tty502fs/open.cif (tty && tty->pgrp > 0)
tty503fs/open.ckill_pg(tty->pgrp, SIGHUP, 0);
tty518fs/open.cMINOR(filep->f_rdev) == MINOR (current->tty))) {
tty540fs/open.cif (*process && (*process)->tty == current->tty && *process != current) {
tty541fs/open.c(*process)->tty = -1;
tty545fs/open.ctty = TTY_TABLE(MINOR(current->tty));
tty546fs/open.cif (tty) {
tty547fs/open.ctty->session = 0;
tty548fs/open.ctty->pgrp = -1;
tty549fs/open.ccurrent->tty = -1;
tty210fs/proc/array.c(*p)->tty,
tty211fs/proc/array.c((*p)->tty == -1) ? -1 :
tty212fs/proc/array.ctty_table[(*p)->tty]->pgrp,
tty189include/linux/sched.hint tty;    /* -1 if no tty, so it must be signed */
tty25include/linux/serial.hstruct tty_struct   *tty;
tty133include/linux/tty.h#define INTR_CHAR(tty) ((tty)->termios->c_cc[VINTR])
tty134include/linux/tty.h#define QUIT_CHAR(tty) ((tty)->termios->c_cc[VQUIT])
tty135include/linux/tty.h#define ERASE_CHAR(tty) ((tty)->termios->c_cc[VERASE])
tty136include/linux/tty.h#define KILL_CHAR(tty) ((tty)->termios->c_cc[VKILL])
tty137include/linux/tty.h#define EOF_CHAR(tty) ((tty)->termios->c_cc[VEOF])
tty138include/linux/tty.h#define START_CHAR(tty) ((tty)->termios->c_cc[VSTART])
tty139include/linux/tty.h#define STOP_CHAR(tty) ((tty)->termios->c_cc[VSTOP])
tty140include/linux/tty.h#define SUSPEND_CHAR(tty) ((tty)->termios->c_cc[VSUSP])
tty142include/linux/tty.h#define _L_FLAG(tty,f)  ((tty)->termios->c_lflag & f)
tty143include/linux/tty.h#define _I_FLAG(tty,f)  ((tty)->termios->c_iflag & f)
tty144include/linux/tty.h#define _O_FLAG(tty,f)  ((tty)->termios->c_oflag & f)
tty146include/linux/tty.h#define L_CANON(tty)  _L_FLAG((tty),ICANON)
tty147include/linux/tty.h#define L_ISIG(tty)  _L_FLAG((tty),ISIG)
tty148include/linux/tty.h#define L_ECHO(tty)  _L_FLAG((tty),ECHO)
tty149include/linux/tty.h#define L_ECHOE(tty)  _L_FLAG((tty),ECHOE)
tty150include/linux/tty.h#define L_ECHOK(tty)  _L_FLAG((tty),ECHOK)
tty151include/linux/tty.h#define L_ECHONL(tty)  _L_FLAG((tty),ECHONL)
tty152include/linux/tty.h#define L_ECHOCTL(tty)  _L_FLAG((tty),ECHOCTL)
tty153include/linux/tty.h#define L_ECHOKE(tty)  _L_FLAG((tty),ECHOKE)
tty154include/linux/tty.h#define L_TOSTOP(tty)  _L_FLAG((tty),TOSTOP)
tty156include/linux/tty.h#define I_UCLC(tty)  _I_FLAG((tty),IUCLC)
tty157include/linux/tty.h#define I_NLCR(tty)  _I_FLAG((tty),INLCR)
tty158include/linux/tty.h#define I_CRNL(tty)  _I_FLAG((tty),ICRNL)
tty159include/linux/tty.h#define I_NOCR(tty)  _I_FLAG((tty),IGNCR)
tty160include/linux/tty.h#define I_IXON(tty)  _I_FLAG((tty),IXON)
tty161include/linux/tty.h#define I_IXANY(tty)  _I_FLAG((tty),IXANY)
tty162include/linux/tty.h#define I_STRP(tty)  _I_FLAG((tty),ISTRIP)
tty164include/linux/tty.h#define O_POST(tty)  _O_FLAG((tty),OPOST)
tty165include/linux/tty.h#define O_NLCR(tty)  _O_FLAG((tty),ONLCR)
tty166include/linux/tty.h#define O_CRNL(tty)  _O_FLAG((tty),OCRNL)
tty167include/linux/tty.h#define O_NLRET(tty)  _O_FLAG((tty),ONLRET)
tty168include/linux/tty.h#define O_LCUC(tty)  _O_FLAG((tty),OLCUC)
tty170include/linux/tty.h#define C_SPEED(tty)  ((tty)->termios->c_cflag & CBAUD)
tty171include/linux/tty.h#define C_HUP(tty)  (C_SPEED((tty)) == B0)
tty198include/linux/tty.hint  (*open)(struct tty_struct * tty, struct file * filp);
tty199include/linux/tty.hvoid (*close)(struct tty_struct * tty, struct file * filp);
tty200include/linux/tty.hvoid (*write)(struct tty_struct * tty);
tty201include/linux/tty.hint  (*ioctl)(struct tty_struct *tty, struct file * file,
tty203include/linux/tty.hvoid (*throttle)(struct tty_struct * tty, int status);
tty204include/linux/tty.hvoid (*set_termios)(struct tty_struct *tty, struct termios * old);
tty222include/linux/tty.hint  (*read)(struct tty_struct * tty, struct file * file,
tty224include/linux/tty.hint  (*write)(struct tty_struct * tty, struct file * file,
tty226include/linux/tty.hint  (*ioctl)(struct tty_struct * tty, struct file * file,
tty282include/linux/tty.h#define TTY_WRITE_FLUSH(tty) tty_write_flush((tty))
tty283include/linux/tty.h#define TTY_READ_FLUSH(tty) tty_read_flush((tty))
tty313include/linux/tty.hextern void flush_input(struct tty_struct * tty);
tty314include/linux/tty.hextern void flush_output(struct tty_struct * tty);
tty315include/linux/tty.hextern void wait_until_sent(struct tty_struct * tty);
tty316include/linux/tty.hextern void copy_to_cooked(struct tty_struct * tty);
tty322include/linux/tty.hextern int tty_signal(int sig, struct tty_struct *tty);
tty325include/linux/tty.hextern void tty_hangup(struct tty_struct * tty);
tty327include/linux/tty.hextern void do_SAK(struct tty_struct *tty);
tty331include/linux/tty.hextern void rs_write(struct tty_struct * tty);
tty332include/linux/tty.hextern void con_write(struct tty_struct * tty);
tty336include/linux/tty.hextern int  rs_open(struct tty_struct * tty, struct file * filp);
tty340include/linux/tty.hextern int  pty_open(struct tty_struct * tty, struct file * filp);
tty344include/linux/tty.hextern int con_open(struct tty_struct * tty, struct file * filp);
tty351include/linux/tty.hextern int vt_ioctl(struct tty_struct *tty, struct file * file,
tty598kernel/chr_drv/console.cstatic void respond_string(char * p, int currcons, struct tty_struct * tty)
tty601kernel/chr_drv/console.cput_tty_queue(*p, &tty->read_q);
tty604kernel/chr_drv/console.cTTY_READ_FLUSH(tty);
tty607kernel/chr_drv/console.cstatic void respond_num(unsigned int n, int currcons, struct tty_struct * tty)
tty617kernel/chr_drv/console.cput_tty_queue(buff[i], &tty->read_q);
tty622kernel/chr_drv/console.cstatic void cursor_report(int currcons, struct tty_struct * tty)
tty624kernel/chr_drv/console.cput_tty_queue('\033', &tty->read_q);
tty625kernel/chr_drv/console.cput_tty_queue('[', &tty->read_q);
tty626kernel/chr_drv/console.crespond_num(y + (decom ? top+1 : 1), currcons, tty);
tty627kernel/chr_drv/console.cput_tty_queue(';', &tty->read_q);
tty628kernel/chr_drv/console.crespond_num(x+1, currcons, tty);
tty629kernel/chr_drv/console.cput_tty_queue('R', &tty->read_q);
tty630kernel/chr_drv/console.cTTY_READ_FLUSH(tty);
tty633kernel/chr_drv/console.cstatic inline void status_report(int currcons, struct tty_struct * tty)
tty635kernel/chr_drv/console.crespond_string("\033[0n", currcons, tty);  /* Terminal ok */
tty638kernel/chr_drv/console.cstatic inline void respond_ID(int currcons, struct tty_struct * tty)
tty640kernel/chr_drv/console.crespond_string(VT102ID, currcons, tty);
tty892kernel/chr_drv/console.cvoid con_write(struct tty_struct * tty)
tty897kernel/chr_drv/console.cwake_up_interruptible(&tty->write_q.proc_list);
tty898kernel/chr_drv/console.ccurrcons = tty->line - 1;
tty903kernel/chr_drv/console.cwhile (!tty->stopped &&  (c = get_tty_queue(&tty->write_q)) >= 0) {
tty992kernel/chr_drv/console.crespond_ID(currcons,tty);
tty1053kernel/chr_drv/console.cstatus_report(currcons,tty);
tty1055kernel/chr_drv/console.ccursor_report(currcons,tty);
tty1117kernel/chr_drv/console.crespond_ID(currcons,tty);
tty1492kernel/chr_drv/console.cint con_open(struct tty_struct *tty, struct file * filp)
tty1494kernel/chr_drv/console.ctty->write = con_write;
tty1495kernel/chr_drv/console.ctty->ioctl = vt_ioctl;
tty1496kernel/chr_drv/console.cif (tty->line > NR_CONSOLES)
tty51kernel/chr_drv/keyboard.cstatic struct tty_struct * tty = NULL;
tty114kernel/chr_drv/keyboard.ctty = TTY_TABLE(0);
tty143kernel/chr_drv/keyboard.c(vc_kbd_flag(kbd,VC_REPEAT) && tty &&
tty144kernel/chr_drv/keyboard.c(L_ECHO(tty) || (EMPTY(&tty->secondary) && EMPTY(&tty->read_q)))))
tty158kernel/chr_drv/keyboard.cif (!tty)
tty160kernel/chr_drv/keyboard.cqp = &tty->read_q;
tty175kernel/chr_drv/keyboard.cif (!tty)
tty177kernel/chr_drv/keyboard.cqp = &tty->read_q;
tty24kernel/chr_drv/pty.cstatic void pty_close(struct tty_struct * tty, struct file * filp)
tty26kernel/chr_drv/pty.cif (!tty || (tty->count > 1))
tty28kernel/chr_drv/pty.cwake_up_interruptible(&tty->read_q.proc_list);
tty29kernel/chr_drv/pty.cif (!tty->link)
tty31kernel/chr_drv/pty.cwake_up_interruptible(&tty->link->write_q.proc_list);
tty32kernel/chr_drv/pty.cif (IS_A_PTY_MASTER(tty->line))
tty33kernel/chr_drv/pty.ctty_hangup(tty->link);
tty65kernel/chr_drv/pty.cstatic void pty_write(struct tty_struct * tty)
tty67kernel/chr_drv/pty.cif (tty->link)
tty68kernel/chr_drv/pty.cpty_copy(tty,tty->link);
tty71kernel/chr_drv/pty.cint pty_open(struct tty_struct *tty, struct file * filp)
tty73kernel/chr_drv/pty.cif (!tty || !tty->link)
tty75kernel/chr_drv/pty.ctty->write = tty->link->write = pty_write;
tty76kernel/chr_drv/pty.ctty->close = tty->link->close = pty_close;
tty77kernel/chr_drv/pty.cwake_up_interruptible(&tty->read_q.proc_list);
tty80kernel/chr_drv/pty.cwhile (!tty->link->count && !(current->signal & ~current->blocked))
tty81kernel/chr_drv/pty.cinterruptible_sleep_on(&tty->link->read_q.proc_list);
tty82kernel/chr_drv/pty.cif (!tty->link->count)
tty147kernel/chr_drv/serial.cstatic void rs_throttle(struct tty_struct * tty, int status);
tty149kernel/chr_drv/serial.cstatic int block_til_ready(struct tty_struct *tty, struct file * filp,
tty209kernel/chr_drv/serial.c#define IFLAG (info->tty->termios->c_iflag)
tty210kernel/chr_drv/serial.c#define CFLAG (info->tty->termios->c_cflag)
tty227kernel/chr_drv/serial.cqueue = &info->tty->read_q;
tty269kernel/chr_drv/serial.c&& !set_bit(TTY_RQ_THROTTLED, &info->tty->flags)) 
tty270kernel/chr_drv/serial.crs_throttle(info->tty, TTY_THROTTLE_RQ_FULL);
tty274kernel/chr_drv/serial.c!info->tty->stopped) {
tty275kernel/chr_drv/serial.cqueue = &info->tty->write_q;
tty296kernel/chr_drv/serial.cif (info->tty->write_data_cnt) {
tty297kernel/chr_drv/serial.cset_bit(info->tty->line,
tty328kernel/chr_drv/serial.cif (info->tty->stopped) {
tty330kernel/chr_drv/serial.cinfo->tty->stopped = 0;
tty334kernel/chr_drv/serial.cinfo->tty->stopped = !(status & UART_MSR_CTS);
tty371kernel/chr_drv/serial.cif (!info->tty)  
tty374kernel/chr_drv/serial.cTTY_READ_FLUSH(info->tty);
tty377kernel/chr_drv/serial.cwake_up_interruptible(&info->tty->write_q.proc_list);
tty380kernel/chr_drv/serial.ctty_hangup(info->tty);
tty382kernel/chr_drv/serial.cflush_input(info->tty);
tty383kernel/chr_drv/serial.cflush_output(info->tty);
tty384kernel/chr_drv/serial.cif (info->tty->pgrp > 0)
tty385kernel/chr_drv/serial.ckill_pg(info->tty->pgrp, SIGINT,1);
tty388kernel/chr_drv/serial.cdo_SAK(info->tty);
tty410kernel/chr_drv/serial.crs_write(info->tty);
tty428kernel/chr_drv/serial.cqueue = &info->tty->write_q;
tty447kernel/chr_drv/serial.cvoid rs_write(struct tty_struct * tty)
tty451kernel/chr_drv/serial.cif (!tty || tty->stopped)
tty453kernel/chr_drv/serial.cinfo = rs_table + DEV_TO_SL(tty->line);
tty459kernel/chr_drv/serial.cstatic void rs_throttle(struct tty_struct * tty, int status)
tty465kernel/chr_drv/serial.cprintk("throttle tty%d: %d (%d, %d)....\n", DEV_TO_SL(tty->line),
tty466kernel/chr_drv/serial.cstatus, LEFT(&tty->read_q), LEFT(&tty->secondary));
tty470kernel/chr_drv/serial.cinfo = rs_table + DEV_TO_SL(tty->line);
tty471kernel/chr_drv/serial.cif (tty->termios->c_iflag & IXOFF) {
tty472kernel/chr_drv/serial.cinfo->x_char = STOP_CHAR(tty);
tty480kernel/chr_drv/serial.cinfo = rs_table + DEV_TO_SL(tty->line);
tty481kernel/chr_drv/serial.cif (tty->termios->c_iflag & IXOFF) {
tty486kernel/chr_drv/serial.cinfo->x_char = START_CHAR(tty);
tty503kernel/chr_drv/serial.cstatic void rs_close(struct tty_struct *tty, struct file * filp)
tty508kernel/chr_drv/serial.cline = DEV_TO_SL(tty->line);
tty517kernel/chr_drv/serial.ctty->stopped = 0;    /* Force flush to succeed */
tty518kernel/chr_drv/serial.cwait_until_sent(tty);
tty546kernel/chr_drv/serial.cinfo->tty = 0;
tty610kernel/chr_drv/serial.cif (info->tty)
tty611kernel/chr_drv/serial.cclear_bit(TTY_IO_ERROR, &info->tty->flags);
tty621kernel/chr_drv/serial.cif (info->tty && !(info->tty->termios->c_cflag & HUPCL))
tty629kernel/chr_drv/serial.cif (info->tty)
tty630kernel/chr_drv/serial.cset_bit(TTY_IO_ERROR, &info->tty->flags);
tty645kernel/chr_drv/serial.cif (!info->tty || !info->tty->termios)
tty647kernel/chr_drv/serial.ccflag = info->tty->termios->c_cflag;
tty865kernel/chr_drv/serial.cstatic int rs_ioctl(struct tty_struct *tty, struct file * file,
tty871kernel/chr_drv/serial.cline = DEV_TO_SL(tty->line);
tty878kernel/chr_drv/serial.cwait_until_sent(tty);
tty903kernel/chr_drv/serial.cstatic void rs_set_termios(struct tty_struct *tty, struct termios *old_termios)
tty905kernel/chr_drv/serial.cif (tty->termios->c_cflag == old_termios->c_cflag)
tty908kernel/chr_drv/serial.cchange_speed(DEV_TO_SL(tty->line));
tty911kernel/chr_drv/serial.c!(tty->termios->c_cflag & CRTSCTS)) {
tty912kernel/chr_drv/serial.ctty->stopped = 0;
tty913kernel/chr_drv/serial.crs_write(tty);
tty917kernel/chr_drv/serial.c(tty->termios->c_cflag & CLOCAL))
tty918kernel/chr_drv/serial.cwake_up_interruptible(&rs_table[DEV_TO_SL(tty->line)].open_wait);
tty927kernel/chr_drv/serial.cint rs_open(struct tty_struct *tty, struct file * filp)
tty933kernel/chr_drv/serial.cline = DEV_TO_SL(tty->line);
tty941kernel/chr_drv/serial.cinfo->tty = tty;
tty943kernel/chr_drv/serial.ctty->write = rs_write;
tty944kernel/chr_drv/serial.ctty->close = rs_close;
tty945kernel/chr_drv/serial.ctty->ioctl = rs_ioctl;
tty946kernel/chr_drv/serial.ctty->throttle = rs_throttle;
tty947kernel/chr_drv/serial.ctty->set_termios = rs_set_termios;
tty951kernel/chr_drv/serial.cset_bit(TTY_IO_ERROR, &tty->flags);
tty979kernel/chr_drv/serial.cretval = block_til_ready(tty, filp, info);
tty987kernel/chr_drv/serial.cstatic int block_til_ready(struct tty_struct *tty, struct file * filp,
tty1035kernel/chr_drv/serial.c((tty->termios->c_cflag & CLOCAL) ||
tty1264kernel/chr_drv/serial.cinfo->tty = 0;
tty69kernel/chr_drv/tty_io.cstatic void initialize_tty_struct(int line, struct tty_struct *tty);
tty126kernel/chr_drv/tty_io.cint tty_read_raw_data(struct tty_struct *tty, unsigned char *bufp, int buflen)
tty134kernel/chr_drv/tty_io.ctail = tty->read_q.tail;
tty135kernel/chr_drv/tty_io.chead = tty->read_q.head;
tty137kernel/chr_drv/tty_io.c*p++ =  tty->read_q.buf[tail++];
tty141kernel/chr_drv/tty_io.ctty->read_q.tail = tail;
tty147kernel/chr_drv/tty_io.cvoid tty_write_flush(struct tty_struct * tty)
tty149kernel/chr_drv/tty_io.cif (!tty->write || EMPTY(&tty->write_q))
tty151kernel/chr_drv/tty_io.cif (set_bit(TTY_WRITE_BUSY,&tty->flags))
tty153kernel/chr_drv/tty_io.ctty->write(tty);
tty154kernel/chr_drv/tty_io.cif (clear_bit(TTY_WRITE_BUSY,&tty->flags))
tty158kernel/chr_drv/tty_io.cvoid tty_read_flush(struct tty_struct * tty)
tty160kernel/chr_drv/tty_io.cif (!tty || EMPTY(&tty->read_q))
tty162kernel/chr_drv/tty_io.cif (set_bit(TTY_READ_BUSY, &tty->flags))
tty164kernel/chr_drv/tty_io.cldiscs[tty->disc].handler(tty);
tty165kernel/chr_drv/tty_io.cif (clear_bit(TTY_READ_BUSY, &tty->flags))
tty213kernel/chr_drv/tty_io.cvoid tty_hangup(struct tty_struct * tty)
tty218kernel/chr_drv/tty_io.cif (!tty)
tty220kernel/chr_drv/tty_io.cdev = 0x0400 + tty->line;
tty231kernel/chr_drv/tty_io.cwake_up_interruptible(&tty->secondary.proc_list);
tty232kernel/chr_drv/tty_io.cwake_up_interruptible(&tty->read_q.proc_list);
tty233kernel/chr_drv/tty_io.cwake_up_interruptible(&tty->write_q.proc_list);
tty234kernel/chr_drv/tty_io.cif (tty->session > 0)
tty235kernel/chr_drv/tty_io.ckill_sl(tty->session,SIGHUP,1);
tty428kernel/chr_drv/tty_io.cvoid copy_to_cooked(struct tty_struct * tty)
tty432kernel/chr_drv/tty_io.cif (!tty) {
tty436kernel/chr_drv/tty_io.cif (!tty->write) {
tty438kernel/chr_drv/tty_io.ctty->line);
tty446kernel/chr_drv/tty_io.cc = LEFT(&tty->secondary);
tty447kernel/chr_drv/tty_io.cif (tty->throttle && (c < SQ_THRESHOLD_LW)
tty448kernel/chr_drv/tty_io.c&& !set_bit(TTY_SQ_THROTTLED, &tty->flags))
tty449kernel/chr_drv/tty_io.ctty->throttle(tty, TTY_THROTTLE_SQ_FULL);
tty452kernel/chr_drv/tty_io.cc = get_tty_queue(&tty->read_q);
tty455kernel/chr_drv/tty_io.cif (I_STRP(tty))
tty458kernel/chr_drv/tty_io.cif (I_CRNL(tty))
tty460kernel/chr_drv/tty_io.celse if (I_NOCR(tty))
tty462kernel/chr_drv/tty_io.c} else if (c==10 && I_NLCR(tty))
tty464kernel/chr_drv/tty_io.cif (I_UCLC(tty))
tty466kernel/chr_drv/tty_io.cif (L_CANON(tty)) {
tty467kernel/chr_drv/tty_io.cif ((KILL_CHAR(tty) != __DISABLED_CHAR) &&
tty468kernel/chr_drv/tty_io.c(c==KILL_CHAR(tty))) {
tty470kernel/chr_drv/tty_io.cwhile(!(EMPTY(&tty->secondary) ||
tty471kernel/chr_drv/tty_io.c(c=LAST(&tty->secondary))==10 ||
tty472kernel/chr_drv/tty_io.c((EOF_CHAR(tty) != __DISABLED_CHAR) &&
tty473kernel/chr_drv/tty_io.c(c==EOF_CHAR(tty))))) {
tty474kernel/chr_drv/tty_io.cif (L_ECHO(tty)) {
tty476kernel/chr_drv/tty_io.cput_tty_queue(8, &tty->write_q);
tty477kernel/chr_drv/tty_io.cput_tty_queue(' ', &tty->write_q);
tty478kernel/chr_drv/tty_io.cput_tty_queue(8,&tty->write_q);
tty480kernel/chr_drv/tty_io.cput_tty_queue(8,&tty->write_q);
tty481kernel/chr_drv/tty_io.cput_tty_queue(' ',&tty->write_q);
tty482kernel/chr_drv/tty_io.cput_tty_queue(8,&tty->write_q);
tty484kernel/chr_drv/tty_io.cDEC(tty->secondary.head);
tty488kernel/chr_drv/tty_io.cif ((ERASE_CHAR(tty) != __DISABLED_CHAR) &&
tty489kernel/chr_drv/tty_io.c(c==ERASE_CHAR(tty))) {
tty490kernel/chr_drv/tty_io.cif (EMPTY(&tty->secondary) ||
tty491kernel/chr_drv/tty_io.c(c=LAST(&tty->secondary))==10 ||
tty492kernel/chr_drv/tty_io.c((EOF_CHAR(tty) != __DISABLED_CHAR) &&
tty493kernel/chr_drv/tty_io.c(c==EOF_CHAR(tty))))
tty495kernel/chr_drv/tty_io.cif (L_ECHO(tty)) {
tty497kernel/chr_drv/tty_io.cput_tty_queue(8,&tty->write_q);
tty498kernel/chr_drv/tty_io.cput_tty_queue(' ',&tty->write_q);
tty499kernel/chr_drv/tty_io.cput_tty_queue(8,&tty->write_q);
tty501kernel/chr_drv/tty_io.cput_tty_queue(8,&tty->write_q);
tty502kernel/chr_drv/tty_io.cput_tty_queue(32,&tty->write_q);
tty503kernel/chr_drv/tty_io.cput_tty_queue(8,&tty->write_q);
tty505kernel/chr_drv/tty_io.cDEC(tty->secondary.head);
tty509kernel/chr_drv/tty_io.cif (I_IXON(tty)) {
tty510kernel/chr_drv/tty_io.cif ((STOP_CHAR(tty) != __DISABLED_CHAR) &&
tty511kernel/chr_drv/tty_io.c(c==STOP_CHAR(tty))) {
tty512kernel/chr_drv/tty_io.ctty->status_changed = 1;
tty513kernel/chr_drv/tty_io.ctty->ctrl_status |= TIOCPKT_STOP;
tty514kernel/chr_drv/tty_io.ctty->stopped=1;
tty517kernel/chr_drv/tty_io.cif (((I_IXANY(tty)) && tty->stopped) ||
tty518kernel/chr_drv/tty_io.c((START_CHAR(tty) != __DISABLED_CHAR) &&
tty519kernel/chr_drv/tty_io.c(c==START_CHAR(tty)))) {
tty520kernel/chr_drv/tty_io.ctty->status_changed = 1;
tty521kernel/chr_drv/tty_io.ctty->ctrl_status |= TIOCPKT_START;
tty522kernel/chr_drv/tty_io.ctty->stopped=0;
tty526kernel/chr_drv/tty_io.cif (L_ISIG(tty)) {
tty527kernel/chr_drv/tty_io.cif ((INTR_CHAR(tty) != __DISABLED_CHAR) &&
tty528kernel/chr_drv/tty_io.c(c==INTR_CHAR(tty))) {
tty529kernel/chr_drv/tty_io.ckill_pg(tty->pgrp, SIGINT, 1);
tty530kernel/chr_drv/tty_io.cflush_input(tty);
tty533kernel/chr_drv/tty_io.cif ((QUIT_CHAR(tty) != __DISABLED_CHAR) &&
tty534kernel/chr_drv/tty_io.c(c==QUIT_CHAR(tty))) {
tty535kernel/chr_drv/tty_io.ckill_pg(tty->pgrp, SIGQUIT, 1);
tty536kernel/chr_drv/tty_io.cflush_input(tty);
tty539kernel/chr_drv/tty_io.cif ((SUSPEND_CHAR(tty) != __DISABLED_CHAR) &&
tty540kernel/chr_drv/tty_io.c(c==SUSPEND_CHAR(tty))) {
tty541kernel/chr_drv/tty_io.cif (!is_orphaned_pgrp(tty->pgrp))
tty542kernel/chr_drv/tty_io.ckill_pg(tty->pgrp, SIGTSTP, 1);
tty546kernel/chr_drv/tty_io.cif (c==10 || (EOF_CHAR(tty) != __DISABLED_CHAR &&
tty547kernel/chr_drv/tty_io.cc==EOF_CHAR(tty)))
tty548kernel/chr_drv/tty_io.ctty->secondary.data++;
tty549kernel/chr_drv/tty_io.cif ((c==10) && (L_ECHO(tty) || (L_CANON(tty) && L_ECHONL(tty)))) {
tty550kernel/chr_drv/tty_io.cput_tty_queue(10,&tty->write_q);
tty551kernel/chr_drv/tty_io.cput_tty_queue(13,&tty->write_q);
tty552kernel/chr_drv/tty_io.c} else if (L_ECHO(tty)) {
tty553kernel/chr_drv/tty_io.cif (c<32 && L_ECHOCTL(tty)) {
tty554kernel/chr_drv/tty_io.cput_tty_queue('^',&tty->write_q);
tty555kernel/chr_drv/tty_io.cput_tty_queue(c+64, &tty->write_q);
tty557kernel/chr_drv/tty_io.cput_tty_queue(c, &tty->write_q);
tty559kernel/chr_drv/tty_io.cput_tty_queue(c, &tty->secondary);
tty561kernel/chr_drv/tty_io.cTTY_WRITE_FLUSH(tty);
tty562kernel/chr_drv/tty_io.cif (!EMPTY(&tty->secondary))
tty563kernel/chr_drv/tty_io.cwake_up_interruptible(&tty->secondary.proc_list);
tty564kernel/chr_drv/tty_io.cif (tty->write_q.proc_list && LEFT(&tty->write_q) > TTY_BUF_SIZE/2)
tty565kernel/chr_drv/tty_io.cwake_up_interruptible(&tty->write_q.proc_list);
tty566kernel/chr_drv/tty_io.cif (tty->throttle && (LEFT(&tty->read_q) >= RQ_THRESHOLD_HW)
tty567kernel/chr_drv/tty_io.c&& !clear_bit(TTY_RQ_THROTTLED, &tty->flags))
tty568kernel/chr_drv/tty_io.ctty->throttle(tty, TTY_THROTTLE_RQ_AVAIL);
tty569kernel/chr_drv/tty_io.cif (tty->throttle && (LEFT(&tty->secondary) >= SQ_THRESHOLD_HW)
tty570kernel/chr_drv/tty_io.c&& !clear_bit(TTY_SQ_THROTTLED, &tty->flags))
tty571kernel/chr_drv/tty_io.ctty->throttle(tty, TTY_THROTTLE_SQ_AVAIL);
tty583kernel/chr_drv/tty_io.cstatic void wait_for_canon_input(struct file * file, struct tty_struct * tty)
tty585kernel/chr_drv/tty_io.cif (!available_canon_input(tty)) {
tty588kernel/chr_drv/tty_io.c__wait_for_canon_input(file, tty);
tty592kernel/chr_drv/tty_io.cstatic int read_chan(struct tty_struct * tty, struct file * file, char * buf, int nr)
tty599kernel/chr_drv/tty_io.cif (L_CANON(tty))
tty602kernel/chr_drv/tty_io.ctime = 10L*tty->termios->c_cc[VTIME];
tty603kernel/chr_drv/tty_io.cminimum = tty->termios->c_cc[VMIN];
tty617kernel/chr_drv/tty_io.cif (L_CANON(tty)) {
tty618kernel/chr_drv/tty_io.cif (!available_canon_input(tty))
tty621kernel/chr_drv/tty_io.c} else if (L_CANON(tty)) {
tty622kernel/chr_drv/tty_io.cwait_for_canon_input(file, tty);
tty630kernel/chr_drv/tty_io.cif (tty->packet && tty->link && tty->link->status_changed) {
tty631kernel/chr_drv/tty_io.cput_fs_byte (tty->link->ctrl_status, b);
tty632kernel/chr_drv/tty_io.ctty->link->status_changed = 0;
tty637kernel/chr_drv/tty_io.cif (tty->packet) {
tty645kernel/chr_drv/tty_io.cadd_wait_queue(&tty->secondary.proc_list, &wait);
tty647kernel/chr_drv/tty_io.cTTY_READ_FLUSH(tty);
tty648kernel/chr_drv/tty_io.cif (tty->link)
tty649kernel/chr_drv/tty_io.cTTY_WRITE_FLUSH(tty->link);
tty650kernel/chr_drv/tty_io.cwhile (nr > 0 && ((c = get_tty_queue(&tty->secondary)) >= 0)) {
tty651kernel/chr_drv/tty_io.cif ((EOF_CHAR(tty) != __DISABLED_CHAR &&
tty652kernel/chr_drv/tty_io.cc==EOF_CHAR(tty)) || c==10)
tty653kernel/chr_drv/tty_io.ctty->secondary.data--;
tty654kernel/chr_drv/tty_io.cif ((EOF_CHAR(tty) != __DISABLED_CHAR &&
tty655kernel/chr_drv/tty_io.cc==EOF_CHAR(tty)) && L_CANON(tty))
tty661kernel/chr_drv/tty_io.cif (c==10 && L_CANON(tty))
tty664kernel/chr_drv/tty_io.cwake_up_interruptible(&tty->read_q.proc_list);
tty669kernel/chr_drv/tty_io.cif (tty->throttle && (LEFT(&tty->secondary) >= SQ_THRESHOLD_HW)
tty670kernel/chr_drv/tty_io.c&& !clear_bit(TTY_SQ_THROTTLED, &tty->flags))
tty671kernel/chr_drv/tty_io.ctty->throttle(tty, TTY_THROTTLE_SQ_AVAIL);
tty676kernel/chr_drv/tty_io.cif (tty->link && !tty->link->count)
tty678kernel/chr_drv/tty_io.cTTY_READ_FLUSH(tty);
tty679kernel/chr_drv/tty_io.cif (tty->link)
tty680kernel/chr_drv/tty_io.cTTY_WRITE_FLUSH(tty->link);
tty681kernel/chr_drv/tty_io.cif (!EMPTY(&tty->secondary))
tty686kernel/chr_drv/tty_io.cif (EMPTY(&tty->secondary))
tty690kernel/chr_drv/tty_io.cremove_wait_queue(&tty->secondary.proc_list, &wait);
tty691kernel/chr_drv/tty_io.cTTY_READ_FLUSH(tty);
tty692kernel/chr_drv/tty_io.cif (tty->link && tty->link->write)
tty693kernel/chr_drv/tty_io.cTTY_WRITE_FLUSH(tty->link);
tty698kernel/chr_drv/tty_io.cif (tty->packet) {
tty713kernel/chr_drv/tty_io.cstatic void __wait_for_canon_input(struct file * file, struct tty_struct * tty)
tty717kernel/chr_drv/tty_io.cadd_wait_queue(&tty->secondary.proc_list, &wait);
tty720kernel/chr_drv/tty_io.cif (available_canon_input(tty))
tty729kernel/chr_drv/tty_io.cremove_wait_queue(&tty->secondary.proc_list, &wait);
tty732kernel/chr_drv/tty_io.cstatic int available_canon_input(struct tty_struct * tty)
tty734kernel/chr_drv/tty_io.cTTY_READ_FLUSH(tty);
tty735kernel/chr_drv/tty_io.cif (tty->link)
tty736kernel/chr_drv/tty_io.cif (tty->link->count)
tty737kernel/chr_drv/tty_io.cTTY_WRITE_FLUSH(tty->link);
tty740kernel/chr_drv/tty_io.cif (FULL(&tty->read_q))
tty742kernel/chr_drv/tty_io.cif (tty->secondary.data)
tty747kernel/chr_drv/tty_io.cstatic int write_chan(struct tty_struct * tty, struct file * file, char * buf, int nr)
tty756kernel/chr_drv/tty_io.cadd_wait_queue(&tty->write_q.proc_list, &wait);
tty762kernel/chr_drv/tty_io.cif (tty->link && !tty->link->count) {
tty767kernel/chr_drv/tty_io.cif (FULL(&tty->write_q)) {
tty768kernel/chr_drv/tty_io.cTTY_WRITE_FLUSH(tty);
tty769kernel/chr_drv/tty_io.cif (FULL(&tty->write_q))
tty775kernel/chr_drv/tty_io.cwhile (nr>0 && !FULL(&tty->write_q)) {
tty777kernel/chr_drv/tty_io.cif (O_POST(tty)) {
tty778kernel/chr_drv/tty_io.cif (c=='\r' && O_CRNL(tty))
tty780kernel/chr_drv/tty_io.celse if (c=='\n' && O_NLRET(tty))
tty782kernel/chr_drv/tty_io.cif (c=='\n' && O_NLCR(tty) &&
tty783kernel/chr_drv/tty_io.c!set_bit(TTY_CR_PENDING,&tty->flags)) {
tty784kernel/chr_drv/tty_io.cput_tty_queue(13,&tty->write_q);
tty787kernel/chr_drv/tty_io.cif (O_LCUC(tty))
tty791kernel/chr_drv/tty_io.cclear_bit(TTY_CR_PENDING,&tty->flags);
tty792kernel/chr_drv/tty_io.cput_tty_queue(c,&tty->write_q);
tty797kernel/chr_drv/tty_io.cremove_wait_queue(&tty->write_q.proc_list, &wait);
tty798kernel/chr_drv/tty_io.cTTY_WRITE_FLUSH(tty);
tty801kernel/chr_drv/tty_io.cif (tty->link && !tty->link->count)
tty811kernel/chr_drv/tty_io.cstruct tty_struct * tty;
tty819kernel/chr_drv/tty_io.ctty = TTY_TABLE(dev);
tty820kernel/chr_drv/tty_io.cif (!tty || (tty->flags & (1 << TTY_IO_ERROR)))
tty822kernel/chr_drv/tty_io.cif (MINOR(inode->i_rdev) && (tty->pgrp > 0) &&
tty823kernel/chr_drv/tty_io.c(current->tty == dev) &&
tty824kernel/chr_drv/tty_io.c(tty->pgrp != current->pgrp))
tty831kernel/chr_drv/tty_io.cif (ldiscs[tty->disc].read)
tty832kernel/chr_drv/tty_io.ci = (ldiscs[tty->disc].read)(tty,file,buf,count);
tty843kernel/chr_drv/tty_io.cstruct tty_struct * tty;
tty853kernel/chr_drv/tty_io.ctty = redirect;
tty855kernel/chr_drv/tty_io.ctty = TTY_TABLE(dev);
tty856kernel/chr_drv/tty_io.cif (!tty || !tty->write || (tty->flags & (1 << TTY_IO_ERROR)))
tty858kernel/chr_drv/tty_io.cif (!is_console && L_TOSTOP(tty) && (tty->pgrp > 0) &&
tty859kernel/chr_drv/tty_io.c(current->tty == dev) && (tty->pgrp != current->pgrp)) {
tty867kernel/chr_drv/tty_io.cif (ldiscs[tty->disc].write)
tty868kernel/chr_drv/tty_io.ci = (ldiscs[tty->disc].write)(tty,file,buf,count);
tty883kernel/chr_drv/tty_io.cstruct tty_struct *tty, *o_tty;
tty889kernel/chr_drv/tty_io.ctty = o_tty = NULL;
tty896kernel/chr_drv/tty_io.cif (!tty_table[dev] && !tty) {
tty897kernel/chr_drv/tty_io.ctty = (struct tty_struct *) get_free_page(GFP_KERNEL);
tty898kernel/chr_drv/tty_io.cif (!tty)
tty900kernel/chr_drv/tty_io.cinitialize_tty_struct(dev, tty);
tty932kernel/chr_drv/tty_io.ctty->termios = tty_termios[dev];
tty933kernel/chr_drv/tty_io.ctty_table[dev] = tty;
tty934kernel/chr_drv/tty_io.ctty = NULL;
tty954kernel/chr_drv/tty_io.cif (tty)
tty955kernel/chr_drv/tty_io.cfree_page((unsigned long) tty);
tty957kernel/chr_drv/tty_io.cfree_page((unsigned long) tty);
tty972kernel/chr_drv/tty_io.cstruct tty_struct *tty, *o_tty;
tty975kernel/chr_drv/tty_io.ctty = tty_table[dev];
tty979kernel/chr_drv/tty_io.cif (!tty) {
tty998kernel/chr_drv/tty_io.cif (tty->link != o_tty || o_tty->link != tty) {
tty1003kernel/chr_drv/tty_io.ctty->write_data_cnt = 0; /* Clear out pending trash */
tty1004kernel/chr_drv/tty_io.cif (tty->close)
tty1005kernel/chr_drv/tty_io.ctty->close(tty, filp);
tty1007kernel/chr_drv/tty_io.cif (--tty->link->count < 0) {
tty1009kernel/chr_drv/tty_io.cdev, tty->count);
tty1010kernel/chr_drv/tty_io.ctty->link->count = 0;
tty1013kernel/chr_drv/tty_io.cif (--tty->count < 0) {
tty1015kernel/chr_drv/tty_io.cdev, tty->count);
tty1016kernel/chr_drv/tty_io.ctty->count = 0;
tty1018kernel/chr_drv/tty_io.cif (tty->count)
tty1021kernel/chr_drv/tty_io.cif (ldiscs[tty->disc].close != NULL)
tty1022kernel/chr_drv/tty_io.cldiscs[tty->disc].close(tty);
tty1037kernel/chr_drv/tty_io.cif (tty == redirect || o_tty == redirect)
tty1039kernel/chr_drv/tty_io.cfree_page((unsigned long) tty);
tty1060kernel/chr_drv/tty_io.cstruct tty_struct *tty;
tty1070kernel/chr_drv/tty_io.cminor = current->tty;
tty1090kernel/chr_drv/tty_io.ctty = tty_table[minor];
tty1099kernel/chr_drv/tty_io.ctty->status_changed = 0;
tty1100kernel/chr_drv/tty_io.ctty->ctrl_status = 0;
tty1101kernel/chr_drv/tty_io.ctty->packet = 0;
tty1103kernel/chr_drv/tty_io.cif (tty->open) {
tty1104kernel/chr_drv/tty_io.cretval = tty->open(tty, filp);
tty1114kernel/chr_drv/tty_io.ccurrent->tty<0 &&
tty1115kernel/chr_drv/tty_io.ctty->session==0) {
tty1116kernel/chr_drv/tty_io.ccurrent->tty = minor;
tty1117kernel/chr_drv/tty_io.ctty->session = current->session;
tty1118kernel/chr_drv/tty_io.ctty->pgrp = current->pgrp;
tty1149kernel/chr_drv/tty_io.cstruct tty_struct * tty;
tty1157kernel/chr_drv/tty_io.ctty = TTY_TABLE(dev);
tty1158kernel/chr_drv/tty_io.cif (!tty) {
tty1164kernel/chr_drv/tty_io.cif (L_CANON(tty)) {
tty1165kernel/chr_drv/tty_io.cif (available_canon_input(tty))
tty1167kernel/chr_drv/tty_io.c} else if (!EMPTY(&tty->secondary))
tty1169kernel/chr_drv/tty_io.cif (tty->link && !tty->link->count)
tty1173kernel/chr_drv/tty_io.cif (tty->packet && tty->link &&
tty1174kernel/chr_drv/tty_io.ctty->link->status_changed)
tty1177kernel/chr_drv/tty_io.cselect_wait(&tty->secondary.proc_list, wait);
tty1180kernel/chr_drv/tty_io.cif (!FULL(&tty->write_q))
tty1182kernel/chr_drv/tty_io.cselect_wait(&tty->write_q.proc_list, wait);
tty1185kernel/chr_drv/tty_io.cif (tty->link && !tty->link->count)
tty1204kernel/chr_drv/tty_io.cvoid do_SAK( struct tty_struct *tty)
tty1207kernel/chr_drv/tty_io.cint line = tty->line;
tty1208kernel/chr_drv/tty_io.cint session = tty->session;
tty1212kernel/chr_drv/tty_io.cflush_input(tty);
tty1213kernel/chr_drv/tty_io.cflush_output(tty);
tty1217kernel/chr_drv/tty_io.cif (((*p)->tty == line) ||
tty1248kernel/chr_drv/tty_io.cint tty_write_data(struct tty_struct *tty, char *bufp, int buflen,
tty1258kernel/chr_drv/tty_io.cif (tty->write_data_cnt) {
tty1263kernel/chr_drv/tty_io.chead = tty->write_q.head;
tty1264kernel/chr_drv/tty_io.ctail = tty->write_q.tail;
tty1269kernel/chr_drv/tty_io.ctty->write_q.buf[head++] = *p++;
tty1272kernel/chr_drv/tty_io.ctty->write_q.head = head;
tty1274kernel/chr_drv/tty_io.ctty->write_data_cnt = count;
tty1275kernel/chr_drv/tty_io.ctty->write_data_ptr = p;
tty1276kernel/chr_drv/tty_io.ctty->write_data_callback = callback;
tty1277kernel/chr_drv/tty_io.ctty->write_data_arg = callarg;
tty1296kernel/chr_drv/tty_io.cstruct tty_struct * tty;
tty1305kernel/chr_drv/tty_io.ctty = tty_table[line];
tty1306kernel/chr_drv/tty_io.cif (!tty || !tty->write_data_cnt)
tty1309kernel/chr_drv/tty_io.chead = tty->write_q.head;
tty1310kernel/chr_drv/tty_io.ctail = tty->write_q.tail;
tty1311kernel/chr_drv/tty_io.ccount = tty->write_data_cnt;
tty1312kernel/chr_drv/tty_io.cp = tty->write_data_ptr;
tty1315kernel/chr_drv/tty_io.ctty->write_q.buf[head++] = *p++;
tty1318kernel/chr_drv/tty_io.ctty->write_q.head = head;
tty1319kernel/chr_drv/tty_io.ctty->write_data_ptr = p;
tty1320kernel/chr_drv/tty_io.ctty->write_data_cnt = count;
tty1323kernel/chr_drv/tty_io.c(tty->write_data_callback)
tty1324kernel/chr_drv/tty_io.c(tty->write_data_arg);
tty1335kernel/chr_drv/tty_io.cstatic void initialize_tty_struct(int line, struct tty_struct *tty)
tty1337kernel/chr_drv/tty_io.cmemset(tty, 0, sizeof(struct tty_struct));
tty1338kernel/chr_drv/tty_io.ctty->line = line;
tty1339kernel/chr_drv/tty_io.ctty->disc = N_TTY;
tty1340kernel/chr_drv/tty_io.ctty->pgrp = -1;
tty1341kernel/chr_drv/tty_io.ctty->winsize.ws_row = 24;
tty1342kernel/chr_drv/tty_io.ctty->winsize.ws_col = 80;
tty1344kernel/chr_drv/tty_io.ctty->open = con_open;
tty1345kernel/chr_drv/tty_io.ctty->winsize.ws_row = video_num_lines;
tty1346kernel/chr_drv/tty_io.ctty->winsize.ws_col = video_num_columns;
tty1348kernel/chr_drv/tty_io.ctty->open = rs_open;
tty1350kernel/chr_drv/tty_io.ctty->open = pty_open;
tty44kernel/chr_drv/tty_ioctl.cvoid flush_input(struct tty_struct * tty)
tty46kernel/chr_drv/tty_ioctl.ctty->status_changed = 1;
tty47kernel/chr_drv/tty_ioctl.ctty->ctrl_status |= TIOCPKT_FLUSHREAD;
tty48kernel/chr_drv/tty_ioctl.cflush(&tty->read_q);
tty49kernel/chr_drv/tty_ioctl.cwake_up_interruptible(&tty->read_q.proc_list);
tty50kernel/chr_drv/tty_ioctl.cflush(&tty->secondary);
tty51kernel/chr_drv/tty_ioctl.ctty->secondary.data = 0;
tty53kernel/chr_drv/tty_ioctl.cif ((tty = tty->link) != NULL) {
tty54kernel/chr_drv/tty_ioctl.cflush(&tty->write_q);
tty55kernel/chr_drv/tty_ioctl.cwake_up_interruptible(&tty->write_q.proc_list);
tty59kernel/chr_drv/tty_ioctl.cvoid flush_output(struct tty_struct * tty)
tty61kernel/chr_drv/tty_ioctl.ctty->status_changed = 1;
tty62kernel/chr_drv/tty_ioctl.ctty->ctrl_status |= TIOCPKT_FLUSHWRITE;
tty63kernel/chr_drv/tty_ioctl.cflush(&tty->write_q);
tty64kernel/chr_drv/tty_ioctl.cwake_up_interruptible(&tty->write_q.proc_list);
tty65kernel/chr_drv/tty_ioctl.cif ((tty = tty->link) != NULL) {
tty66kernel/chr_drv/tty_ioctl.cflush(&tty->read_q);
tty67kernel/chr_drv/tty_ioctl.cwake_up_interruptible(&tty->read_q.proc_list);
tty68kernel/chr_drv/tty_ioctl.cflush(&tty->secondary);
tty69kernel/chr_drv/tty_ioctl.ctty->secondary.data = 0;
tty73kernel/chr_drv/tty_ioctl.cvoid wait_until_sent(struct tty_struct * tty)
tty77kernel/chr_drv/tty_ioctl.cTTY_WRITE_FLUSH(tty);
tty78kernel/chr_drv/tty_ioctl.cif (EMPTY(&tty->write_q))
tty80kernel/chr_drv/tty_ioctl.cadd_wait_queue(&tty->write_q.proc_list, &wait);
tty86kernel/chr_drv/tty_ioctl.cTTY_WRITE_FLUSH(tty);
tty87kernel/chr_drv/tty_ioctl.cif (EMPTY(&tty->write_q))
tty92kernel/chr_drv/tty_ioctl.cremove_wait_queue(&tty->write_q.proc_list, &wait);
tty123kernel/chr_drv/tty_ioctl.cstatic int get_termios(struct tty_struct * tty, struct termios * termios)
tty129kernel/chr_drv/tty_ioctl.cput_fs_byte( ((char *)tty->termios)[i] , i+(char *)termios );
tty133kernel/chr_drv/tty_ioctl.cstatic int check_change(struct tty_struct * tty, int channel)
tty138kernel/chr_drv/tty_ioctl.cif (current->tty != channel)
tty140kernel/chr_drv/tty_ioctl.cif (tty->pgrp <= 0 || tty->pgrp == current->pgrp)
tty150kernel/chr_drv/tty_ioctl.cstatic int set_termios(struct tty_struct * tty, struct termios * termios,
tty154kernel/chr_drv/tty_ioctl.cstruct termios old_termios = *tty->termios;
tty156kernel/chr_drv/tty_ioctl.ci = check_change(tty, channel);
tty160kernel/chr_drv/tty_ioctl.c((char *)tty->termios)[i]=get_fs_byte(i+(char *)termios);
tty165kernel/chr_drv/tty_ioctl.cif (IS_A_PTY_MASTER(channel)) tty->termios->c_lflag &= ~ECHO;
tty167kernel/chr_drv/tty_ioctl.cif (tty->set_termios)
tty168kernel/chr_drv/tty_ioctl.c(*tty->set_termios)(tty, &old_termios);
tty173kernel/chr_drv/tty_ioctl.cstatic int get_termio(struct tty_struct * tty, struct termio * termio)
tty179kernel/chr_drv/tty_ioctl.ctmp_termio.c_iflag = tty->termios->c_iflag;
tty180kernel/chr_drv/tty_ioctl.ctmp_termio.c_oflag = tty->termios->c_oflag;
tty181kernel/chr_drv/tty_ioctl.ctmp_termio.c_cflag = tty->termios->c_cflag;
tty182kernel/chr_drv/tty_ioctl.ctmp_termio.c_lflag = tty->termios->c_lflag;
tty183kernel/chr_drv/tty_ioctl.ctmp_termio.c_line = tty->termios->c_line;
tty185kernel/chr_drv/tty_ioctl.ctmp_termio.c_cc[i] = tty->termios->c_cc[i];
tty194kernel/chr_drv/tty_ioctl.cstatic int set_termio(struct tty_struct * tty, struct termio * termio,
tty199kernel/chr_drv/tty_ioctl.cstruct termios old_termios = *tty->termios;
tty201kernel/chr_drv/tty_ioctl.ci = check_change(tty, channel);
tty209kernel/chr_drv/tty_ioctl.c~(tty->termios->c_iflag & IXON))
tty211kernel/chr_drv/tty_ioctl.ctty->status_changed = 1;
tty212kernel/chr_drv/tty_ioctl.ctty->ctrl_status |= TIOCPKT_DOSTOP;
tty216kernel/chr_drv/tty_ioctl.c(tty->termios->c_iflag & IXON))
tty218kernel/chr_drv/tty_ioctl.ctty->status_changed = 1;
tty219kernel/chr_drv/tty_ioctl.ctty->ctrl_status |= TIOCPKT_NOSTOP;
tty222kernel/chr_drv/tty_ioctl.c*(unsigned short *)&tty->termios->c_iflag = tmp_termio.c_iflag;
tty223kernel/chr_drv/tty_ioctl.c*(unsigned short *)&tty->termios->c_oflag = tmp_termio.c_oflag;
tty224kernel/chr_drv/tty_ioctl.c*(unsigned short *)&tty->termios->c_cflag = tmp_termio.c_cflag;
tty225kernel/chr_drv/tty_ioctl.c*(unsigned short *)&tty->termios->c_lflag = tmp_termio.c_lflag;
tty226kernel/chr_drv/tty_ioctl.ctty->termios->c_line = tmp_termio.c_line;
tty228kernel/chr_drv/tty_ioctl.ctty->termios->c_cc[i] = tmp_termio.c_cc[i];
tty230kernel/chr_drv/tty_ioctl.cif (tty->set_termios)
tty231kernel/chr_drv/tty_ioctl.c(*tty->set_termios)(tty, &old_termios);
tty236kernel/chr_drv/tty_ioctl.cstatic int set_window_size(struct tty_struct * tty, struct winsize * ws)
tty243kernel/chr_drv/tty_ioctl.ctmp = (char *) &tty->winsize;
tty253kernel/chr_drv/tty_ioctl.ckill_pg(tty->pgrp, SIGWINCH, 1);
tty257kernel/chr_drv/tty_ioctl.cstatic int get_window_size(struct tty_struct * tty, struct winsize * ws)
tty267kernel/chr_drv/tty_ioctl.cput_fs_byte(((char *) &tty->winsize)[i], tmp);
tty272kernel/chr_drv/tty_ioctl.cstatic int tty_set_ldisc(struct tty_struct *tty, int ldisc)
tty278kernel/chr_drv/tty_ioctl.cif (tty->disc == ldisc)
tty282kernel/chr_drv/tty_ioctl.cwait_until_sent(tty);
tty283kernel/chr_drv/tty_ioctl.cflush_input(tty);
tty284kernel/chr_drv/tty_ioctl.cif (ldiscs[tty->disc].close)
tty285kernel/chr_drv/tty_ioctl.cldiscs[tty->disc].close(tty);
tty288kernel/chr_drv/tty_ioctl.ctty->disc = ldisc;
tty289kernel/chr_drv/tty_ioctl.cif (ldiscs[tty->disc].open)
tty290kernel/chr_drv/tty_ioctl.creturn(ldiscs[tty->disc].open(tty));
tty299kernel/chr_drv/tty_ioctl.cstruct tty_struct * tty;
tty312kernel/chr_drv/tty_ioctl.ctty = TTY_TABLE(dev);
tty313kernel/chr_drv/tty_ioctl.cif (!tty)
tty319kernel/chr_drv/tty_ioctl.ctermios_tty = tty;
tty329kernel/chr_drv/tty_ioctl.cflush_input(tty);
tty332kernel/chr_drv/tty_ioctl.cwait_until_sent(tty);
tty339kernel/chr_drv/tty_ioctl.cflush_input(tty);
tty342kernel/chr_drv/tty_ioctl.cwait_until_sent(tty); /* fallthrough */
tty348kernel/chr_drv/tty_ioctl.ctty->stopped = 1;
tty349kernel/chr_drv/tty_ioctl.cTTY_WRITE_FLUSH(tty);
tty352kernel/chr_drv/tty_ioctl.ctty->stopped = 0;
tty353kernel/chr_drv/tty_ioctl.cTTY_WRITE_FLUSH(tty);
tty356kernel/chr_drv/tty_ioctl.cif (STOP_CHAR(tty))
tty357kernel/chr_drv/tty_ioctl.cput_tty_queue(STOP_CHAR(tty),
tty358kernel/chr_drv/tty_ioctl.c&tty->write_q);
tty361kernel/chr_drv/tty_ioctl.cif (START_CHAR(tty))
tty362kernel/chr_drv/tty_ioctl.cput_tty_queue(START_CHAR(tty),
tty363kernel/chr_drv/tty_ioctl.c&tty->write_q);
tty369kernel/chr_drv/tty_ioctl.cflush_input(tty);
tty371kernel/chr_drv/tty_ioctl.cflush_output(tty);
tty373kernel/chr_drv/tty_ioctl.cflush_input(tty);
tty374kernel/chr_drv/tty_ioctl.cflush_output(tty);
tty383kernel/chr_drv/tty_ioctl.cif (current->leader && current->tty < 0
tty384kernel/chr_drv/tty_ioctl.c&& tty->session == 0) {
tty385kernel/chr_drv/tty_ioctl.ccurrent->tty = dev;
tty386kernel/chr_drv/tty_ioctl.ctty->session = current->session;
tty387kernel/chr_drv/tty_ioctl.ctty->pgrp = current->pgrp;
tty396kernel/chr_drv/tty_ioctl.cif ((current->tty < 0) ||
tty397kernel/chr_drv/tty_ioctl.c(current->tty != termios_dev) ||
tty409kernel/chr_drv/tty_ioctl.cput_fs_long(CHARS(&tty->write_q),
tty414kernel/chr_drv/tty_ioctl.cif (L_CANON(tty) && !tty->secondary.data)
tty417kernel/chr_drv/tty_ioctl.cput_fs_long(CHARS(&tty->secondary),
tty423kernel/chr_drv/tty_ioctl.creturn get_window_size(tty,(struct winsize *) arg);
tty427kernel/chr_drv/tty_ioctl.creturn set_window_size(tty,(struct winsize *) arg);
tty456kernel/chr_drv/tty_ioctl.credirect = tty;
tty468kernel/chr_drv/tty_ioctl.cif (MINOR(file->f_rdev) != current->tty)
tty470kernel/chr_drv/tty_ioctl.ccurrent->tty = -1;
tty472kernel/chr_drv/tty_ioctl.cif (tty->pgrp > 0)
tty473kernel/chr_drv/tty_ioctl.ckill_pg(tty->pgrp, SIGHUP, 0);
tty474kernel/chr_drv/tty_ioctl.ctty->pgrp = -1;
tty475kernel/chr_drv/tty_ioctl.ctty->session = 0;
tty480kernel/chr_drv/tty_ioctl.cput_fs_long(tty->disc, (unsigned long *) arg);
tty484kernel/chr_drv/tty_ioctl.creturn tty_set_ldisc(tty, arg);
tty493kernel/chr_drv/tty_ioctl.ctty->packet = 1;
tty495kernel/chr_drv/tty_ioctl.ctty->packet = 0;
tty500kernel/chr_drv/tty_ioctl.cif (tty->ioctl) {
tty501kernel/chr_drv/tty_ioctl.cretval = (tty->ioctl)(tty, file, cmd, arg);
tty505kernel/chr_drv/tty_ioctl.cif (ldiscs[tty->disc].ioctl) {
tty506kernel/chr_drv/tty_ioctl.cretval = (ldiscs[tty->disc].ioctl)
tty507kernel/chr_drv/tty_ioctl.c(tty, file, cmd, arg);
tty104kernel/chr_drv/vt.cint vt_ioctl(struct tty_struct *tty, struct file * file,
tty111kernel/chr_drv/vt.cconsole = tty->line - 1;
tty213kernel/chr_drv/vt.cflush_input(tty);
tty404kernel/exit.cstruct tty_struct *tty;
tty406kernel/exit.cif (current->tty >= 0) {
tty407kernel/exit.ctty = TTY_TABLE(current->tty);
tty408kernel/exit.cif (tty) {
tty409kernel/exit.cif (tty->pgrp > 0)
tty410kernel/exit.ckill_pg(tty->pgrp, SIGHUP, 1);
tty411kernel/exit.ctty->pgrp = -1;
tty412kernel/exit.ctty->session = 0;
tty417kernel/exit.c(*p)->tty = -1;
tty475kernel/sys.ccurrent->tty = -1;