STRUCT VDUSE_IOTLB_ENTRY(9)
π struct vduse_iotlb_entry(9) β like, the Kernel API Manual, bestie β¨
okay so we're in the kernel API manual and today's main character is struct vduse_iotlb_entry(9). she's not huge, she's not loud, but she is doing her job and honestly? iconic.
π NAME π
struct vduse_iotlb_entry β an entry of IOTLB that describes exactly one IOVA region [start, last]. one region. one entry. no cap, that's her whole thing π
β¨ SYNOPSIS β¨
struct vduse_iotlb_entry {
__u64 offset;
__u64 start;
__u64 last;
#define VDUSE_ACCESS_RO 0x1;
#define VDUSE_ACCESS_WO 0x2;
#define VDUSE_ACCESS_RW 0x3;
__u8 perm;
};
look at her. four fields and three #defines just vibing in the middle of the struct. we stan π«Ά
πΈ Members πΈ
offsetβ themmapoffset on the returned file descriptor. basically "where do I find this thing", and the answer is right here, king π₯startβ the start of the IOVA region. the beginning, the opening act, the main character's entrance πlastβ the last of the IOVA region. she closes it out. periodt. β¨permβ the access permission of the IOVA region. your whole "can I read this? can I write this? am I allowed?" vibe check, answered in advance π¦
π§ Description π§
so this structure is the one used by the VDUSE_IOTLB_GET_FD ioctl to find an overlapped IOVA region. that's it, that's the tea β β it's the little container that carries the answer back to you when you go looking for a region that overlaps. lowkey humble, highkey essential π
β SEE ALSO β
kernel file ./include/uapi/linux/vduse.h (iykyk), and also the whole friend group:
struct vduse_dev_config(9)struct vduse_config_data(9)struct vduse_vq_config(9)struct vduse_vq_state_split(9)struct vduse_vq_state_packed(9)struct vduse_vq_group_asid(9)struct vduse_vq_info(9)struct vduse_vq_eventfd(9)struct vduse_iova_umem(9)struct vduse_iova_info(9)struct vduse_iotlb_entry_v2(9)enum vduse_req_type(9)struct vduse_vq_state(9)struct vduse_dev_status(9)struct vduse_iova_range(9)struct vduse_iova_range_v2(9)struct vduse_vq_ready(9)struct vduse_dev_request(9)struct vduse_dev_response(9)
go read them all, they're literally all right there. the whole squad. π
ngl, this one's short and sweet. read the whole thing, don't skim, and you'll be fine π
and that's a wrap, bestie!! shoutout to ./include/uapi/linux for being the source, and to October 2026 for the date stamp β mwah π see you in the next manpage, muah muah πππ¦β¨
π¦ 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