ib_dma_unmap_single(9)
π ib_dma_unmap_single(9) β from the Kernel API Manual, bestie β¨
okay so, hi π«Ά you found the page for ib_dma_unmap_single(9) and honestly? it's a lil cleanup queen. this is the Kernel API Manual's entry, and we're gonna get through it together.
πΈ NAME πΈ
ib_dma_unmap_single β the function that destroys a mapping that was created by ib_dma_map_single() πβ¨
like, it's the breakup arc. ib_dma_map_single() set it up, and this one says "we're done here." iconic behavior, no cap.
π SYNOPSIS π
void ib_dma_unmap_single (struct ib_device *dev , u64 addr , size_t size
, enum dma_data_direction direction );
literally just those four things, in that order, and it returns void so don't go looking for a return value bestie, there isn't one π
π ARGUMENTS π
okay this is the part where we vibe check each param one by one π
devβ the device the DMA address was created for π like the specific one. no switching devices on this one, that's not the move.addrβ the DMA address. yes, the DMA address, that one right there β¨sizeβ how big the region is, in bytes. in bytes!! don't be out here guessing πdirectionβ the direction of the DMA π it's anenum dma_data_direction, and you're gonna tell it which way things were flowing.
π¦ SEE ALSO π¦
okay this list is long long, but i'm not skipping a single one because every one of these is a main character in their own right, periodt π
and heads up β they all live in the kernel file ./include/rdma/ib_verbs.h:
struct rdma_stat_desc(9)struct rdma_hw_stats(9)ib_rate_to_mult(9)ib_rate_to_mbps(9)ib_port_attr_to_speed_info(9)enum ib_mr_type(9)struct ib_mr_status(9)mult_to_ib_rate(9)struct ib_udata(9)struct rdma_netdev(9)struct ib_device_ops(9)ib_get_client_data(9)ib_modify_qp_is_ok(9)rdma_cap_ib_switch(9)rdma_start_port(9)rdma_for_each_port(9)rdma_end_port(9)rdma_cap_ib_mad(9)rdma_cap_opa_mad(9)rdma_cap_ib_smi(9)rdma_cap_ib_cm(9)rdma_cap_iw_cm(9)rdma_cap_ib_sa(9)rdma_cap_ib_mcast(9)rdma_cap_af_ib(9)rdma_cap_eth_ah(9)rdma_cap_opa_ah(9)rdma_max_mad_size(9)rdma_cap_roce_gid_table(9)rdma_core_cap_opa_port(9)rdma_mtu_enum_to_int(9)rdma_mtu_from_attr(9)ib_alloc_pd(9)ib_dealloc_pd(9)rdma_create_ah(9)rdma_create_user_ah(9)ib_get_gids_from_rdma_hdr(9)ib_get_rdma_header_version(9)ib_init_ah_attr_from_wc(9)ib_create_ah_from_wc(9)rdma_modify_ah(9)rdma_query_ah(9)rdma_destroy_ah_user(9)rdma_destroy_ah(9)ib_modify_srq(9)ib_query_srq(9)ib_destroy_srq_user(9)ib_destroy_srq(9)ib_post_srq_recv(9)ib_create_qp(9)ib_modify_qp_with_udata(9)ib_modify_qp(9)ib_query_qp(9)ib_destroy_qp(9)ib_open_qp(9)ib_close_qp(9)ib_post_send(9)ib_post_recv(9)ib_alloc_cq_any(9)rdma_set_cq_moderation(9)ib_destroy_cq_user(9)ib_destroy_cq(9)ib_poll_cq(9)ib_req_notify_cq(9)ib_virt_dma_to_ptr(9)ib_virt_dma_to_page(9)ib_dma_mapping_error(9)ib_dma_map_single(9)ib_dma_map_page(9)ib_dma_unmap_page(9)ib_dma_map_bvec(9)ib_dma_unmap_bvec(9)ib_dma_map_sgtable_attrs(9)ib_dma_map_sg(9)ib_dma_unmap_sg(9)ib_dma_max_seg_size(9)ib_dma_sync_single_for_cpu(9)ib_dma_sync_single_for_device(9)ib_dereg_mr_user(9)ib_dereg_mr(9)ib_update_fast_reg_key(9)ib_inc_rkey(9)ib_attach_mcast(9)ib_detach_mcast(9)ib_check_mr_status(9)ib_device_try_get(9)rdma_ah_find_type(9)ib_lid_cpu16(9)ib_lid_be16(9)rdma_roce_rescan_device(9)rdma_device_to_ibdev(9)ibdev_to_node(9)rdma_device_to_drv_device(9)rdma_flow_label_to_udp_sport(9)rdma_calc_flow_label(9)rdma_get_udp_sport(9)
ngl bestie, that's the whole roster π every single one is listed, so you can go lose yourself in the cross-references for hours. that's the assignment π§
π«Ά the sign-off π«Ά
so yeah! that's the page π it comes from ./include/rdma, the version's dated October 2026, and the whole thing answers to the name ib_dma_unmap_single(9). go unmap responsibly, bestie β 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