Defined in 2 files as a function:
- arch/x86/include/asm/paravirt.h, line 128 (as a function)
- arch/x86/include/asm/special_insns.h, line 179 (as a function)
Referenced in 5 files:
- arch/x86/kernel/cpu/cacheinfo.c
- arch/x86/kernel/cpu/common.c
- arch/x86/kernel/cpu/mtrr/cyrix.c
- arch/x86/kernel/process.c, line 714
- arch/x86/power/cpu.c
Smatch caller information:
arch/x86/kernel/process.c cr4_toggle_bits_irqsoff() -> __write_cr4()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
arch/x86/kernel/cpu/cacheinfo.c cache_disable() -> __write_cr4()
| Type | Parameter | Key | Value |
|---|---|---|---|
| BIT_INFO | 0 | x | 0x0,0xffffffffffffff7f |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &cache_disable_lock | ||
| HALF_LOCKED2 | flags |
arch/x86/kernel/cpu/cacheinfo.c cache_enable() -> __write_cr4()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &cache_disable_lock | ||
| HALF_LOCKED2 | flags |
arch/x86/kernel/cpu/common.c cr4_init() -> __write_cr4()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
arch/x86/kernel/cpu/common.c cr4_update_irqsoff() -> __write_cr4()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | irq |
arch/x86/power/cpu.c __restore_processor_state() -> __write_cr4()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | irq | ||
| HALF_LOCKED2 | global &device_hotplug_lock | ||
| HALF_LOCKED2 | global &system_transition_mutex |