tid_rdma_fin...ys_blocks_8k(9)
π tid_rdma_fin...ys_blocks_8k(9) β bestie edition
okay so this is a page straight out of the Kernel API Manual and honestly? it's a little niche but it eats. we're talking InfiniBand, we're talking TID RDMA, we're talking putting pages into 8k-shaped lil groups. stay with me π«Ά
β¨ NAME β¨
tid_rdma_find_phys_blocks_8k β get groups base on mr info
(that's the original wording, no cap β "get groups base on mr info". iconic grammar, we respect it π )
πΈ SYNOPSIS πΈ
u32 tid_rdma_find_phys_blocks_8k (struct tid_rdma_flow *flow , struct
page **pages , u32 npages , struct tid_rdma_pageset *list );
π ARGUMENTS π
flowβ the overall info for a TID RDMA segment. it's the whole vibe check for the segment, basically.pagesβ a pointer to an array ofpagestructs. yes, pointer to an array, she's fancy like that.npagesβ the number of pages. how many we got? this many.listβ the page set array to return. this is the output, the main character of the whole function ngl.
π¦ DESCRIPTION π¦
so what does this routine do? it parses an array of pages and computes pagesets in an 8k compatible way. periodt. β¨
the way it works: pages get tested two at a time β that's i, i + 1 for contiguous pages, and i - 1 and i contiguous pages. lowkey thorough π
if any condition is false, any accumulated pages get flushed, andv0,v1are emitted as separatePAGE_SIZEpagesets. that's the dramatic exit.
otherwise? the current 8k is totaled for a future flush. saving it for later, iykyk π
π₯ RETURN π₯
the number of pagesets list set with the returned number of pagesets. slay π (fr fr, that's the sentence, keep it close to your heart)
π SEE ALSO π
the kernel file is at ./drivers/infiniband/hw/hfi1/tid_rdma.c β go say hi π«Ά and then there's the whole friend group:
- TID RDMA READ protocol(9)
qp_to_rcd(9)- lock ordering(9)
kernel_tid_waiters(9)dequeue_tid_waiter(9)queue_qp_for_tid_wait(9)__trigger_tid_waiter(9)tid_rdma_schedule_tid_wakeup(9)tid_rdma_trigger_resume(9)kern_reserve_flow(9)tid_rdma_find_phys_blocks_4k(9)tid_flush_pages(9)hfi1_kern_exp_rcv_setup(9)hfi1_kern_exp_rcv_free_flows(9)__trdma_clean_swqe(9)hfi1_schedule_tid_send(9)
π‘ tiny note bestie: this whole page lives in ./drivers/infiniband/hw/hfi1 and it's dated October 2026 β yes, the future. she's ahead of her time π§
anyway that's the function, mwah, go read the 4k sibling next π
π¦ 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