gsm_data_queue(9)
π gsm_data_queue(9) β the gen-z bestie guide
okay so real talk, this one is from the Kernel API Manual and it's a tiny lil function with a big job. buckle up bestie, it's giving "small but booked and busy" π
β¨ NAME β¨
gsm_data_queue β queue a UI or UIH frame. that's it. that's the whole job. iconic honestly π
πΈ SYNOPSIS πΈ
void gsm_data_queue (struct gsm_dlci *dlci , struct gsm_msg *msg );
no return value, it just does the thing and dips. main character energy, periodt π
π¦ ARGUMENTS π¦
dlciβ the DLCI that's sending the data. it's the one pushing the frame out the door π«Άmsgβ the message getting queued up. this is the actual payload bestie π
π₯ DESCRIPTION π₯
okay so here's the vibe: this function adds data to the transmit queue, and then it tries to get stuff moving out of the mux tty β but only if that isn't already happening. no duplicate effort, we're efficient here β¨
and the way that it does all this? it takes the gsm tx lock and the dlci lock. locking queen π
ngl the "tries to get stuff moving" wording means it's a nudge, not a guaranteed instant flush. don't @ me, that's literally what the man page says π
π SEE ALSO π
okay this list is LONG, like genuinely a whole friend group π but every single one of them is part of the Kernel file ./drivers/tty/n_gsm.c saga, so here we go, in order:
gsm_fcs_add(9)gsm_fcs_add_block(9)gsm_read_ea(9)gsm_read_ea_val(9)gsm_encode_modem(9)gsm_encode_params(9)gsm_register_devices(9)gsm_unregister_devices(9)gsm_print_packet(9)gsm_stuff_frame(9)gsm_send(9)gsm_dlci_clear_queues(9)gsm_response(9)gsm_command(9)gsm_data_alloc(9)gsm_send_packet(9)gsm_is_flow_ctrl_msg(9)gsm_data_kick(9)__gsm_data_queue(9)gsm_dlci_data_output(9)gsm_dlci_data_output_framed(9)gsm_dlci_modem_output(9)gsm_dlci_data_sweep(9)gsm_dlci_data_kick(9)gsm_control_command(9)gsm_control_reply(9)gsm_process_modem(9)gsm_process_negotiation(9)gsm_control_modem(9)gsm_control_negotiation(9)gsm_control_rls(9)gsm_control_message(9)gsm_control_response(9)gsm_control_keep_alive(9)gsm_control_transmit(9)gsm_control_retransmit(9)gsm_control_send(9)gsm_control_wait(9)gsm_dlci_close(9)gsm_dlci_open(9)gsm_dlci_negotiate(9)gsm_dlci_t1(9)gsm_dlci_begin_open(9)gsm_dlci_set_opening(9)gsm_dlci_set_wait_config(9)gsm_dlci_begin_close(9)gsm_dlci_data(9)gsm_dlci_command(9)gsm_kick_timer(9)gsm_dlci_copy_config_values(9)gsm_dlci_config(9)gsm_dlci_alloc(9)gsm_dlci_free(9)gsm_dlci_release(9)gsm_queue(9)gsm0_receive_state_check_and_fix(9)gsm0_receive(9)gsm1_receive_state_check_and_fix(9)gsm1_receive(9)gsm_error(9)gsm_cleanup_mux(9)gsm_activate_mux(9)gsm_free_mux(9)gsm_free_muxr(9)gsm_alloc_mux(9)gsmld_output(9)gsmld_write_trigger(9)gsmld_write_task(9)gsmld_attach_gsm(9)gsmld_detach_gsm(9)gsmld_flush_buffer(9)gsmld_close(9)gsmld_open(9)gsmld_write_wakeup(9)gsmld_read(9)gsmld_write(9)gsmld_poll(9)gsm_modem_upd_via_data(9)gsm_modem_upd_via_msc(9)gsm_modem_update(9)gsm_wait_modem_change(9)
likeβ¦ that's the whole extended universe. iykyk π
π§ sign-off π§
so yeah, that's the page β it lives in ./drivers/tty (that's the source/version bit bestie), and it's dated October 2026 β go forth and queue those UI/UIH frames, you absolute legend ππ
slay β¨
π¦ 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