MODULES_END
.end = MODULES_END,
create_mapping((void *)MODULES_VADDR, (void *)(MODULES_END));
if (!range_in_range(start, size, MODULES_VADDR, MODULES_END) &&
#define KIMAGE_VADDR (MODULES_END)
#define VMALLOC_START (MODULES_END)
vmcoreinfo_append_str("NUMBER(MODULES_END)=0x%lx\n", MODULES_END);
BUILD_BUG_ON(KIMAGE_VADDR != MODULES_END);
BUILD_BUG_ON(VMALLOC_START != MODULES_END);
{ MODULES_END, "Modules end" },
#define VMALLOC_START MODULES_END
.end = MODULES_END,
(unsigned long)mem_to_shadow((void *)MODULES_END), NUMA_NO_NODE);
if (unlikely(address >= MODULES_VADDR && address < MODULES_END))
.end = MODULES_END,
.end = MODULES_END,
#define MODULES_VADDR (MODULES_END - MODULES_SIZE)
#define MODULES_VADDR (MODULES_END - MODULES_SIZE)
if (addr > ALIGN(MODULES_END, SZ_256M) - 1)
k_end = (unsigned long)kasan_mem_to_shadow((void *)MODULES_END);
for (va = ALIGN_DOWN(MODULES_VADDR, PGDIR_SIZE); va < MODULES_END; va += PGDIR_SIZE)
if (MODULES_VADDR < PAGE_OFFSET && MODULES_END > limit) {
fallback_end = MODULES_END;
end = MODULES_END;
address_markers[i++].start_address = MODULES_END;
#define BPF_JIT_REGION_END (MODULES_END)
vmcoreinfo_append_str("NUMBER(MODULES_END)=0x%lx\n", MODULES_END);
(unsigned long)MODULES_END);
preallocate_pgd_pages_range(MODULES_VADDR, MODULES_END, "bpf/modules");
.end = MODULES_END,
(void *)kasan_mem_to_shadow((void *)MODULES_END));
kasan_populate(kasan_mem_to_shadow((const void *)MODULES_END),
unsigned long __bootdata_preserved(MODULES_END);
MODULES_END = round_down(kernel_start, _SEGMENT_SIZE);
MODULES_VADDR = MODULES_END - MODULES_LEN;
boot_debug("modules area: 0x%016lx-0x%016lx\n", MODULES_VADDR, MODULES_END);
kasan_populate(VMALLOC_START, MODULES_END, POPULATE_KASAN_SHALLOW);
if (addr > (void *)MODULES_END)
extern unsigned long MODULES_END;
#define MODULES_END MODULES_END
unsigned long __bootdata_preserved(MODULES_END);
rc |= add_marker(MODULES_VADDR, MODULES_END, "Modules Area");
.end = MODULES_END,
.end = MODULES_END,
(tpc >= MODULES_VADDR && tpc < MODULES_END)) {
MODULES_END, GFP_KERNEL, PAGE_KERNEL_ROX,
#define MODULES_LEN (MODULES_VADDR - MODULES_END)
#define MODULES_LEN (MODULES_END - MODULES_VADDR)
MAYBE_BUILD_BUG_ON(!(((MODULES_END - 1) & PGDIR_MASK) ==
BUILD_BUG_ON(__fix_to_virt(__end_of_fixed_addresses) <= MODULES_END);
[MODULES_END_NR] = { MODULES_END, "End Modules" },
(address >= MODULES_VADDR && address <= MODULES_END)) {
.end = MODULES_END,
.end = MODULES_END,
.end = MODULES_END,
.end = MODULES_END,
.end = MODULES_END,
kasan_populate_early_shadow(kasan_mem_to_shadow((void *)MODULES_END),
if (MODULES_VADDR != VMALLOC_START && MODULES_END != VMALLOC_END) {
MODULES_END - MODULES_VADDR, KCORE_VMALLOC);
return MODULES_END - MODULES_VADDR;
return ((u64)vaddr >= MODULES_VADDR) && ((u64)vaddr < MODULES_END);
if (addr >= MODULES_VADDR && addr < MODULES_END)