Lines Matching +full:- +full:- +full:init
4 Subject: [PATCH] efi: Fix use-after-free in halt/reboot path
5 MIME-Version: 1.0
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
19 !!!! X64 Exception Type - 06(#UD - Invalid Opcode) CPU Apic ID - 00000000 !!!!
20 RIP - 0000000003F4EC28, CS - 0000000000000038, RFLAGS - 0000000000200246
21 RAX - 0000000000000000, RCX - 00000000061DA188, RDX - 0A74C0854DC35D41
22 RBX - 0000000003E10E08, RSP - 0000000007F0F860, RBP - 0000000000000000
23 RSI - 00000000064DB768, RDI - 000000000832C5C3
24 R8 - 0000000000000002, R9 - 0000000000000000, R10 - 00000000061E2E52
25 R11 - 0000000000000020, R12 - 0000000003EE5C1F, R13 - 00000000061E0FF4
26 R14 - 0000000003E10D80, R15 - 00000000061E2F60
27 DS - 0000000000000030, ES - 0000000000000030, FS - 0000000000000030
28 GS - 0000000000000030, SS - 0000000000000030
29 CR0 - 0000000080010033, CR2 - 0000000000000000, CR3 - 0000000007C01000
30 CR4 - 0000000000000668, CR8 - 0000000000000000
31 DR0 - 0000000000000000, DR1 - 0000000000000000, DR2 - 0000000000000000
32 DR3 - 0000000000000000, DR6 - 00000000FFFF0FF0, DR7 - 0000000000000400
33 GDTR - 00000000079EEA98 0000000000000047, LDTR - 0000000000000000
34 IDTR - 0000000007598018 0000000000000FFF, TR - 0000000000000000
35 FXSAVE_STATE - 0000000007F0F4C0
43 Signed-off-by: Alexey Makhalov <amakhalov@vmware.com>
44 Reviewed-by: Darren Kenny <darren.kenny@oracle.com>
45 Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
46 Signed-off-by: Stefan Sørensen <stefan.sorensen@spectralink.com>
47 ---
48 grub-core/kern/arm/efi/init.c | 3 +++
49 grub-core/kern/arm64/efi/init.c | 3 +++
50 grub-core/kern/efi/efi.c | 3 ++-
51 grub-core/kern/efi/init.c | 1 -
52 grub-core/kern/i386/efi/init.c | 9 +++++++--
53 grub-core/kern/ia64/efi/init.c | 9 +++++++--
54 grub-core/kern/riscv/efi/init.c | 3 +++
55 grub-core/lib/efi/halt.c | 3 ++-
57 9 files changed, 28 insertions(+), 7 deletions(-)
59 diff --git a/grub-core/kern/arm/efi/init.c b/grub-core/kern/arm/efi/init.c
61 --- a/grub-core/kern/arm/efi/init.c
62 +++ b/grub-core/kern/arm/efi/init.c
63 @@ -71,4 +71,7 @@ grub_machine_fini (int flags)
64 efi_call_1 (b->close_event, tmr_evt);
71 diff --git a/grub-core/kern/arm64/efi/init.c b/grub-core/kern/arm64/efi/init.c
73 --- a/grub-core/kern/arm64/efi/init.c
74 +++ b/grub-core/kern/arm64/efi/init.c
75 @@ -57,4 +57,7 @@ grub_machine_fini (int flags)
83 diff --git a/grub-core/kern/efi/efi.c b/grub-core/kern/efi/efi.c
85 --- a/grub-core/kern/efi/efi.c
86 +++ b/grub-core/kern/efi/efi.c
87 @@ -157,7 +157,8 @@ grub_efi_get_loaded_image (grub_efi_handle_t image_handle)
91 - grub_machine_fini (GRUB_LOADER_FLAG_NORETURN);
94 efi_call_4 (grub_efi_system_table->runtime_services->reset_system,
97 diff --git a/grub-core/kern/efi/init.c b/grub-core/kern/efi/init.c
99 --- a/grub-core/kern/efi/init.c
100 +++ b/grub-core/kern/efi/init.c
101 @@ -80,5 +80,4 @@ grub_efi_fini (void)
105 - grub_efi_memory_fini ();
107 diff --git a/grub-core/kern/i386/efi/init.c b/grub-core/kern/i386/efi/init.c
109 --- a/grub-core/kern/i386/efi/init.c
110 +++ b/grub-core/kern/i386/efi/init.c
111 @@ -39,6 +39,11 @@ grub_machine_init (void)
115 - if (flags & GRUB_LOADER_FLAG_NORETURN)
116 - grub_efi_fini ();
125 diff --git a/grub-core/kern/ia64/efi/init.c b/grub-core/kern/ia64/efi/init.c
127 --- a/grub-core/kern/ia64/efi/init.c
128 +++ b/grub-core/kern/ia64/efi/init.c
129 @@ -70,6 +70,11 @@ grub_machine_init (void)
133 - if (flags & GRUB_LOADER_FLAG_NORETURN)
134 - grub_efi_fini ();
143 diff --git a/grub-core/kern/riscv/efi/init.c b/grub-core/kern/riscv/efi/init.c
145 --- a/grub-core/kern/riscv/efi/init.c
146 +++ b/grub-core/kern/riscv/efi/init.c
147 @@ -73,4 +73,7 @@ grub_machine_fini (int flags)
155 diff --git a/grub-core/lib/efi/halt.c b/grub-core/lib/efi/halt.c
157 --- a/grub-core/lib/efi/halt.c
158 +++ b/grub-core/lib/efi/halt.c
159 @@ -28,7 +28,8 @@
163 - grub_machine_fini (GRUB_LOADER_FLAG_NORETURN);
169 diff --git a/include/grub/loader.h b/include/grub/loader.h
171 --- a/include/grub/loader.h
173 @@ -33,6 +33,7 @@ enum
181 --