Defined in 1 files as a prototype:

Defined in 1 files as a macro:

Defined in 2 files as a function:

Referenced in 29 files:

Smatch caller information:

arch/x86/kernel/mpparse.c check_physptr() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u32max
PARAM_VALUE 1 size 0-u16max
DATA_SOURCE 1 size r get_mpc_size
UNITS 0 phys_addr unit_byte
LOCK2 irq

arch/x86/kernel/mpparse.c get_mpc_size() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u32max
PARAM_VALUE 1 size 4096
DATA_SOURCE 0 phys_addr $0
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
HALF_LOCKED2 irq

arch/x86/kernel/mpparse.c mpparse_get_smp_config() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 16
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/kernel/mpparse.c smp_scan_config() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 0,16-u64max
PARAM_VALUE 1 size 1-u64max
DATA_SOURCE 0 phys_addr $0 [m]
DATA_SOURCE 1 size $1 [m]
LOCK2 irq

arch/x86/kernel/mpparse.c update_mp_table() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 16
UNITS 1 size unit_byte

arch/x86/kernel/mpparse.c update_mp_table() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u32max
PARAM_VALUE 1 size 0-u16max
DATA_SOURCE 1 size r get_mpc_size
UNITS 0 phys_addr unit_byte

arch/x86/kernel/mpparse.c update_mp_table() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u64max
UNITS 1 size unit_byte

arch/x86/kernel/mpparse.c update_mp_table() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1008
PARAM_VALUE 1 size 16
UNITS 1 size unit_byte

drivers/firmware/efi/mokvar-table.c efi_mokvar_table_init() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 264
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/kernel/acpi/boot.c __acpi_map_table() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u64max
PARAM_VALUE 1 size 1-u64max
DATA_SOURCE 0 phys_addr $0
DATA_SOURCE 1 size $1
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 size 1-u32max
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
HALF_LOCKED2 &of->mutex

drivers/firmware/efi/esrt.c efi_esrt_init() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 16
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/xen/enlighten_hvm.c reserve_shared_info() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 4096
CAPPED_DATA 0 phys_addr 1
CAPPED_DATA 0 phys_addr 1
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/kernel/devicetree.c x86_flattree_get_config() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u64max
PARAM_VALUE 1 size 128-4096
LOCK2 irq

arch/x86/kernel/devicetree.c x86_flattree_get_config() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u64max
PARAM_VALUE 1 size 129-u32max
DATA_SOURCE 1 size r fdt32_ld
LOCK2 irq

arch/x86/kernel/jailhouse.c jailhouse_init_platform() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u64max
PARAM_VALUE 1 size 16
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/kernel/jailhouse.c jailhouse_init_platform() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 4-284
CAPPED_DATA 1 size 1
CAPPED_DATA 1 size 1
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/platform/efi/efi.c efi_config_init() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 20-103079215080
LOCK2 irq

arch/x86/kernel/e820.c e820__memory_setup_extended() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u64max
DATA_SOURCE 0 phys_addr $0
DATA_SOURCE 1 size $1
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/dmi_scan.c dmi_scan_machine() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 32
LOCK2 irq

drivers/firmware/dmi_scan.c dmi_scan_machine() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 32
LOCK2 irq

drivers/firmware/dmi_scan.c dmi_scan_machine() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 983040
PARAM_VALUE 1 size 65536
LOCK2 irq

drivers/firmware/dmi_scan.c dmi_walk_early() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-2147483642
LOCK2 irq

arch/x86/platform/efi/quirks.c efi_reuse_config() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u64max
PARAM_VALUE 1 size 96
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/platform/efi/quirks.c efi_reuse_config() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-s32max,18446744071562067968-u64max
DATA_SOURCE 0 phys_addr $0
LOCK2 irq

mm/early_ioremap.c copy_from_early_mem() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 0,4096-u64max
PARAM_VALUE 1 size 1-266239
BIT_INFO 0 phys_addr 0x0,0xfffffffffffff000
LOCK2 irq

drivers/acpi/tables.c acpi_table_upgrade() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 0,4096-u64max
PARAM_VALUE 1 size 1-266239
BIT_INFO 0 phys_addr 0x0,0xfffffffffffff000
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/efi/tpm.c __calc_tpm2_event_size() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 4096-18446744073709547520
PARAM_VALUE 1 size 0-s32max,18446744071562067968-u64max
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/efi/tpm.c __calc_tpm2_event_size() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 2
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/efi/tpm.c __calc_tpm2_event_size() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 0-s32max,18446744071562067968-u64max
PARAM_COMPARE 0 phys_addr > $0
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/efi/tpm.c efi_tpm_eventlog_init() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 12
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/efi/tpm.c efi_tpm_eventlog_init() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 16
UNITS 1 size unit_byte
LOCK2 irq

kernel/liveupdate/kexec_handover.c kho_populate() -> early_memremap()

Type Parameter Key Value
DATA_SOURCE 0 phys_addr $0
DATA_SOURCE 1 size $1
UNITS 1 size unit_byte
HALF_LOCKED2 irq

kernel/liveupdate/kexec_handover.c kho_populate() -> early_memremap()

Type Parameter Key Value
DATA_SOURCE 0 phys_addr $2
DATA_SOURCE 1 size $3
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
HALF_LOCKED2 irq

drivers/firmware/efi/efi.c efi_config_parse_tables() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 4
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/efi/efi.c efi_config_parse_tables() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 5-1028
CAPPED_DATA 1 size 1
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/efi/efi.c efi_config_parse_tables() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 0,4096-u64max
PARAM_VALUE 1 size 4096
BIT_INFO 0 phys_addr 0x0,0xfffffffffffff000
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/efi/efi.c efi_config_parse_tables() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 8
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/efi/efi.c efi_config_parse_tables() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 16
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/efi/efi.c efi_config_parse_tables() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 24
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/kernel/setup.c add_early_ima_buffer() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 16
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/kernel/setup.c add_kho() -> early_memremap()

Type Parameter Key Value
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/kernel/setup.c memblock_x86_reserve_range_setup_data() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u64max
PARAM_VALUE 1 size 16
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/kernel/setup.c memblock_x86_reserve_range_setup_data() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u64max
CAPPED_DATA 0 phys_addr 1
CAPPED_DATA 0 phys_addr 1
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/kernel/setup.c parse_setup_data() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u64max
PARAM_VALUE 1 size 16
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/kernel/setup.c parse_setup_data() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 0 phys_addr 1-u64max
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/virt/svm/sev.c fixup_e820_tables_for_segmented_rmp() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 4096
LOCK2 irq

arch/x86/xen/setup.c xen_phys_memcpy() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 1-266239
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/xen/setup.c xen_phys_memcpy() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 1-266239
UNITS 0 phys_addr unit_byte
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/efi/memattr.c efi_memattr_init() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 16
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/xen/mmu_pv.c xen_relocate_p2m() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 4096
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/xen/mmu_pv.c xen_relocate_p2m() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 4096
UNITS 1 size unit_byte
LOCK2 irq

arch/x86/xen/mmu_pv.c xen_relocate_p2m() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 4096
UNITS 1 size unit_byte
LOCK2 irq

drivers/firmware/efi/efi-bgrt.c efi_bgrt_init() -> early_memremap()

Type Parameter Key Value
PARAM_VALUE 1 size 6
UNITS 1 size unit_byte
HALF_LOCKED2 global &acpi_probe_mutex
HALF_LOCKED2 irq

drivers/firmware/efi/memmap.c __efi_memmap_init() -> early_memremap()

Type Parameter Key Value
UNITS 1 size unit_byte
HALF_LOCKED2 irq