Defined in 2 files as a function:

Referenced in 11 files:

Smatch caller information:

arch/x86/kernel/apic/io_apic.c ioapic_ack_level() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 0-1073742207,3221225856-u32max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &desc->lock
HALF_LOCKED2 _T->flags
HALF_LOCKED2 irq

arch/x86/kernel/apic/io_apic.c mask_lapic_irq() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 848
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &desc->lock
HALF_LOCKED2 _T->flags

arch/x86/kernel/apic/io_apic.c read_apic_id() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 32
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq

arch/x86/kernel/apic/io_apic.c unmask_lapic_irq() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 848
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &desc->lock
HALF_LOCKED2 _T->flags

arch/x86/kernel/apic/apic_common.c default_init_apic_ldr() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 208

drivers/thermal/intel/therm_throt.c therm_lvt_init() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 816
LOCK2 irq

drivers/thermal/intel/therm_throt.c thermal_throttle_offline() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 816
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq

drivers/thermal/intel/therm_throt.c thermal_throttle_online() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 816
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/msi.c lapic_vector_set_in_irr() -> apic_read()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq

arch/x86/platform/uv/uv_nmi.c uv_nmi_init() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 864

arch/x86/kernel/apic/apic.c __setup_APIC_LVTT() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 992
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c __sysvec_error_interrupt() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 640
PREEMPT_ADD

arch/x86/kernel/apic/apic.c apic_check_and_eoi_isr() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 256-368

arch/x86/kernel/apic/apic.c apic_check_and_eoi_isr() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 256-368

arch/x86/kernel/apic/apic.c apic_clear_isr() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 512-624

arch/x86/kernel/apic/apic.c apic_read_boot_cpu_id() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 48
LOCK2 irq

arch/x86/kernel/apic/apic.c apic_soft_disable() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 240
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

arch/x86/kernel/apic/apic.c clear_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 800
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

arch/x86/kernel/apic/apic.c clear_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 848
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

arch/x86/kernel/apic/apic.c clear_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 864
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

arch/x86/kernel/apic/apic.c clear_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 832
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

arch/x86/kernel/apic/apic.c clear_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 816
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

arch/x86/kernel/apic/apic.c clear_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 752
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

arch/x86/kernel/apic/apic.c clear_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 640
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

arch/x86/kernel/apic/apic.c disconnect_bsp_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 240
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq

arch/x86/kernel/apic/apic.c disconnect_bsp_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 848
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq

arch/x86/kernel/apic/apic.c disconnect_bsp_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 864
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq

arch/x86/kernel/apic/apic.c handle_spurious_interrupt() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 0-1073742079,3221225728-u32max
PREEMPT_ADD

arch/x86/kernel/apic/apic.c init_bsp_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 240

arch/x86/kernel/apic/apic.c lapic_cal_handler() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 912
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_get_maxlvt() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 48
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/apic.c lapic_get_version() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 48

arch/x86/kernel/apic/apic.c lapic_resume() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 640
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_resume() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 640
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_setup_esr() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 640

arch/x86/kernel/apic/apic.c lapic_setup_esr() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 640

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 32
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 128
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 208
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 224
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 240
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 800
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 832
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 848
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 864
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 880
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 896
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 992
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 816
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_suspend() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 752
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c lapic_timer_shutdown() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 800
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c native_apic_icr_read() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 784

arch/x86/kernel/apic/apic.c native_apic_icr_read() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 768

arch/x86/kernel/apic/apic.c read_apic_id() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 32
HALF_LOCKED2 flags
HALF_LOCKED2 irq

arch/x86/kernel/apic/apic.c setup_APIC_eilvt() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 1280-1520
CAPPED_DATA 0 reg 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 reg 1296-1520[c]

arch/x86/kernel/apic/apic.c setup_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 240

arch/x86/kernel/apic/apic.c setup_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 128

arch/x86/kernel/apic/apic.c setup_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 240

arch/x86/kernel/apic/apic.c setup_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 848

arch/x86/kernel/cpu/topology_common.c read_apic_id() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 32

arch/x86/kernel/apic/ipi.c apic_mem_wait_icr_idle_timeout() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 768
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c lapic_vector_set_in_irr() -> apic_read()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &vector_lock
LOCK2 irq

arch/x86/kernel/apic/vector.c print_APIC_field() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 256-368,384-496,512-624
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 32
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 48
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 128
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 144
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 160
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 192
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 208
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 224
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 240
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 640
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 800
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 832
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 848
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 864
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 880
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 896
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 912
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 992
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 1024
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 1040
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c print_local_APIC() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 1280-5344
CAPPED_DATA 0 reg 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/apic/vector.c read_apic_id() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 32
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

arch/x86/kernel/smpboot.c do_boot_cpu() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 640
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq

arch/x86/kernel/smpboot.c send_init_sequence() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 640
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq

arch/x86/kernel/smpboot.c wakeup_secondary_cpu_via_init() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 640
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq

arch/x86/kernel/smpboot.c wakeup_secondary_cpu_via_init() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 640
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq

arch/x86/entry/syscall_32.c int80_is_external() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 320

arch/x86/kernel/irq.c lapic_vector_set_in_irr() -> apic_read()

Type Parameter Key Value
PARAM_VALUE 0 reg 528-624
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags