t4vf_ethrx_handler(9)
π
t4vf_ethrx_handler (9) β Kernel API Manual
okay so this is a page from the Kernel API Manual β section 9, kernel developer vibes only, no mere mortals here π§ β and today's main character is t4vf_ethrx_handler, aka the function that handles packets coming in. Let's get into it π
β¨ NAME β¨
t4vf_ethrx_handler β process an ingress ethernet packet π¦
πΈ SYNOPSIS πΈ
int t4vf_ethrx_handler (struct sge_rspq *rspq , const __be64 *rsp ,
const struct pkt_gl *gl );
bestie, it returns an int, and it takes three things. that's it. that's the whole signature π
π ARGUMENTS π
rspqβ the response queue that received the packet π this is the queue, and it is the one that got the packet. periodt.rspβ the response queue descriptor holding theRX_PKTmessage π¬ it's literally holding the message for you, say thank you.glβ the gather list of packet fragments π§© all the lil pieces of the packet, gathered up.
π DESCRIPTION π
Process an ingress ethernet packet and deliver it to the stack β¨ that's the whole job. packet comes in, packet gets processed, packet goes up to the stack. slay, no cap π
π₯ SEE ALSO π₯
not me having to list all of these, but honestly? iconic lineup. the kernel file herself:
- Kernel file
./drivers/net/ethernet/chelsio/cxgb4vf/sge.c
and the whole friend group π:
get_buf_addr(9)is_buf_mapped(9)need_skb_unmap(9)txq_avail(9)fl_cap(9)fl_starving(9)map_skb(9)free_tx_desc(9)reclaim_completed_tx(9)get_buf_size(9)free_rx_bufs(9)unmap_rx_buf(9)ring_fl_db(9)set_rx_sw_desc(9)refill_fl(9)alloc_ring(9)sgl_len(9)flits_to_desc(9)is_eth_imm(9)calc_tx_flits(9)write_sgl(9)ring_tx_db(9)inline_tx_skb(9)t4vf_eth_xmit(9)copy_frags(9)t4vf_pktgl_to_skb(9)t4vf_pktgl_free(9)do_gro(9)is_new_response(9)restore_rx_bufs(9)rspq_next(9)process_responses(9)napi_rx_handler(9)t4vf_intr_handler(9)sge_rx_timer_cb(9)sge_tx_timer_cb(9)bar2_address(9)t4vf_sge_alloc_rxq(9)t4vf_sge_alloc_eth_txq(9)t4vf_free_sge_resources(9)t4vf_sge_start(9)t4vf_sge_stop(9)t4vf_sge_init(9)
go read them, iykyk π«Ά
ok and finally, the lil sign-off at the bottom: this page lives at./drivers/net/ethernet/chelsio...(yes it's truncated like that, don't come for me π), it's dated October 2026 β, and the whole thing is filed undert4vf_ethrx_handler(9)because that's the name of the page. bye bestie, go process some ingress packets π ππ
π¦ 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