pcpu_chunkRegular
4.4: ✅struct pcpu_chunk {
struct list_head list;
int free_size;
int contig_hint;
void *base_addr;
int map_used;
int map_alloc;
int *map;
struct work_struct map_extend_work;
void *data;
int first_free;
bool immutable;
int nr_populated;
long unsigned int populated[0];
};
4.8: ✅struct pcpu_chunk {
struct list_head list;
int free_size;
int contig_hint;
void *base_addr;
int map_used;
int map_alloc;
int *map;
struct list_head map_extend_list;
void *data;
int first_free;
bool immutable;
int nr_populated;
long unsigned int populated[0];
};
4.10: ✅struct pcpu_chunk {
struct list_head list;
int free_size;
int contig_hint;
void *base_addr;
int map_used;
int map_alloc;
int *map;
struct list_head map_extend_list;
void *data;
int first_free;
bool immutable;
int nr_populated;
long unsigned int populated[0];
};
4.13: ✅struct pcpu_chunk {
struct list_head list;
int free_size;
int contig_hint;
void *base_addr;
int map_used;
int map_alloc;
int *map;
struct list_head map_extend_list;
void *data;
int first_free;
bool immutable;
bool has_reserved;
int nr_populated;
long unsigned int populated[0];
};
4.15: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
int contig_bits;
int contig_bits_start;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
int first_bit;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
4.18: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
int contig_bits;
int contig_bits_start;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
int first_bit;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
5.0: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
int contig_bits;
int contig_bits_start;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
int first_bit;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
5.3: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
5.4: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
5.8: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
5.11: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
struct obj_cgroup **obj_cgroups;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
5.13: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
struct obj_cgroup **obj_cgroups;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
5.15: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
bool isolated;
int start_offset;
int end_offset;
struct obj_cgroup **obj_cgroups;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
5.19: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
bool isolated;
int start_offset;
int end_offset;
struct obj_cgroup **obj_cgroups;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
6.2: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
bool isolated;
int start_offset;
int end_offset;
struct obj_cgroup **obj_cgroups;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
6.5: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
long unsigned int *bound_map;
void *base_addr;
long unsigned int *alloc_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
bool isolated;
int start_offset;
int end_offset;
struct obj_cgroup **obj_cgroups;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
6.8: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
long unsigned int *bound_map;
void *base_addr;
long unsigned int *alloc_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
bool isolated;
int start_offset;
int end_offset;
struct obj_cgroup **obj_cgroups;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
arm64: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
armhf: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
ppc64el: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
riscv64: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
aws: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
azure: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
gcp: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
lowlatency: ✅struct pcpu_chunk {
struct list_head list;
int free_bytes;
struct pcpu_block_md chunk_md;
void *base_addr;
long unsigned int *alloc_map;
long unsigned int *bound_map;
struct pcpu_block_md *md_blocks;
void *data;
bool immutable;
int start_offset;
int end_offset;
int nr_pages;
int nr_populated;
int nr_empty_pop_pages;
long unsigned int populated[0];
};
Regular
4.4 and 4.8 ⚠️struct list_head map_extend_list
struct work_struct map_extend_work
4.8 and 4.10 ✅
4.10 and 4.13 ⚠️bool has_reserved
4.13 and 4.15 ⚠️int free_bytes
int contig_bits
int contig_bits_start
long unsigned int *alloc_map
long unsigned int *bound_map
struct pcpu_block_md *md_blocks
int first_bit
int start_offset
int end_offset
int nr_pages
int nr_empty_pop_pages
int free_size
int contig_hint
int map_used
int map_alloc
int *map
struct list_head map_extend_list
int first_free
bool has_reserved
4.15 and 4.18 ✅
4.18 and 5.0 ✅
5.0 and 5.3 ⚠️struct pcpu_block_md chunk_md
int contig_bits
int contig_bits_start
int first_bit
5.3 and 5.4 ✅
5.4 and 5.8 ✅
5.8 and 5.11 ⚠️struct obj_cgroup **obj_cgroups
5.11 and 5.13 ✅
5.13 and 5.15 ⚠️bool isolated
5.15 and 5.19 ✅
5.19 and 6.2 ✅
6.2 and 6.5 ✅
6.5 and 6.8 ✅
amd64 and arm64 ✅
amd64 and armhf ✅
amd64 and ppc64el ✅
amd64 and riscv64 ✅
generic and aws ✅
generic and azure ✅
generic and gcp ✅
generic and lowlatency ✅