n_tty_flush_buffer(9)
π n_tty_flush_buffer(9) β Kernel API Manual moment β¨
okay bestie, buckle up π this one is a tiny little function from the Kernel API Manual section 9, and it is literally just here to clean up the input queue. small but mighty, yk? π
β¨ NAME β¨
n_tty_flush_buffer β clean input queue π§Ήπ
π¦ SYNOPSIS π¦
void n_tty_flush_buffer (struct tty_struct *tty );
no return value, no drama, just vibes π
π ARGUMENTS π
ttyβ the terminal device π she's the main character here, everything happens to her
π DESCRIPTION π
okay so basically: this flushes the input buffer π½β¨. it gets called when the tty layer wants that buffer flushed β like eg at hangup β or when the N_TTY line discipline internally has to clean out the pending queue, for example when some signals show up π.
she holds termios_rwsem so producers and consumers are excluded while the buffer indices are getting reset π no sneaking in while the reset is happening, periodt.
Locking: ctrl.lock, exclusive termios_rwsem π
not me telling you to respect the locking rules... fr fr though, exclusive means exclusive π€
πΈ SEE ALSO πΈ
like, the whole friend group π«Ά all from the kernel file ./drivers/tty/n_tty.c:
n_tty_kick_worker(9)n_tty_write_wakeup(9)put_tty_queue(9)reset_buffer_flags(9)is_utf8_continuation(9)is_continuation(9)do_output_char(9)process_output(9)process_output_block(9)__process_echoes(9)add_echo_byte(9)echo_move_back_col(9)echo_set_canon_col(9)echo_erase_tab(9)echo_char_raw(9)echo_char(9)finish_erasing(9)eraser(9)isig(9)n_tty_receive_break(9)n_tty_receive_overrun(9)n_tty_receive_parity_error(9)n_tty_receive_char_flow_ctrl(9)n_tty_receive_char(9)n_tty_receive_buf_common(9)n_tty_set_termios(9)n_tty_close(9)n_tty_open(9)copy_from_read_buf(9)canon_copy_from_read_buf(9)job_control(9)n_tty_read(9)n_tty_write(9)n_tty_poll(9)n_tty_inherit_ops(9)
that's the whole page, bestie, go slay π«Άβ¨ this came from ./drivers/tty, version dated October 2026 β ily, stay hydrated, and don't forget to lock your semaphores ππ₯π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms