_uverbs_alloc(9)
β¨ NAME β¨
okay so this is from the Kernel API Manual, and the function is _uverbs_alloc β it quickly allocates memory for use with a bundle. That's the whole name section, bestie, and it's lowkey iconic.
β¨ SYNOPSIS β¨
__malloc void * _uverbs_alloc (struct uverbs_attr_bundle *bundle ,
size_t size , gfp_t flags );
β¨ ARGUMENTS β¨
bundleβ the bundle. Yes, that's the whole description, and honestly? Slay for being concise.sizeβ number of bytes to allocate.flagsβ allocator flags.
β¨ DESCRIPTION β¨
The bundle allocator is for allocations that are connected with processing the system call related to the bundle. It's giving "this memory is on syscall business, not your business."
The allocated memory is always freed once the system call completes, and it cannot be freed any other way.
β οΈ okay bestie, important: this memory gets freed when the system call completes. You cannot free it any other way. The original is very clear about that, so don't go rogue with your own free. That is not the vibe. π«Ά
This tries to use a small pool of pre-allocated memory for performance. Tiny pool, big main character energy. πΈ
β¨ SEE ALSO β¨
- Kernel file
./drivers/infiniband/core/ib_core_uverbs.c rdma_umap_priv_init(9)rdma_user_mmap_io(9)rdma_user_mmap_entry_get_pgoff(9)rdma_user_mmap_entry_get(9)rdma_user_mmap_entry_put(9)rdma_user_mmap_entry_remove(9)rdma_user_mmap_entry_insert_range(9)rdma_user_mmap_entry_insert(9)rdma_udata_to_dev(9)uverbs_get_buffer_desc(9)
mwah π this sign-off is brought to you by Kernel API Manual's _uverbs_alloc(9), source ./drivers/infiniband/core, dated October 2026. periodt. π
π¦ 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