Function report |
Source Code:arch\x86\kernel\acpi\sleep.c |
Create Date:2022-07-28 08:16:46 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:x86_acpi_suspend_lowlevel - save kernel state* Create an identity mapped page table and copy the wakeup routine to* low memory.
Proto:int x86_acpi_suspend_lowlevel(void)
Type:int
Parameter:Nothing
| 48 | header = __va(wakeup_header) |
| 51 | If To check we have correct structure != WAKEUP_HEADER_SIGNATURE Then |
| 52 | printk(r conditions "wakeup header does not match\n") |
| 53 | Return -EINVAL |
| 61 | native_store_gdt((structdesc_ptr * ) & pmode_gdt) |
| 71 | If Not dmsr with exception handling (xtended feature register , & Protected mode EFER , & pmode_efer_high) && Not wrmsr with exception handling Then Wakeup routine behavior flags |= 1 << WAKEUP_BEHAVIOR_RESTORE_EFER |
| 80 | Protected mode cr0 = read_cr0() |
| 82 | Protected mode cr4 = __read_cr4() |
| 85 | If Not dmsr with exception handling (MSR_IA32_MISC_ENABLE, & Protected mode MISC_ENABLE , & pmode_misc_en_high) && Not wrmsr with exception handling Then Wakeup routine behavior flags |= 1 << Wakeup behavior bits |
| 94 | real_magic = 0x12345678 |
| 99 | saved_magic = 0x12345678 |
| 115 | pause_graph_tracing() |
| 116 | do_suspend_lowlevel() |
| 117 | unpause_graph_tracing() |
| 118 | Return 0 |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |