io_tlb_memRegular
4.4: Absent ⚠️
4.8: Absent ⚠️
4.10: Absent ⚠️
4.13: Absent ⚠️
4.15: Absent ⚠️
4.18: Absent ⚠️
5.0: Absent ⚠️
5.3: Absent ⚠️
5.4: Absent ⚠️
5.8: Absent ⚠️
5.11: Absent ⚠️
5.13: ✅struct io_tlb_mem {
phys_addr_t start;
phys_addr_t end;
long unsigned int nslabs;
long unsigned int used;
unsigned int index;
spinlock_t lock;
struct dentry *debugfs;
bool late_alloc;
struct io_tlb_slot slots[0];
};
5.15: ✅struct io_tlb_mem {
phys_addr_t start;
phys_addr_t end;
long unsigned int nslabs;
long unsigned int used;
unsigned int index;
spinlock_t lock;
struct dentry *debugfs;
bool late_alloc;
bool force_bounce;
bool for_alloc;
struct io_tlb_slot *slots;
};
5.19: ✅struct io_tlb_mem {
phys_addr_t start;
phys_addr_t end;
void *vaddr;
long unsigned int nslabs;
long unsigned int used;
unsigned int index;
spinlock_t lock;
struct dentry *debugfs;
bool late_alloc;
bool force_bounce;
bool for_alloc;
struct io_tlb_slot *slots;
};
6.2: ✅struct io_tlb_mem {
phys_addr_t start;
phys_addr_t end;
void *vaddr;
long unsigned int nslabs;
long unsigned int used;
struct dentry *debugfs;
bool late_alloc;
bool force_bounce;
bool for_alloc;
unsigned int nareas;
unsigned int area_nslabs;
struct io_tlb_area *areas;
struct io_tlb_slot *slots;
};
6.5: ✅struct io_tlb_mem {
phys_addr_t start;
phys_addr_t end;
void *vaddr;
long unsigned int nslabs;
struct dentry *debugfs;
bool late_alloc;
bool force_bounce;
bool for_alloc;
unsigned int nareas;
unsigned int area_nslabs;
struct io_tlb_area *areas;
struct io_tlb_slot *slots;
atomic_long_t total_used;
atomic_long_t used_hiwater;
};
6.8: ✅struct io_tlb_mem {
struct io_tlb_pool defpool;
long unsigned int nslabs;
struct dentry *debugfs;
bool force_bounce;
bool for_alloc;
bool can_grow;
u64 phys_limit;
spinlock_t lock;
struct list_head pools;
struct work_struct dyn_alloc;
atomic_long_t total_used;
atomic_long_t used_hiwater;
};
arm64: Absent ⚠️
armhf: Absent ⚠️
ppc64el: Absent ⚠️
riscv64: Absent ⚠️
aws: Absent ⚠️
azure: Absent ⚠️
gcp: Absent ⚠️
lowlatency: Absent ⚠️
Regular
5.13 and 5.15 ⚠️bool force_bounce
bool for_alloc
struct io_tlb_slot slots[0] ➡️ struct io_tlb_slot *slots
5.15 and 5.19 ⚠️void *vaddr
5.19 and 6.2 ⚠️unsigned int nareas
unsigned int area_nslabs
struct io_tlb_area *areas
unsigned int index
spinlock_t lock
6.2 and 6.5 ⚠️atomic_long_t total_used
atomic_long_t used_hiwater
long unsigned int used
6.5 and 6.8 ⚠️struct io_tlb_pool defpool
bool can_grow
u64 phys_limit
spinlock_t lock
struct list_head pools
struct work_struct dyn_alloc
phys_addr_t start
phys_addr_t end
void *vaddr
bool late_alloc
unsigned int nareas
unsigned int area_nslabs
struct io_tlb_area *areas
struct io_tlb_slot *slots