cons 53 kernel/console.c } cons; cons 91 kernel/console.c acquire(&cons.lock); cons 95 kernel/console.c while(cons.r == cons.w){ cons 97 kernel/console.c release(&cons.lock); cons 100 kernel/console.c sleep(&cons.r, &cons.lock); cons 103 kernel/console.c c = cons.buf[cons.r++ % INPUT_BUF_SIZE]; cons 109 kernel/console.c cons.r--; cons 128 kernel/console.c release(&cons.lock); cons 142 kernel/console.c acquire(&cons.lock); cons 149 kernel/console.c while(cons.e != cons.w && cons 150 kernel/console.c cons.buf[(cons.e-1) % INPUT_BUF_SIZE] != '\n'){ cons 151 kernel/console.c cons.e--; cons 157 kernel/console.c if(cons.e != cons.w){ cons 158 kernel/console.c cons.e--; cons 163 kernel/console.c if(c != 0 && cons.e-cons.r < INPUT_BUF_SIZE){ cons 170 kernel/console.c cons.buf[cons.e++ % INPUT_BUF_SIZE] = c; cons 172 kernel/console.c if(c == '\n' || c == C('D') || cons.e-cons.r == INPUT_BUF_SIZE){ cons 175 kernel/console.c cons.w = cons.e; cons 176 kernel/console.c wakeup(&cons.r); cons 182 kernel/console.c release(&cons.lock); cons 188 kernel/console.c initlock(&cons.lock, "cons");