echo_char_raw(9)
π echo_char_raw(9) β the Kernel API Manual, bestie edition π
okay so this is the page for echo_char_raw, a lil kernel function living in the 9 section of the manual (kernel API, iykyk). it's short, it's sweet, and it does exactly one thing. let's get into it β¨
πΈ NAME πΈ
echo_char_raw β echo a character raw. that's it. that's the whole vibe. no filter, no special treatment, just raw π
β¨ SYNOPSIS β¨
void echo_char_raw (u8 c , struct n_tty_data *ldata );
like, two arguments, returns nothing (void), very lowkey of it ngl π«Ά
π ARGUMENTS π
cβ the unicode byte you wanna echo. one single byte, bestie, it's giving minimalism β¨ldataβ the line disc data. yes, "line disc" as in line discipline β this is the struct it all lives in π¦
π DESCRIPTION π
so what does it do? it echoes user input back onto the screen. that's the whole main character moment π
β οΈ but listen β this must be called only when L_ECHO(tty) is true. not "should", must. respect the vibes check or don't come to the function at all π
it gets called from the tty_driver.receive_buf path, so it's part of the whole input pipeline situation π
and here's the iconic part: this variant does not treat control characters specially. that's literally what "raw" in the name means β it just echoes the character, no special-casing, no drama, no editorialising. control chars get the same treatment as everything else. periodt π
π SEE ALSO π
the whole ./drivers/tty/n_tty.c kernel file is the home base for this one, and honestly the friend group is huge. here's everyone:
n_tty_kick_worker(9)n_tty_write_wakeup(9)put_tty_queue(9)reset_buffer_flags(9)n_tty_flush_buffer(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(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)
like, that's the entire tty friend group fr fr. read them all, they're all icons π
and that's the page!! this one ships from <code>./drivers/tty</code>, dated October 2026, and yeah β it's <code>echo_char_raw(9)</code>, obviously π β¨ go echo something raw, bestie π¦
π¦ 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