]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/blobdiff - include/linux/kexec.h
kernel/kexec_file.c: allow archs to set purgatory load address
[mirror_ubuntu-eoan-kernel.git] / include / linux / kexec.h
index 0e389b9b77223204fab515df845810ca2ebcd14f..9e4e638fb5051b1337718535db5ae20b7a63c07c 100644 (file)
@@ -114,9 +114,6 @@ struct purgatory_info {
         * relocation. This memory can be freed post image load.
         */
        void *purgatory_buf;
-
-       /* Address where purgatory is finally loaded and is executed from */
-       unsigned long purgatory_load_addr;
 };
 
 struct kimage;
@@ -171,6 +168,12 @@ struct kexec_buf {
        bool top_down;
 };
 
+int kexec_load_purgatory(struct kimage *image, struct kexec_buf *kbuf);
+int kexec_purgatory_get_set_symbol(struct kimage *image, const char *name,
+                                  void *buf, unsigned int size,
+                                  bool get_value);
+void *kexec_purgatory_get_symbol_addr(struct kimage *image, const char *name);
+
 int __weak arch_kexec_apply_relocations_add(struct purgatory_info *pi,
                                            Elf_Shdr *section,
                                            const Elf_Shdr *relsec,
@@ -266,14 +269,6 @@ extern void machine_kexec_cleanup(struct kimage *image);
 extern int kernel_kexec(void);
 extern struct page *kimage_alloc_control_pages(struct kimage *image,
                                                unsigned int order);
-extern int kexec_load_purgatory(struct kimage *image, unsigned long min,
-                               unsigned long max, int top_down,
-                               unsigned long *load_addr);
-extern int kexec_purgatory_get_set_symbol(struct kimage *image,
-                                         const char *name, void *buf,
-                                         unsigned int size, bool get_value);
-extern void *kexec_purgatory_get_symbol_addr(struct kimage *image,
-                                            const char *name);
 extern void __crash_kexec(struct pt_regs *);
 extern void crash_kexec(struct pt_regs *);
 int kexec_should_crash(struct task_struct *);