cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

decompressor.h (1064B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef BOOT_COMPRESSED_DECOMPRESSOR_H
      3#define BOOT_COMPRESSED_DECOMPRESSOR_H
      4
      5#include <linux/stddef.h>
      6
      7#ifdef CONFIG_KERNEL_UNCOMPRESSED
      8static inline void *decompress_kernel(void) { return NULL; }
      9#else
     10void *decompress_kernel(void);
     11#endif
     12unsigned long mem_safe_offset(void);
     13void error(char *m);
     14
     15struct vmlinux_info {
     16	unsigned long default_lma;
     17	void (*entry)(void);
     18	unsigned long image_size;	/* does not include .bss */
     19	unsigned long bss_size;		/* uncompressed image .bss size */
     20	unsigned long bootdata_off;
     21	unsigned long bootdata_size;
     22	unsigned long bootdata_preserved_off;
     23	unsigned long bootdata_preserved_size;
     24	unsigned long dynsym_start;
     25	unsigned long rela_dyn_start;
     26	unsigned long rela_dyn_end;
     27	unsigned long amode31_size;
     28};
     29
     30/* Symbols defined by linker scripts */
     31extern char _end[];
     32extern unsigned char _compressed_start[];
     33extern unsigned char _compressed_end[];
     34extern char _vmlinux_info[];
     35
     36#define vmlinux (*(struct vmlinux_info *)_vmlinux_info)
     37
     38#endif /* BOOT_COMPRESSED_DECOMPRESSOR_H */