gsm_dlci_modem_output(9)
π gsm_dlci_modem_output β Kernel API Manual, bestie edition β¨
okay so real talk, this one's from the Kernel API Manual (yes, the big scary one), and honestly? It's short and it ate. Let's go π«Ά
β¨ NAME β¨
gsm_dlci_modem_output β bestie's whole job is to try and push modem status out of a DLCI. That's it. That's the gig π
πΈ SYNOPSIS πΈ
int gsm_dlci_modem_output (struct gsm_mux *gsm , struct gsm_dlci *dlci ,
u8 brk );
literally the whole signature, no notes π
π ARGUMENTS π
gsmβ the mux, aka the main character of this whole situation πdlciβ the DLCI we're pulling modem status from. Her moment β¨brkβ break signal π₯
π¦ DESCRIPTION π¦
So what does she actually do? She pushes an empty frame into the transmit queue β no cap, that's how the modem status bits get updated, and it's also how the optional break gets sent out. Two birds, one frame, we love efficiency π
β οΈ okay this part matters, do NOT skip it: the caller must hold the tx_lock of the mux. Like, fr fr. Hold the lock. π
π SEE ALSO π
The kernel file herself lives at ./drivers/tty/n_gsm.c, and she runs with a whole friend group β here's everyone, in order, no one left behind π:
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_data_queue(9), gsm_dlci_data_output(9), gsm_dlci_data_output_framed(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)
iykyk π that's the whole squad, go read them, slay π
that's the page, bestie β short, sweet, and she holds the lock. mwah π§π
Sign-off time π: this cutie lives under ./drivers/tty, she's dated October 2026, and she'll answer to gsm_dlci_modem_output(9) β iconic, no cap πβ¨
π¦ 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