arch/arm64/kvm/hyp/nvhe/early_alloc.c

Source file repositories/reference/linux-study-clean/arch/arm64/kvm/hyp/nvhe/early_alloc.c

File Facts

System
Linux kernel
Corpus path
arch/arm64/kvm/hyp/nvhe/early_alloc.c
Extension
.c
Size
1331 bytes
Lines
60
Domain
Architecture Layer
Bucket
arch/arm64
Inferred role
Architecture Layer: implementation source
Status
source implementation candidate

Why This File Exists

CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.

Dependency Surface

Detected Declarations

Annotated Snippet

static void hyp_early_alloc_get_page(void *addr) { }
static void hyp_early_alloc_put_page(void *addr) { }

void hyp_early_alloc_init(void *virt, unsigned long size)
{
	base = cur = (unsigned long)virt;
	end = base + size;

	hyp_early_alloc_mm_ops.zalloc_page = hyp_early_alloc_page;
	hyp_early_alloc_mm_ops.phys_to_virt = hyp_phys_to_virt;
	hyp_early_alloc_mm_ops.virt_to_phys = hyp_virt_to_phys;
	hyp_early_alloc_mm_ops.get_page = hyp_early_alloc_get_page;
	hyp_early_alloc_mm_ops.put_page = hyp_early_alloc_put_page;
}

Annotation

Implementation Notes