t3_sge_stop_dma(9)
π t3_sge_stop_dma(9) π
okay bestie, so this one's from the Kernel API Manual, section 9 β kernel API land π β and it's a tiny little function with a big job. let's get into it β¨
πΈ NAME πΈ
t3_sge_stop_dma β the girlie whose entire personality is Disable SGE DMA engine operation π
β¨ SYNOPSIS β¨
void t3_sge_stop_dma (struct adapter *adap );
that's it. that's the whole signature. no return value, we're giving nothing back, main character energy only π
π¦ ARGUMENTS π¦
adapβ the adapter π literally just the adapter, that's the assignment, that's the whole assignment.
π₯ DESCRIPTION π₯
so the vibe check here is: this function Can be invoked from interrupt context β like, for example, from the error handler π it's built different, it works from interrupt context, no cap.
but β and this is the important part β Note that this function cannot disable the restart of works π¬ because it cannot wait when it's called from interrupt context. it's literally not allowed to sit there and wait, that's not her life.
now the slay part: the works will have no effect anyway, because the doorbells are disabled πβ¨ periodt. so those works are out here showing up dressed for a party that isn't happening.
the driver will call tg3_sge_stop later, from process context π§ at which time the works will be stopped if they're still running. so like. she'll handle it later. it's fine. it's giving delegation π
β οΈ real talk: if you were expecting this function to fully shut everything down, that is not the gig β it can't wait from interrupt context, so it doesn't. the actual stopping happens later in tg3_sge_stop. don't @ me, that's just what the page says π«Ά
β SEE ALSO β
the whole squad fr fr, all from Kernel file ./drivers/net/ethernet/chelsio/cxgb3/sge.c π:
refill_rspq(9),need_skb_unmap(9),unmap_skb(9),free_tx_desc(9),reclaim_completed_tx(9)should_restart_tx(9),free_rx_bufs(9),add_one_rx_buf(9),refill_fl(9),recycle_rx_buf(9)alloc_ring(9),t3_reset_qset(9),t3_free_qset(9),init_qset_cntxt(9),sgl_len(9)flits_to_desc(9),get_packet(9),get_packet_pg(9),get_imm_packet(9),calc_tx_descs(9)write_sgl(9),check_ring_tx_db(9),write_wr_hdr_sgl(9),write_tx_pkt_wr(9),t3_eth_xmit(9)write_imm(9),check_desc_avail(9),reclaim_completed_tx_imm(9),ctrl_xmit(9),restart_ctrlq(9)deferred_unmap_destructor(9),write_ofld_wr(9),calc_tx_descs_ofld(9),ofld_xmit(9),restart_offloadq(9)queue_set(9),is_ctrl_pkt(9),t3_offload_tx(9),offload_enqueue(9),deliver_partial_bundle(9)ofld_poll(9),rx_offload(9),restart_tx(9),cxgb3_arp_process(9),rx_eth(9)lro_add_page(9),handle_rsp_cntrl_info(9),check_ring_db(9),is_new_response(9),process_responses(9)napi_rx_handler(9),process_pure_responses(9),handle_responses(9),t3_intr_handler(9),t3_sge_err_intr_handler(9)sge_timer_tx(9),sge_timer_rx(9),t3_update_qset_coalesce(9),t3_sge_alloc_qset(9),t3_start_sge_timers(9)t3_stop_sge_timers(9),t3_free_sge_resources(9),t3_sge_start(9),t3_sge_stop(9)t3_sge_init(9),t3_sge_prep(9)
like, the entire extended friend group ππ go read them, iykyk π
and that's the page babe π it ships out of ./drivers/net/ethernet/chelsio... and it's dated October 2026 β so like, future queen behavior πΈβ¨ mwah, ily, go disable some DMA π
π
π¦ 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